Installation Guide

Community Edition (Flatpak or Snap)

The Community Edition ships as a Flatpak, published both on Lamco's own self-hosted repository (auto-updating) and as a downloadable bundle attached to the GitHub release, plus on the Snap Store. It is not on Flathub.

# Flatpak, one-click install from Lamco's own repository (recommended: auto-updates)
flatpak install --from https://flatpak.lamco.ai/io.lamco.rdp-server.flatpakref

# equivalent, in two steps
flatpak remote-add --user --if-not-exists lamco https://flatpak.lamco.ai/lamco.flatpakrepo
flatpak install --user lamco io.lamco.rdp-server

# Flatpak bundle (one-off install, download the .flatpak asset from the GitHub release first)
flatpak install lamco-rdp-server.flatpak

# Snap Store
snap install lamco-rdp-server

Running

# GUI mode (default)
flatpak run io.lamco.rdp-server

# Server only (headless)
flatpak run io.lamco.rdp-server lamco-rdp-server

Native Packages

apt (apt.lamco.ai, amd64 and arm64), RPM Fusion nonfree (Fedora, x86_64 and aarch64), Arch AUR (x86_64 and aarch64), and openSUSE OBS (Tumbleweed, Leap 16.0, Fedora, and AlmaLinux 10, x86_64 and aarch64 on most targets).

Source

git clone https://github.com/lamco-admin/lamco-rdp-server
cd lamco-rdp-server
cargo build --release

MSRV is 1.89 (Rust edition 2024). The gui Cargo feature is a default feature, so a plain release build produces both the server and the GUI. A headless, server-only build passes --no-default-features and re-enables the features it needs.

System Requirements

Minimum

Compositor:Wayland with XDG Desktop Portal support
Display Server:PipeWire
Desktop:A running desktop environment
RAM:2 GB
Architecture:x86_64 or aarch64

Recommended

Hardware Encoder:Intel QuickSync / AMD VCE / NVIDIA NVENC
RAM:4+ GB
CPU:Modern multi-core (4+ cores)
Network:Gigabit Ethernet or better

Important: Lamco RDP Server shares your existing desktop session. A desktop environment (GNOME, KDE, Sway, etc.) must be running with a user logged in.

Post-Installation

Firewall Configuration

# firewalld
sudo firewall-cmd --add-port=3389/tcp --permanent
sudo firewall-cmd --reload

# ufw
sudo ufw allow 3389/tcp

Verify PipeWire

systemctl --user status pipewire

Next: Configuration →