jmri: replace TigerVNC with Xpra for JMRI GUI display

VNC had window management issues and some dialogs wouldn't open correctly.
Xpra runs in rootless mode — each JMRI window appears natively on the
client without a VNC client or XQuartz required.

Changes:
- Remove tigervnc-standalone-server, jmri-vnc.service, .vnc/ directory
- Install xpra, deploy jmri-xpra.service.j2 (systemd unit)
- Update jmri-gui wrapper: DISPLAY=:100, attach instructions printed on launch
- Update defaults: drop VNC vars, add jmri_xpra_display=100
- Rename handler: Restart jmri-vnc -> Restart jmri-xpra

Connect from macOS/Linux:
  xpra attach ssh://jmri@main-street-station/100
This commit is contained in:
Hermes Agent service account
2026-08-01 20:14:49 -05:00
parent 4cb87a57ad
commit 62e9f13a45
6 changed files with 91 additions and 93 deletions

View File

@@ -34,15 +34,12 @@ jmri_json_port: 12080
jmri_withrottle_port: 12090
# ---------------------------------------------------------------------------
# Phase 4 — VNC server (TigerVNC)
# Replaces X11 forwarding with a persistent virtual display.
# Connect with any VNC client to <host>:5901
# Phase 4 — Xpra virtual display
# Replaces TigerVNC with rootless Xpra — proper window management,
# persistent sessions, SSH-native attach (no VNC client needed).
# Connect from macOS/Linux: xpra attach ssh://jmri@main-street-station/100
# ---------------------------------------------------------------------------
jmri_vnc_display: "1"
jmri_vnc_port: 5901
jmri_vnc_geometry: "1280x800"
jmri_vnc_depth: "24"
jmri_vnc_password: "" # set via group_vars (vault-backed)
jmri_xpra_display: "100"
# ---------------------------------------------------------------------------
# Phase 2 — Layout power monitor (Leviton Decora Smart Wi-Fi)