weston-vnc: disable VNC auth to fix 'auth failed' in browser screen viewer

This commit is contained in:
iris 2026-05-20 16:26:07 +02:00
parent 939df10a61
commit 47279f110d

View file

@ -104,10 +104,19 @@
${pkgs.coreutils}/bin/printf '{"vnc_port":%d,"auth":"none"}\n' \ ${pkgs.coreutils}/bin/printf '{"vnc_port":%d,"auth":"none"}\n' \
"$VNC_PORT" > /etc/hyperhive/gui.json || true "$VNC_PORT" > /etc/hyperhive/gui.json || true
# --disable-transport-layer-security: VNC is loopback-only # Write a weston.ini that disables VNC authentication.
# (relayed by the harness WebSocket proxy); TLS would require # Without this, neatvnc offers VNC password auth (type 2) by default
# cert generation and adds no real security benefit here. # which causes the in-browser RFB client to fail with "auth failed".
# auth-method=none makes neatvnc offer security type 1 (None).
# --disable-transport-layer-security additionally disables the
# VeNCrypt TLS wrapper — VNC is loopback-only via the harness
# WebSocket relay so neither TLS nor a password is needed.
WESTON_INI=$(${pkgs.coreutils}/bin/mktemp /tmp/weston-XXXXXX.ini)
${pkgs.coreutils}/bin/printf '[core]\nbackend=vnc\n\n[vnc]\nauth-method=none\n' \
> "$WESTON_INI"
exec ${pkgs.weston}/bin/weston \ exec ${pkgs.weston}/bin/weston \
--config="$WESTON_INI" \
--backend=vnc-backend.so \ --backend=vnc-backend.so \
--renderer=pixman \ --renderer=pixman \
--port="$VNC_PORT" \ --port="$VNC_PORT" \