Products › RDP

Remote Desktop for Linux

Wayland-native RDP — server, clients, open-source foundations, and the research that informs the work

FOCUS AREA

RDP on Linux, built for Wayland

RDP is the best-understood remote-desktop protocol in the industry — well-documented, multi-vendor, supported by every Windows install and most thin clients. On Linux, the story has been weaker. The dominant server (xrdp) is an X11-era bridge: good enough for legacy desktops, but it can’t run on Wayland, can’t use hardware encoding cleanly, and can’t share clipboard formats or files.

Lamco’s RDP focus area is the alternative: an RDP server built for Wayland, open-source Rust foundations published for the whole ecosystem to use, and a growing set of client and automation tools. The anchor product is Lamco RDP Server; everything else in this focus area either builds toward it, alongside it, or on top of it.

RDP on Linux is separately a prerequisite for Proxmox integration and the upcoming VDI work — those are co-equal focus areas that reuse this foundation. See the Proxmox focus area for the VM-access integration story.

WHY WAYLAND-NATIVE

Legacy Linux RDP vs. Lamco RDP Server

The short technical version. The deeper one lives on the Features page.

X11 + xrdp (legacy stack)

  • — Requires an X11 session; won’t run on modern Wayland-only distros
  • — Software-only encoding, CPU-bound, no GPU path
  • — Text-only clipboard; no file transfer, no image paste
  • — No HDR, no 10-bit color, single monitor
  • — Capture via X SHM — incompatible with Wayland security model

Lamco RDP Server (Wayland-native)

  • — Runs natively on GNOME, KDE, sway, Hyprland, and every wlroots compositor
  • — VA-API / NVENC hardware encoding; H.264, H.265, AV1
  • — File clipboard via XDG Desktop Portal; image and text both work
  • — 10-bit HDR, multi-monitor, per-output DPI
  • — Capture via PipeWire screencast — the sanctioned Wayland path
LAYER STACK

How the pieces stack up

Each layer is independently useful. The crates are MIT/Apache-2.0; the server is BSL 1.1 (Apache-2.0 on 2028-12-31).

┌───────────────────────────────────────────────────────────────────┐
│ Application layer                                                 │
│   • Lamco RDP Server            (BSL 1.1 → Apache-2.0 2028)       │
│   • lamco-rdp-tools (CLI)       (MIT, coming soon)                │
│   • lamco-rdp-console (PVE)     (coming soon — Proxmox focus)     │
│   • lamco-qemu-rdp (per-VM)     (coming soon — Proxmox focus)     │
└─────┬─────────────────────────────────────────────────────────────┘
      │
┌─────▼─────────────────────────────────────────────────────────────┐
│ Protocol layer — lamco-rdp meta-crate                             │
│   • lamco-rdp-input             (scancode, coordinates)           │
│   • lamco-clipboard-core        (protocol-agnostic utilities)     │
│   • lamco-rdp-clipboard         (IronRDP CliprdrBackend)          │
│   on top of: ironrdp-cliprdr, ironrdp-core (Devolutions)          │
└─────┬─────────────────────────────────────────────────────────────┘
      │
┌─────▼─────────────────────────────────────────────────────────────┐
│ Capture layer — lamco-wayland meta-crate                          │
│   • lamco-portal                (XDG Desktop Portal)              │
│   • lamco-pipewire              (PipeWire capture + DMA-BUF)      │
│   • lamco-video                 (frame pipeline, RDP bitmaps)     │
└─────┬─────────────────────────────────────────────────────────────┘
      │
┌─────▼─────────────────────────────────────────────────────────────┐
│ OS layer                                                          │
│   Wayland compositor  ·  xdg-desktop-portal  ·  PipeWire          │
└───────────────────────────────────────────────────────────────────┘
ANCHOR PRODUCT

Lamco RDP Server

The production Wayland-native RDP server — v1.4.2 shipping on Flatpak, Snap, deb, rpm, and source. Every other item in this focus area either feeds into or consumes it.

Wayland Native
XDG Portals
GPU Accel
NVENC, VA-API
Audio
OPUS, PCM
Written in Rust
Memory safe
SUPPORTING CAST

Clients, automation, and tooling

A growing portfolio alongside the server. Some public, some in development.

lamco-rdp-tools

COMING SOON

CLI automation toolkit — 55 commands for type, click, screenshot, waitfor, clip-set, CI/CD workflows. “The vncdotool for RDP.” MIT licensed.

Learn more →

RDP GUI client

IN DEVELOPMENT

A standard RDP desktop client. Primary role today: backbone for downstream releases (tools, console, tests). Later: may ship as a separately-released end-user client.

lamco-probe

IN DEVELOPMENT

A CLI RDP probe / capability tester. Inspects what a target RDP server supports, reports round-trip characteristics, and feeds integration tests. Shape still forming — dedicated canonical page will land when it’s ready.

RDP test client

INTERNAL

Private integration-testing client used against the server in CI. Not a distributed product; mentioned for completeness.