Files
punktfunk/docs-site/content/docs/ubuntu-kde.md
T
enricobuehler 91d5874e94
ci / web (push) Failing after 47s
ci / rust (push) Successful in 54s
docker / build-push (., web/Dockerfile, punktfunk-web) (push) Successful in 4s
docker / build-push (ci, ci/rust-ci.Dockerfile, punktfunk-rust-ci) (push) Successful in 3s
docker / build-push (docs-site, docs-site/Dockerfile, punktfunk-docs) (push) Successful in 17s
ci / docs-site (push) Failing after 37s
docker / deploy-docs (push) Successful in 17s
apple / swift (push) Successful in 1m19s
docs: user-facing docs revamp — structured product docs + per-platform setup
Replace the dev/agent-log pages with a proper user-facing doc set:

- Getting Started: Introduction (rewritten), How It Works, Quick Start.
- Host Setup: Requirements, then clean per-platform guides — Ubuntu GNOME,
  Ubuntu KDE, Fedora KDE (new), Bazzite (rewritten) — plus Running as a Service
  (desktop / headless GNOME / headless KDE).
- Connecting: Clients overview, Moonlight, Pairing & Trust.
- Configuration: host.env reference, Host CLI, Troubleshooting.
- The dev/design notes (architecture, roadmap, the deferred design specs, CI)
  move to a clearly-separated "Project & Internals" nav section.

Removes the superseded box-specific pages (gnome-box, headless-box, linux-setup,
overview). status.md (the internal progress tracker, with box IPs) is kept as a
file but dropped from the public nav. Site builds clean.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-12 14:01:19 +00:00

2.0 KiB
Raw Blame History

title, description
title description
Ubuntu — KDE Plasma Set up a punktfunk host on Ubuntu with KDE Plasma (KWin).

Set up a punktfunk host on Ubuntu running KDE Plasma. The host uses KDE's KWin compositor to create a per-client virtual display. Needs KWin 6.5.6 or newer.

New to this? Skim Requirements first.

NVIDIA driver, dependencies, and build

These steps are identical to the GNOME guide — follow steps 13 of Ubuntu — GNOME:

  1. Install the NVIDIA driver and the libnvidia-gl-<version> userspace; enable nvidia-drm modeset=1; reboot and verify with nvidia-smi.
  2. Install the build toolchain and runtime libraries (the same apt line).
  3. Clone and cargo build --release -p punktfunk-host.

Configure

The host reads ~/.config/punktfunk/host.env. For KDE Plasma:

mkdir -p ~/.config/punktfunk
cat > ~/.config/punktfunk/host.env <<'ENV'
WAYLAND_DISPLAY=wayland-0
XDG_CURRENT_DESKTOP=KDE
PUNKTFUNK_COMPOSITOR=kwin
PUNKTFUNK_VIDEO_SOURCE=virtual
PUNKTFUNK_ZEROCOPY=1
PUNKTFUNK_INPUT_BACKEND=libei
ENV

Make sure you're on a KDE Wayland session (not X11) — the picker on the login screen. The virtual-display path is Wayland-only. See the Configuration reference for every option.

Run

From a terminal inside your Plasma session:

cargo run --release -p punktfunk-host -- serve --native

The host starts listening and advertises itself on the network. Now connect a client.

To run it at boot — including fully headless, with KWin brought up automatically and no login — see Running as a Service; the headless appliance is built around KDE.

Troubleshooting

  • KWin too old: virtual outputs need KWin ≥ 6.5.6. Check with kwin_wayland --version.
  • No picture / capture fails: confirm you're on a Wayland session and the NVIDIA GL userspace is installed (libnvidia-gl-<version>). More in Troubleshooting.