fix: run the live X session as an unprivileged user

The workstation ISO failed to start X with:

    (EE) unrecognized option --allow-root

Debian trixie ships Xorg 21.1.x, which removed --allow-root / -allowRoot
entirely — running the X server as root is no longer supported. The live
session now:

- creates a dedicated unprivileged `liveuser` account (in tty, video,
  input, audio groups) in build-live.sh;
- starts Xorg as `liveuser` on vt1 (no -allow-root flag at all);
- grants root display access (xhost +SI:localuser:root);
- still runs the installer itself as root, since deploy-disk.sh needs
  root. xinit is no longer used (and dropped from the package list).
This commit is contained in:
Blake Ridgway
2026-08-21 20:31:19 -05:00
parent 0ea8b713dd
commit 04bcb684b3
3 changed files with 41 additions and 10 deletions

View File

@@ -47,9 +47,11 @@ the live session with the installer in it.
## Autostart
`overlays/live/etc/systemd/system/arcline-installer.service` starts
`arcline-installer-session` on boot: it launches Xorg on vt1 (with
`-allow-root`, since the live session runs as root) and the installer as the
X client. When the installer exits, X and the session end.
`arcline-installer-session` on boot. Modern Xorg (trixie 21.1.x) refuses to
run as root, so the session script starts Xorg as the dedicated unprivileged
`liveuser` account on vt1, grants root display access (`xhost
+SI:localuser:root`), then runs the installer as root (it needs root for
`deploy-disk.sh`). When the installer exits, X and the session end.
## Manual run (for development / on a box without the ISO)