weston-vnc: disable idle blank + lock screen (idle-time=0)

The VNC desktop faded to black after weston's default 300s idle
timeout, and on wake desktop-shell showed its click-to-unlock lock
screen (a green circle) — pointless for an agent desktop viewed
over /screen, and confusing for the operator (issue #180).

Add [core] idle-time=0 to the generated weston.ini. Verified against
weston 14.0.1: idle-time parses to compositor->idle_time, and
weston_compositor_wake arms the idle timer with idle_time*1000 ms;
0 ms makes wl_event_source_timer_update disarm the timer, so the
compositor never transitions to IDLE and desktop-shell never locks.

closes #180
This commit is contained in:
iris 2026-05-21 19:34:10 +02:00
parent 9abcda280a
commit dd32774e86

View file

@ -128,8 +128,15 @@
# #
# --disable-transport-layer-security prevents the VeNCrypt TLS # --disable-transport-layer-security prevents the VeNCrypt TLS
# wrapper; plain auth types (incl. type 30) are advertised directly. # wrapper; plain auth types (incl. type 30) are advertised directly.
# [core] idle-time=0 disables weston's idle timeout (default
# 300s). Without it the VNC desktop fades to black after 5 min
# idle and desktop-shell shows its click-to-unlock lock screen
# — useless for an agent desktop viewed over /screen (issue
# #180). idle-time=0 → the idle timer is updated with a 0ms
# delay, which wl_event_source_timer_update treats as "disarm",
# so the compositor never goes idle and never locks.
WESTON_INI=$(${pkgs.coreutils}/bin/mktemp /tmp/weston-XXXXXX.ini) WESTON_INI=$(${pkgs.coreutils}/bin/mktemp /tmp/weston-XXXXXX.ini)
${pkgs.coreutils}/bin/printf '[vnc]\nauth-method=none\n' > "$WESTON_INI" ${pkgs.coreutils}/bin/printf '[core]\nidle-time=0\n\n[vnc]\nauth-method=none\n' > "$WESTON_INI"
exec ${pkgs.weston}/bin/weston \ exec ${pkgs.weston}/bin/weston \
--config="$WESTON_INI" \ --config="$WESTON_INI" \