diff --git a/install.sh b/install.sh index 9e1263c..9531376 100755 --- a/install.sh +++ b/install.sh @@ -243,11 +243,18 @@ for cmdline in /boot/firmware/cmdline.txt /boot/cmdline.txt; do fi done -# A desktop display manager would fight over vt7. +# A desktop display manager would fight over vt7 and display :0 (Pi OS Desktop images). +# uninstall.sh re-enables the ones recorded here. for dm in lightdm.service gdm3.service sddm.service; do if systemctl is-enabled --quiet "$dm" 2>/dev/null; then warn "$dm wordt uitgeschakeld (de kiosk gebruikt een eigen minimale X-sessie)." systemctl disable "$dm" 2>/dev/null || true + grep -qx "$dm" /var/lib/voxip-kiosk/disabled-display-managers 2>/dev/null \ + || echo "$dm" >> /var/lib/voxip-kiosk/disabled-display-managers + fi + if [[ $LIVE -eq 1 ]] && systemctl is-active --quiet "$dm" 2>/dev/null; then + warn "$dm wordt gestopt: de desktop op het scherm sluit nu af." + systemctl stop "$dm" || true fi done diff --git a/uninstall.sh b/uninstall.sh index bf21ec7..5c48497 100755 --- a/uninstall.sh +++ b/uninstall.sh @@ -20,6 +20,7 @@ UNITS=(voxip-kiosk-healthcheck.timer voxip-kiosk-healthcheck.service voxip-kiosk voxip-network-guard.service voxip-boot-import.service) PREVIOUS_TARGET="$(cat /var/lib/voxip-kiosk/previous-default-target 2>/dev/null || true)" +mapfile -t DISABLED_DMS < <(cat /var/lib/voxip-kiosk/disabled-display-managers 2>/dev/null) echo "==> Services stoppen en verwijderen" systemctl stop voxip-network-rollback.timer 2>/dev/null || true @@ -62,4 +63,5 @@ else fi if [[ -n $PREVIOUS_TARGET ]]; then systemctl set-default "$PREVIOUS_TARGET" >/dev/null 2>&1 || true; fi +for dm in "${DISABLED_DMS[@]}"; do systemctl enable "$dm" >/dev/null 2>&1 || true; done echo "==> VoxIP Kiosk OS is verwijderd. Herstart de Raspberry Pi om de kiosk te stoppen."