switch to gnome #5

Closed
pi-farm wants to merge 22 commits from dev-gnome into bookworm-xfce
pull from: dev-gnome
8 changed files with 54 additions and 65 deletions

No files matched your search

+10 -19
View File
@@ -27,25 +27,16 @@ RUN sed -i 's/^Types: deb$/Types: deb deb-src/' /etc/apt/sources.list.d/debian.s
$(cat /tmp/packages.txt) \ $(cat /tmp/packages.txt) \
firefox-esr-l10n-${BUILD_COUNTRY} \ firefox-esr-l10n-${BUILD_COUNTRY} \
thunderbird-l10n-${BUILD_COUNTRY} && \ thunderbird-l10n-${BUILD_COUNTRY} && \
apt-get build-dep -y pulseaudio && \
cd /tmp && \ cd /tmp && \
apt-get source pulseaudio && \ git clone https://github.com/neutrinolabs/pipewire-module-xrdp.git && \
PULSE_DIR=$(find /tmp -maxdepth 1 -type d -name "pulseaudio-*" | head -n 1) && \ cd pipewire-module-xrdp && \
cd $PULSE_DIR && \
meson setup build \
-Dman=false \
-Dtests=false \
-Ddoxygen=false && \
cd /tmp && \
git clone https://github.com/neutrinolabs/pulseaudio-module-xrdp.git && \
cd pulseaudio-module-xrdp && \
./bootstrap && \ ./bootstrap && \
./configure PULSE_DIR=$PULSE_DIR && \ ./configure && \
make && \ make && \
make install && \ make install && \
cd / && \ cd / && \
rm -rf /tmp/pulseaudio-* /tmp/pulseaudio-module-xrdp && \ rm -rf /tmp/pipewire-module-xrdp && \
apt-get remove -y build-essential dpkg-dev meson ninja-build autoconf libtool && \ apt-get remove -y build-essential dpkg-dev git autoconf automake libtool pkg-config libpipewire-0.3-dev libspa-0.2-dev && \
apt-get autoremove -y && \ apt-get autoremove -y && \
rm -rf /var/lib/apt/lists/* && \ rm -rf /var/lib/apt/lists/* && \
echo "${LANG} UTF-8" > /etc/locale.gen && \ echo "${LANG} UTF-8" > /etc/locale.gen && \
@@ -57,23 +48,23 @@ RUN sed -i 's/^Types: deb$/Types: deb deb-src/' /etc/apt/sources.list.d/debian.s
dpkg-reconfigure -f noninteractive keyboard-configuration && \ dpkg-reconfigure -f noninteractive keyboard-configuration && \
rm -rf /var/lib/apt/lists/* /tmp/packages.txt rm -rf /var/lib/apt/lists/* /tmp/packages.txt
# Systemweite statische Konfigurationen für LDAP/PAM/Sudo
RUN sed -i '/%users/s/^/# /' /etc/sudoers && \ RUN sed -i '/%users/s/^/# /' /etc/sudoers && \
echo "sudoers: files sss" >> /etc/nsswitch.conf && \ echo "sudoers: files sss" >> /etc/nsswitch.conf && \
echo "session required pam_mkhomedir.so skel=/etc/skel/ umask=0022" >> /etc/pam.d/common-session echo "session required pam_mkhomedir.so skel=/etc/skel/ umask=0022" >> /etc/pam.d/common-session
RUN chmod 440 /etc/sudoers && \ RUN chmod 440 /etc/sudoers && \
mkdir -p /etc/sssd && chown root:root /etc/sssd && chmod 755 /etc/sssd && \ mkdir -p /etc/sssd && chown root:root /etc/sssd && chmod 755 /etc/sssd && \
mkdir -p /home && chmod 755 /home && \ mkdir -p /home && chmod 777 /home && \
chown xrdp:xrdp /etc/xrdp/key.pem /etc/xrdp/cert.pem /etc/xrdp/rsakeys.ini && \ chown xrdp:xrdp /etc/xrdp/key.pem /etc/xrdp/cert.pem /etc/xrdp/rsakeys.ini && \
chmod 600 /etc/xrdp/key.pem /etc/xrdp/rsakeys.ini && \ chmod 600 /etc/xrdp/key.pem /etc/xrdp/rsakeys.ini && \
chmod 644 /etc/xrdp/cert.pem && \ chmod 644 /etc/xrdp/cert.pem && \
echo "LANG=${LANG}" >> /etc/environment && \ echo "LANG=${LANG}" >> /etc/environment && \
echo "LANGUAGE=${LANGUAGE}" >> /etc/environment && \ echo "LANGUAGE=${LANGUAGE}" >> /etc/environment && \
echo "LC_ALL=${LC_ALL}" >> /etc/environment && \ echo "LC_ALL=${LC_ALL}" >> /etc/environment && \
sed -i '2i export LANG=${LANG}\nexport LANGUAGE=${LANGUAGE}\nexport LC_ALL=${LC_ALL}\npulseaudio --start\npactl load-module module-xrdp-sink.so\npactl load-module module-xrdp-source.so' /etc/xrdp/startwm.sh && \ sed -i '2i export LANG=${LANG}\nexport LANGUAGE=${LANGUAGE}\nexport LC_ALL=${LC_ALL}\nexport XDG_SESSION_TYPE=x11\nexport GDK_BACKEND=x11\nexport LIBGL_ALWAYS_SOFTWARE=1\nexport GALLIUM_DRIVER=llvmpipe' /etc/xrdp/startwm.sh && \
chmod +x /etc/xrdp/startwm.sh && \ echo "exec dbus-run-session -- gnome-session --session=gnome-flashback-metacity" >> /etc/xrdp/startwm.sh && \
mkdir -p /etc/xdg/xfce4 && \ chmod +x /etc/xrdp/startwm.sh
echo "setxkbmap ${COUNTRY}" >> /etc/xdg/xfce4/xinitrc
EXPOSE 3389 EXPOSE 3389
+10 -23
View File
@@ -27,25 +27,16 @@ RUN sed -i 's/^Types: deb$/Types: deb deb-src/' /etc/apt/sources.list.d/debian.s
$(cat /tmp/packages.txt) \ $(cat /tmp/packages.txt) \
firefox-esr-l10n-${BUILD_COUNTRY} \ firefox-esr-l10n-${BUILD_COUNTRY} \
thunderbird-l10n-${BUILD_COUNTRY} && \ thunderbird-l10n-${BUILD_COUNTRY} && \
apt-get build-dep -y pulseaudio && \
cd /tmp && \ cd /tmp && \
apt-get source pulseaudio && \ git clone https://github.com/neutrinolabs/pipewire-module-xrdp.git && \
PULSE_DIR=$(find /tmp -maxdepth 1 -type d -name "pulseaudio-*" | head -n 1) && \ cd pipewire-module-xrdp && \
cd $PULSE_DIR && \
meson setup build \
-Dman=false \
-Dtests=false \
-Ddoxygen=false && \
cd /tmp && \
git clone https://github.com/neutrinolabs/pulseaudio-module-xrdp.git && \
cd pulseaudio-module-xrdp && \
./bootstrap && \ ./bootstrap && \
./configure PULSE_DIR=$PULSE_DIR && \ ./configure && \
make && \ make && \
make install && \ make install && \
cd / && \ cd / && \
rm -rf /tmp/pulseaudio-* /tmp/pulseaudio-module-xrdp && \ rm -rf /tmp/pipewire-module-xrdp && \
apt-get remove -y build-essential dpkg-dev meson ninja-build autoconf libtool && \ apt-get remove -y build-essential dpkg-dev git autoconf automake libtool pkg-config libpipewire-0.3-dev libspa-0.2-dev && \
apt-get autoremove -y && \ apt-get autoremove -y && \
rm -rf /var/lib/apt/lists/* && \ rm -rf /var/lib/apt/lists/* && \
echo "${LANG} UTF-8" > /etc/locale.gen && \ echo "${LANG} UTF-8" > /etc/locale.gen && \
@@ -57,27 +48,23 @@ RUN sed -i 's/^Types: deb$/Types: deb deb-src/' /etc/apt/sources.list.d/debian.s
dpkg-reconfigure -f noninteractive keyboard-configuration && \ dpkg-reconfigure -f noninteractive keyboard-configuration && \
rm -rf /var/lib/apt/lists/* /tmp/packages.txt rm -rf /var/lib/apt/lists/* /tmp/packages.txt
# NEU: Systemweite statische Konfigurationen für LDAP/PAM/Sudo # Systemweite statische Konfigurationen für LDAP/PAM/Sudo
# 1. Entfernt die gefährliche %users Regel
# 2. Sagt nsswitch, dass Sudoers auch im SSS (LDAP) gesucht werden sollen
# 3. Aktiviert das automatische Erstellen von Home-Verzeichnissen (mkhomedir)
RUN sed -i '/%users/s/^/# /' /etc/sudoers && \ RUN sed -i '/%users/s/^/# /' /etc/sudoers && \
echo "sudoers: files sss" >> /etc/nsswitch.conf && \ echo "sudoers: files sss" >> /etc/nsswitch.conf && \
echo "session required pam_mkhomedir.so skel=/etc/skel/ umask=0022" >> /etc/pam.d/common-session echo "session required pam_mkhomedir.so skel=/etc/skel/ umask=0022" >> /etc/pam.d/common-session
RUN chmod 440 /etc/sudoers && \ RUN chmod 440 /etc/sudoers && \
mkdir -p /etc/sssd && chown root:root /etc/sssd && chmod 755 /etc/sssd && \ mkdir -p /etc/sssd && chown root:root /etc/sssd && chmod 755 /etc/sssd && \
mkdir -p /home && chmod 755 /home && \ mkdir -p /home && chmod 777 /home && \
chown xrdp:xrdp /etc/xrdp/key.pem /etc/xrdp/cert.pem /etc/xrdp/rsakeys.ini && \ chown xrdp:xrdp /etc/xrdp/key.pem /etc/xrdp/cert.pem /etc/xrdp/rsakeys.ini && \
chmod 600 /etc/xrdp/key.pem /etc/xrdp/rsakeys.ini && \ chmod 600 /etc/xrdp/key.pem /etc/xrdp/rsakeys.ini && \
chmod 644 /etc/xrdp/cert.pem && \ chmod 644 /etc/xrdp/cert.pem && \
echo "LANG=${LANG}" >> /etc/environment && \ echo "LANG=${LANG}" >> /etc/environment && \
echo "LANGUAGE=${LANGUAGE}" >> /etc/environment && \ echo "LANGUAGE=${LANGUAGE}" >> /etc/environment && \
echo "LC_ALL=${LC_ALL}" >> /etc/environment && \ echo "LC_ALL=${LC_ALL}" >> /etc/environment && \
sed -i '2i export LANG=${LANG}\nexport LANGUAGE=${LANGUAGE}\nexport LC_ALL=${LC_ALL}\npulseaudio --start\npactl load-module module-xrdp-sink.so\npactl load-module module-xrdp-source.so' /etc/xrdp/startwm.sh && \ sed -i '2i export LANG=${LANG}\nexport LANGUAGE=${LANGUAGE}\nexport LC_ALL=${LC_ALL}\nexport XDG_SESSION_TYPE=x11\nexport GDK_BACKEND=x11\nexport LIBGL_ALWAYS_SOFTWARE=1\nexport GALLIUM_DRIVER=llvmpipe' /etc/xrdp/startwm.sh && \
chmod +x /etc/xrdp/startwm.sh && \ echo "exec dbus-run-session -- gnome-session --session=gnome-flashback-metacity" >> /etc/xrdp/startwm.sh && \
mkdir -p /etc/xdg/xfce4 && \ chmod +x /etc/xrdp/startwm.sh
echo "setxkbmap ${COUNTRY}" >> /etc/xdg/xfce4/xinitrc
EXPOSE 3389 EXPOSE 3389
+11 -7
View File
@@ -10,13 +10,13 @@ Debian Desktop with LDAP Authentication and PulseAudio. To use behind Guacamole
This repository is built and pushed automatically. This repository is built and pushed automatically.
<a href="https://hub.docker.com/r/pifarm/base-image-debian-rdp-ldap" target="_blank" rel="noopener noreferrer"><img src="https://img.shields.io/badge/docker-hub-blue?logo=docker&logoColor=white" alt="Docker Hub"></a>
### 🏗️ Platform Support ### 🏗️ Platform Support
| Architecture | Status | Base Image | Build Date | | Architecture | Status | Base Image | Build Date |
| :--- | :--- | :--- | :--- | | :--- | :--- | :--- | :--- |
| x86_64 (amd64) | ✅ Active | debian:bookworm | 08.10.2026 23:33 | | x86_64 (amd64) | ✅ Active | debian:bookworm | 09.10.2026 23:35 |
| aarch64 (arm64) | ✅ Active | debian:bookworm | 08.10.2026 23:33 | | aarch64 (arm64) | ✅ Active | debian:bookworm | 09.10.2026 23:35 |
--- ---
@@ -26,7 +26,7 @@ This repository is built and pushed automatically.
```yaml ```yaml
services: services:
base-image-debian-rdp-ldap: base-image-debian-rdp-ldap:
image: git.pi-farm.de/pi-farm/base-image-debian-rdp-ldap:bookworm-de image: git.pi-farm.de/pi-farm/base-image-debian-rdp-ldap:bookworm-gnome-de
container_name: base-image-debian-rdp-ldap container_name: base-image-debian-rdp-ldap
restart: unless-stopped restart: unless-stopped
ports: ports:
@@ -58,7 +58,7 @@ docker compose up -d
## 🐳 Method 2: Standalone Container (Docker Run / CLI) ## 🐳 Method 2: Standalone Container (Docker Run / CLI)
### 🚀 1. Pull the image manually ### 🚀 1. Pull the image manually
```bash ```bash
docker pull git.pi-farm.de/pi-farm/base-image-debian-rdp-ldap:bookworm-de docker pull git.pi-farm.de/pi-farm/base-image-debian-rdp-ldap:bookworm-gnome-de
``` ```
### 🚀 2. Run the container directly ### 🚀 2. Run the container directly
```bash ```bash
@@ -73,14 +73,18 @@ docker run -d \
-e LDAP_SUDO_GROUP=YOUR-SUDO-USERS-GROUP \ -e LDAP_SUDO_GROUP=YOUR-SUDO-USERS-GROUP \
-v ./YOUR-PERSISTENT-FOLDER:/home \ -v ./YOUR-PERSISTENT-FOLDER:/home \
-p 3389:3389 \ -p 3389:3389 \
git.pi-farm.de/pi-farm/base-image-debian-rdp-ldap:bookworm-de git.pi-farm.de/pi-farm/base-image-debian-rdp-ldap:bookworm-gnome-de
``` ```
*Last updated on: 08.10.2026 23:33* *Last updated on: 09.10.2026 23:35*
### 📜 Version History ### 📜 Version History
| Version | Date | Status | | Version | Date | Status |
| :--- | :--- | :--- | | :--- | :--- | :--- |
| **bookworm-gnome-de** | 09.10.2026 23:35 | ✅ |
| **bookworm-gnome-de** | 09.10.2026 23:02 | ✅ |
| **bookworm-gnome-de** | 09.10.2026 22:40 | ✅ |
| **bookworm-gnome-de** | 09.10.2026 15:43 | ✅ |
| **bookworm-de** | 08.10.2026 23:33 | ✅ | | **bookworm-de** | 08.10.2026 23:33 | ✅ |
| **trixie-de** | 08.10.2026 22:50 | ✅ | | **trixie-de** | 08.10.2026 22:50 | ✅ |
+4
View File
@@ -1,2 +1,6 @@
| **bookworm-gnome-de** | 09.10.2026 23:35 | ✅ |
| **bookworm-gnome-de** | 09.10.2026 23:02 | ✅ |
| **bookworm-gnome-de** | 09.10.2026 22:40 | ✅ |
| **bookworm-gnome-de** | 09.10.2026 15:43 | ✅ |
| **bookworm-de** | 08.10.2026 23:33 | ✅ | | **bookworm-de** | 08.10.2026 23:33 | ✅ |
| **trixie-de** | 08.10.2026 22:50 | ✅ | | **trixie-de** | 08.10.2026 22:50 | ✅ |
+3 -6
View File
@@ -4,19 +4,16 @@ BUILD_COUNTRY=de
## BUILD STAGE ## BUILD STAGE
BUILD_BASE_IMAGE="debian:${DEBIAN_CODENAME}" BUILD_BASE_IMAGE="debian:${DEBIAN_CODENAME}"
BUILD_TAG="${DEBIAN_CODENAME}-${BUILD_COUNTRY}" BUILD_TAG="${DEBIAN_CODENAME}-gnome-${BUILD_COUNTRY}"
BUILD_TAG_LATEST=n BUILD_TAG_LATEST=n
BUILD_LANG=de_DE.UTF-8 BUILD_LANG=de_DE.UTF-8
BUILD_LANGUAGE=de_DE:de BUILD_LANGUAGE=de_DE:de
BUILD_LC_ALL=de_DE.UTF-8 BUILD_LC_ALL=de_DE.UTF-8
BUILD_TZ=Europe/Berlin BUILD_TZ=Europe/Berlin
BUILD_MAINTAINER=pi-farm BUILD_MAINTAINER=pi-farm
BUILD_APP_NAME=base-image-debian-rdp-ldap BUILD_APP_NAME=debian-${DEBIAN_CODENAME}-gnome-rdp-ldap
BUILD_APP_VERSION=1.0.0 BUILD_APP_VERSION=1.0.0
PUSH=dockerhub PUSH=gitea
## BASE PACKAGES
BUILD_BASE_PACKAGES="xrdp sssd sssd-tools libpam-sss libnss-sss libsss-sudo ldap-utils ca-certificates dbus-x11 xfce4 xfce4-terminal sudo firefox-esr firefox-esr-l10n-${BUILD_COUNTRY} thunderbird thunderbird-l10n-${BUILD_COUNTRY} locales tzdata keyboard-configuration x11-xkb-utils pulseaudio build-essential dpkg-dev git libpulse-dev meson ninja-build pkg-config autoconf libtool thunar-archive-plugin xarchiver unzip zip p7zip-full tar gzip bzip2 dialog whiptail"
## ENV STAGE ## ENV STAGE
ENV_SSSD_DEBUG_LEVEL=5 ENV_SSSD_DEBUG_LEVEL=5
+1 -1
View File
@@ -1,6 +1,6 @@
services: services:
base-image-debian-rdp-ldap: base-image-debian-rdp-ldap:
image: git.pi-farm.de/pi-farm/base-image-debian-rdp-ldap:bookworm-de image: git.pi-farm.de/pi-farm/base-image-debian-rdp-ldap:bookworm-gnome-de
container_name: base-image-debian-rdp-ldap container_name: base-image-debian-rdp-ldap
restart: unless-stopped restart: unless-stopped
ports: ports:
+7 -2
View File
@@ -45,9 +45,14 @@ echo ">>> Erstelle Sudoers-Regel für Gruppe: ${LDAP_SUDO_GROUP}..."
echo "%${LDAP_SUDO_GROUP} ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/ldap-admins echo "%${LDAP_SUDO_GROUP} ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/ldap-admins
chmod 0440 /etc/sudoers.d/ldap-admins chmod 0440 /etc/sudoers.d/ldap-admins
echo ">>> Erzwinge TLS für xrdp (Guacamole Fix)..." echo ">>> Konfiguriere XRDP (TLS & Logging auf stdout)..."
if [ -f /etc/xrdp/xrdp.ini ]; then if [ -f /etc/xrdp/xrdp.ini ]; then
sed -i 's/^security_layer=.*/security_layer=tls/' /etc/xrdp/xrdp.ini sed -i 's/^security_layer=.*/security_layer=tls/' /etc/xrdp/xrdp.ini
sed -i 's|^LogFile=.*|LogFile=/dev/stdout|' /etc/xrdp/xrdp.ini
fi
if [ -f /etc/xrdp/sesman.ini ]; then
sed -i 's|^LogFile=.*|LogFile=/dev/stdout|' /etc/xrdp/sesman.ini
fi fi
echo ">>> Bereinige alte PID-Dateien und SSSD Cache..." echo ">>> Bereinige alte PID-Dateien und SSSD Cache..."
@@ -61,7 +66,7 @@ dbus-uuidgen --ensure
dbus-daemon --system --fork dbus-daemon --system --fork
echo ">>> Starte SSSD..." echo ">>> Starte SSSD..."
sssd -D --debug-level=${SSSD_DEBUG} sssd -D --logger=stderr --debug-level=${SSSD_DEBUG}
echo ">>> Starte XRDP..." echo ">>> Starte XRDP..."
xrdp-sesman xrdp-sesman
+8 -7
View File
@@ -9,8 +9,8 @@ xrdp
xorgxrdp xorgxrdp
dbus dbus
dbus-x11 dbus-x11
xfce4 gnome-core
xfce4-terminal gnome-session-flashback
xdg-user-dirs xdg-user-dirs
desktop-base desktop-base
sudo sudo
@@ -21,17 +21,18 @@ locales
tzdata tzdata
keyboard-configuration keyboard-configuration
x11-xkb-utils x11-xkb-utils
pulseaudio pipewire
pipewire-pulse
wireplumber
build-essential build-essential
dpkg-dev dpkg-dev
git git
libpulse-dev libpipewire-0.3-dev
meson libspa-0.2-dev
ninja-build
pkg-config pkg-config
automake
autoconf autoconf
libtool libtool
thunar-archive-plugin
xarchiver xarchiver
unzip unzip
zip zip