CortenDesk 1.0.0
First stable release. CortenDesk is a self-hosted web console for the open-source RustDesk server (hbbs/hbbr) — device inventory, address book, groups, users and permissions, strategies, audit logs, API tokens, OIDC single sign-on, and an in-browser remote desktop client.
New
- The web client works over plain HTTP. It previously refused to run without TLS. No configuration — the client detects what the browser allows and picks its path.
- Redesigned web client interface — new top bar, dock, and a slide-out panel for file transfer and session details.
- Decode backpressure. A client that cannot keep up now drops delta frames instead of queueing them, so latency stays bounded rather than drifting silently behind the remote screen.
- Stall recovery. If frames arrive and none are decoded, the client requests a fresh key frame instead of showing a frozen picture.
- Touch gesture support in the web client: tap, long-press, and drag.
Notes on HTTPS
HTTPS is still the better setup and remains recommended:
| HTTPS (or localhost) | Plain HTTP | |
|---|---|---|
| Video | VP8, VP9, H.264, H.265, AV1 via WebCodecs | H.264 via Media Source Extensions |
| Hardware decoding | Yes | Browser's own H.264 pipeline |
| Per-frame statistics | Yes | Not reported |
| Input, file transfer, chat | Yes | Yes |
| Clipboard sync | Yes | Browser-restricted |
The WebSocket URLs must match the page scheme — wss:// on an HTTPS console, ws:// on plain HTTP. A browser rejects ws:// from an HTTPS page as mixed content.
Upgrade
No migrations in this release; upgrading is a tag bump and a restart. If you are coming from before 0.9.0, note that API tokens using --assign --strategy_name need strategy: rw and must be reissued.
docker pull marcpope/cortendesk:1.0.0
docker pull ghcr.io/marcpope/cortendesk:1.0.0
Requires a running open-source RustDesk server (hbbs/hbbr). No RustDesk license of any kind is needed.