Development Status & Feature Progress

Transparent view of current features, platform testing status, and development roadmap

v1.4.4 - PRODUCTION READY

Production-Ready Features

These features are working reliably on tested platforms (v1.4.4)

✅ Video Streaming

  • • H.264/AVC encoding (AVC420 and AVC444v2)
  • • Hardware acceleration (VA-API, NVENC, and Vulkan Video across NVIDIA, Intel, and AMD)
  • • Software encoding fallback (OpenH264, installed separately by the user)
  • • Multi-monitor support (up to 16 displays)
  • • Resolution up to 4K UHD (3840x2160)
  • • Adaptive frame rate (5-60 FPS)

Tested: 2026-07 fleet verification (GNOME 49, KDE Plasma 6.6/6.7, sway, Hyprland, COSMIC)

✅ Input Injection

  • • Full keyboard support (all keys, modifiers, international layouts, Unicode)
  • • Absolute mouse positioning
  • • Relative mouse movement
  • • Mouse wheel & horizontal scroll
  • • Multi-touch events (compositor-dependent)

Working: libei (GNOME, KDE Plasma 6.1+), wlroots virtual input (sway, Hyprland), /dev/uinput mouse (COSMIC, opt-in)

✅ Bandwidth Optimization

  • • Tile-based damage tracking (64x64 pixel tiles)
  • • Only encode changed regions (90%+ savings)
  • • Activity-based FPS adjustment
  • • Idle detection (drops to 5 FPS when static)

Real-world: 0.5 Mbps typing, 15 Mbps scrolling (vs 150 Mbps VNC)

✅ Security

  • • TLS 1.3 encryption (all traffic encrypted), self-healing certificate generation
  • • Auto-generated TLS certificates
  • • Custom certificate support
  • • PAM authentication on native packages, including the hardened system service
  • • Startup exposure warning for unauthenticated listeners on non-loopback addresses

Production ready: TLS working, PAM auth on native packages

Platform Testing Status

2026-07 fleet verification data and implementation status by platform

GNOME 49 (Fedora 43)

✅ Production Ready

Tested 2026-07 | Mutter Direct API, per-connection sessions

Working Features:
  • • H.264/AVC444v2
  • • libei keyboard & mouse input, including Unicode
  • • Text/image/file clipboard
  • • Damage tracking (90% savings)
Platform Behavior:
  • • Per-connection Mutter Direct sessions: connect, disconnect, and reconnect all day without a restart
  • • Lazy EIS lifecycle with a kept-alive connection
Notes:
  • • PAM authentication works under the hardened system service (shadow group)

KDE Plasma 6.6.5 / 6.7.1 (openSUSE Tumbleweed)

✅ Production Ready

Tested 2026-07 | RemoteDesktop portal, libei input (Plasma 6.1+)

Working Features:
  • • H.264/AVC444v2
  • • libei keyboard & mouse input
  • • Full bidirectional clipboard, including Windows to Linux file copy
  • • Per-connection sessions
Clipboard Detail:
  • • Persistent monitor binds ext-data-control-v1 (which KWin exposes, not wlr-data-control-v1)
  • • Plasma 6.3.90 to 6.5.x fall back to text-only (upstream KDE bug 515465, fixed in 6.6)
Notes:
  • • Klipper file-URI re-announce handling fixed in 1.4.4

sway 1.11 / 1.12

✅ Production Ready

Tested 2026-07 | wlr-screencopy capture, wlroots virtual input

Working Features:
  • • wlr-screencopy capture, benchmarked at ~25 fps
  • • wlroots virtual keyboard & pointer input
  • • wlr/ext data-control clipboard
Fixed in 1.4.4:
  • • Color skew (blue rendered as brown): bridge now honors the wl_shm Xbgr8888 format and swaps R/B
Also applies to:
  • • river, labwc, Wayfire (wlroots family)

Hyprland 0.55.4

✅ Production Ready

Tested 2026-07 (and earlier 0.54.x) | wlr-direct capture

Native connect, EGFX video, input, and clipboard all pass. Capture uses wlr-screencopy: Hyprland advertises ext-image-copy-capture-v1, but that handshake does not complete, so the server waits up to the configured timeout and falls back to the guaranteed wlr-direct path.

COSMIC (Pop!_OS)

✅ Working (mouse opt-in)

Verified live, COSMIC epoch 1.2.0

Working Features:
  • • Video via ext-image-copy-capture-v1 (portal-generic)
  • • Keyboard via zwp_virtual_keyboard, including Unicode
  • • Clipboard via ext-data-control-v1, bidirectional
