fix: stop getty@tty1 before first-boot setup service to prevent SIGHUP kill
Conflicts=getty@tty1 ensures systemd releases TTY1 before kiosk-setup runs interactively. Also add partman/choose_partition select finish to preseed so disk write confirmation is fully automated. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -18,6 +18,8 @@ cat > /etc/systemd/system/kiosk-firstboot.service << 'EOF'
|
|||||||
Description=SeniorNet Kiosk First-Boot Setup
|
Description=SeniorNet Kiosk First-Boot Setup
|
||||||
After=network-online.target
|
After=network-online.target
|
||||||
Wants=network-online.target
|
Wants=network-online.target
|
||||||
|
Conflicts=getty@tty1.service
|
||||||
|
After=getty@tty1.service
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
Type=oneshot
|
Type=oneshot
|
||||||
@@ -26,7 +28,6 @@ StandardInput=tty
|
|||||||
TTYPath=/dev/tty1
|
TTYPath=/dev/tty1
|
||||||
TTYReset=yes
|
TTYReset=yes
|
||||||
IgnoreSIGPIPE=no
|
IgnoreSIGPIPE=no
|
||||||
SendSIGHUP=yes
|
|
||||||
RemainAfterExit=no
|
RemainAfterExit=no
|
||||||
|
|
||||||
[Install]
|
[Install]
|
||||||
|
|||||||
+7
-4
@@ -38,13 +38,16 @@ d-i passwd/root-password-again password kiosk
|
|||||||
# Handles /dev/sda, /dev/nvme0n1, /dev/vda, etc.
|
# Handles /dev/sda, /dev/nvme0n1, /dev/vda, etc.
|
||||||
d-i preseed/early_command string \
|
d-i preseed/early_command string \
|
||||||
DISK=$(ls /sys/block/ | grep -Ev '^(loop|sr|fd|ram)' | head -1); \
|
DISK=$(ls /sys/block/ | grep -Ev '^(loop|sr|fd|ram)' | head -1); \
|
||||||
debconf-set partman-auto/disk "/dev/$DISK"; \
|
debconf-set partman-auto/disk "/dev/$DISK" || true; \
|
||||||
debconf-set grub-installer/bootdev "/dev/$DISK"; \
|
debconf-set grub-installer/bootdev "/dev/$DISK" || true; \
|
||||||
ETH=$(ls /sys/class/net/ | grep -E '^(eth|en)' | head -1); \
|
ETH=$(ls /sys/class/net/ 2>/dev/null | grep -E '^(eth|en)' | head -1 || true); \
|
||||||
[ -n "$ETH" ] && debconf-set netcfg/choose_interface "$ETH"
|
if [ -n "$ETH" ]; then debconf-set netcfg/choose_interface "$ETH" || true; fi; \
|
||||||
|
true
|
||||||
|
|
||||||
d-i partman-auto/method string regular
|
d-i partman-auto/method string regular
|
||||||
d-i partman-auto/choose_recipe select atomic
|
d-i partman-auto/choose_recipe select atomic
|
||||||
|
d-i partman-partitioning/confirm_write_new_label boolean true
|
||||||
|
d-i partman/choose_partition select finish
|
||||||
d-i partman/confirm_write_new_label boolean true
|
d-i partman/confirm_write_new_label boolean true
|
||||||
d-i partman/confirm boolean true
|
d-i partman/confirm boolean true
|
||||||
d-i partman/confirm_nooverwrite boolean true
|
d-i partman/confirm_nooverwrite boolean true
|
||||||
|
|||||||
Reference in New Issue
Block a user