47905004eb
The receiver does not need a window manager: SDL3's KMSDRM backend renders straight to the kernel display pipeline, which is the right setup for a small-board appliance. But a systemd system service has no controlling terminal, and SDL's KMSDRM backend expects one for its VT handling — so the headless path would have failed at boot. Give the unit StandardInput=tty with TTYPath=/dev/tty1 (harmless in desktop mode), and document the headless recipe in the unit, the install script output, and the RUNBOOK: Raspberry Pi OS Lite with Console Autologin, no desktop enabled (a compositor would hold the DRM master), and consoleblank=0.