From 6b857e59d0365b2e8c8d2dbbb14ca296dd2b45e3 Mon Sep 17 00:00:00 2001 From: Dorian Date: Thu, 26 Mar 2026 19:50:59 +0000 Subject: [PATCH] fix: preseed keyboard config, enable kiosk by default - Preseed keyboard-configuration and console-setup debconf values to prevent console-setup.service failure on boot - Enable archipelago-kiosk.service by default on fresh installs so the system boots into the web UI display, not a login prompt Co-Authored-By: Claude Opus 4.6 (1M context) --- image-recipe/build-auto-installer-iso.sh | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/image-recipe/build-auto-installer-iso.sh b/image-recipe/build-auto-installer-iso.sh index f9e3f173..b77f3e96 100755 --- a/image-recipe/build-auto-installer-iso.sh +++ b/image-recipe/build-auto-installer-iso.sh @@ -202,6 +202,12 @@ FROM debian:bookworm ENV DEBIAN_FRONTEND=noninteractive +# Preseed keyboard/console config to prevent console-setup.service failure +RUN echo "keyboard-configuration keyboard-configuration/layoutcode string us" | debconf-set-selections && \ + echo "keyboard-configuration keyboard-configuration/model select Generic 105-key PC" | debconf-set-selections && \ + echo "console-setup console-setup/charmap47 select UTF-8" | debconf-set-selections && \ + echo "console-setup console-setup/codeset47 select Guess optimal character set" | debconf-set-selections + # Enable non-free-firmware repo — replace DEB822 sources with traditional format # (DEB822 sed was silently failing, so just overwrite with known-good sources.list) RUN echo "deb http://deb.debian.org/debian bookworm main non-free-firmware" > /etc/apt/sources.list && \ @@ -1845,6 +1851,7 @@ chroot /mnt/target systemctl enable nginx.service 2>/dev/null || true chroot /mnt/target systemctl enable archipelago-load-images.service 2>/dev/null || true chroot /mnt/target systemctl enable archipelago-setup-tor.service 2>/dev/null || true chroot /mnt/target systemctl enable archipelago-first-boot-containers.service 2>/dev/null || true +chroot /mnt/target systemctl enable archipelago-kiosk.service 2>/dev/null || true # Cleanup sync