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
27 lines
588 B
Django/Jinja
27 lines
588 B
Django/Jinja
[Unit]
|
|
Description=Xpra virtual display for JMRI (:{{ jmri_xpra_display }})
|
|
After=network.target
|
|
# Start before jmri.service so the display is ready when JMRI launches
|
|
Before=jmri.service
|
|
|
|
[Service]
|
|
Type=simple
|
|
User={{ jmri_user }}
|
|
Group={{ jmri_group }}
|
|
ExecStart=/usr/bin/xpra start \
|
|
:{{ jmri_xpra_display }} \
|
|
--daemon=no \
|
|
--mdns=no \
|
|
--notifications=no \
|
|
--systemd-run=no \
|
|
--pulseaudio=no \
|
|
--speaker=off \
|
|
--microphone=off \
|
|
--video-encoders=none \
|
|
--start-via-proxy=no
|
|
Restart=on-failure
|
|
RestartSec=5
|
|
|
|
[Install]
|
|
WantedBy=multi-user.target
|