Mouse (opt-in):
  • • Via /dev/uinput, since COSMIC has no wlr-virtual-pointer (cosmic-comp #1350)
  • • Without it the session is keyboard-only
Tracking upstream:
  • • Smithay #2073, cosmic-comp #2442, xdg-desktop-portal-cosmic #317 (RemoteDesktop + EIS)

Feature Implementation Progress

Clipboard Synchronization

Shipped

Current Status:

  • ✅ Bidirectional text, HTML, RTF, and image clipboard, MS-RDPECLIP compliant
  • ✅ File copy in both directions on native installs (Windows to Linux, and Linux to Windows)
  • ✅ Persistent clipboard monitor binds ext-data-control-v1 (KWin and wlroots expose this)
  • 💡 Portal clipboard remains the sandboxed Community Edition fallback

Windows to Linux file copy verified on KDE Plasma 6.6.5 and 6.7.1

Session Persistence & Unattended Access

Shipped

Current Status:

  • Mutter Direct API (GNOME): per-connection session, zero dialogs. A fresh session is created on each connect and released on disconnect, so many sequential RDP sessions run without a restart
  • wlr-direct protocols: sway/Hyprland zero-dialog operation
  • Portal restore tokens: KDE and non-GNOME compositors, via --grant-permission
  • libei/EIS: Flatpak wlroots support

Fixed in 1.4.4: GNOME previously served one session before Mutter's idle timeout reaped it, requiring a restart.

Hardware Acceleration (NVENC / VA-API / Vulkan Video)

Native Package Support

Current Availability:

  • NVIDIA NVENC: available on native packages
  • Intel/AMD VA-API: hardened reference-frame management, rate control, and SIMD NV12 conversion
  • Vulkan Video: new in 1.4.4, cross-vendor H.264 via VK_KHR_video_encode_h264 on NVIDIA, Intel, and AMD
  • 💡 OpenH264 fallback: the user installs Cisco's binary separately; it is never bundled

Hardware encoders reduce CPU usage from ~30% to 2-10%. Automatic selection based on available hardware.

AVC444 (4:4:4 Chroma) for Crystal-Clear Text

Shipped

Availability by Platform (2026-07 fleet):

  • ✅ GNOME 49 (Fedora 43) - AVC444v2 enabled
  • ✅ KDE Plasma 6.6.5 / 6.7.1 (openSUSE Tumbleweed) - AVC444v2 enabled
  • ✅ sway 1.11 / 1.12, Hyprland 0.55.4 - wlr-direct + AVC444

Platform quirk detection automatically selects the optimal codec for your system.

In Active Development

🚧 Microphone Input (AUDIN)

Bidirectional audio for voice calls and recording.

Implementation: Tracking PipeWire input stream APIs

Benefit: Video conferencing, voice chat, audio recording from client

🚧 Multi-Monitor Enhancements

Dynamic layout changes without capture restart.

Implementation: Improving GNOME multi-monitor handling

Benefit: Seamless resolution changes, hot-plug monitors

🚧 Drive Redirection (RDPDR)

Access Windows client drives from Linux server.

Implementation: Design phase

Benefit: File transfer, access client storage, seamless workflow

🔮 HDR Color Space

High dynamic range color reproduction.

Status: Tracking Wayland HDR protocol standardization

Waiting on: Compositor adoption, protocol stability

🔮 Window-Level Capture

Capture individual windows instead of full desktop.

Status: Detection implemented, feature planned

Benefit: Privacy, selective sharing, multi-user systems

Have a feature request or want to contribute?

Compositor Support Development

Desktop Environment Video Input Clipboard Session Persist Status
GNOME 49 (Fedora 43) ✅ AVC444v2 ✅ libei ✅ Full + file copy ✅ Per-connection Tested ✅
KDE Plasma 6.6.5 / 6.7.1 (openSUSE Tumbleweed) ✅ AVC444v2 ✅ libei ✅ Full + file copy ✅ Per-connection Tested ✅
sway 1.11 / 1.12 ✅ wlr-screencopy ✅ wlr-virtual ✅ wlr/ext data-control ✅ Direct Tested ✅
Hyprland 0.55.4 ✅ wlr-direct ✅ wlr-virtual ✅ wlr/ext data-control ✅ Direct Tested ✅
COSMIC (Pop!_OS, epoch 1.2.0) ✅ ext-image-copy-capture 💡 Keyboard + opt-in mouse ✅ ext-data-control 🚧 No RemoteDesktop portal yet Working ✅

Legend: ✅ Working | 🔧 Implementation Complete | ⏳ Testing | 💡 Platform-Dependent | 🚧 Tracking Upstream Development

Open Development

We believe in transparency. This page shows real testing data, current implementation status, and what's actively being developed.

Source-available under Business Source License 1.1 | Community Edition (Flatpak/Snap) free to use | Converts to Apache 2.0 on 2029-06-01