⚠️ Pre-release, needs field testing.
This rewrites the auth container's display backend to fix #136 (noVNC stuck on "Connecting…").
The change was validated in logic, but not on a machine that reproduces the original crash.
Please test before relying on it; feedback welcome on #136.
Fixed
- noVNC no longer hangs on "Connecting…" forever (#136). The display stack
(Xvfb + fluxbox + x11vnc + websockify) used to fail completely silently: the container
reported healthy while VNC was dead.- Display processes now log to files / journald and are liveness-checked, so failures
surface indocker logsinstead of vanishing. - Stale
/tmp/.X11-unix/X99state is cleaned on start, fixing VNC dying silently after
adocker restart. - The VNC password is truncated to the 8 characters DES actually uses, and the
auto-connect URL now matches.
- Display processes now log to files / journald and are liveness-checked, so failures
Changed
- TigerVNC (
Xvnc) is now the default display backend, replacingx11vnc, whose 2019
build crashed on client connect against bookworm's libraries. Xvnc serves VNC natively:
no Xvfb, no screen scraper.- The legacy
Xvfb + x11vncstack remains as an automatic fallback. - Force a backend with
FAMILYLINK_VNC_BACKEND=tigervnc|x11vnc.
- The legacy
Thanks
Huge thanks to @wookash for the strace-level diagnosis that pinpointed the crash and the two
silent-failure traps around it.