harness: add /screen page and /screen/ws WebSocket VNC relay
Reads /etc/hyperhive/gui.json at startup to get the VNC port written by the weston-vnc ExecStart script (issue #50). Adds: - gui_vnc_port: Option<u16> on AppState - gui_enabled: bool on StateSnapshot (for issue #52 screen link) - GET /screen: serves a minimal RFB-over-WebSocket viewer (screen.html) - GET /screen/ws: upgrades to WebSocket and byte-pumps to 127.0.0.1:<vnc_port> The relay is a pure two-task byte pump (WS→TCP and TCP→WS), transparent to any RFB variant including VeNCrypt. Returns 404 when gui is not enabled. screen.html is a self-contained RFB client: handshake, FramebufferUpdate (Raw encoding), pointer and keyboard forwarding — enough to display the desktop and interact with it. noVNC assets (issue #52) replace this. Closes #51
This commit is contained in:
parent
29df223650
commit
2027e94432
5 changed files with 651 additions and 1 deletions
|
|
@ -16,7 +16,7 @@ must_use_candidate = "allow"
|
|||
|
||||
[workspace.dependencies]
|
||||
anyhow = "1"
|
||||
axum = "0.8"
|
||||
axum = { version = "0.8", features = ["ws"] }
|
||||
clap = { version = "4", features = ["derive"] }
|
||||
hive-fr0nt = { path = "hive-fr0nt" }
|
||||
hive-sh4re = { path = "hive-sh4re" }
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue