ci / web (pull_request) Successful in 2m8s
apple / swift (pull_request) Successful in 2m18s
apple / distribute (pull_request) Skipped
apple / screenshots (pull_request) Skipped
ci / bun-nix (pull_request) Successful in 31s
ci / docs-drift (pull_request) Successful in 36s
ci / rust-arm64 (pull_request) Successful in 2m57s
ci / docs-site (pull_request) Successful in 1m43s
android / android (pull_request) Successful in 6m54s
ci / rust (pull_request) Successful in 8m37s
74 lines
3.0 KiB
Plaintext
74 lines
3.0 KiB
Plaintext
---
|
|
title: Ubuntu
|
|
description: Install the Punktfunk host on Ubuntu 26.04 or newer with apt — four steps.
|
|
---
|
|
|
|
For **Ubuntu 26.04 or newer**, Desktop or Server, GNOME or KDE.
|
|
|
|
> **Ubuntu 24.04 LTS installs the package but cannot stream** — its desktop is too old to create a
|
|
> virtual display, and there is no gamescope for it. Use 26.04.
|
|
> [Why, in detail](/docs/requirements#the-floor-for-a-working-host).
|
|
|
|
## 1. GPU driver
|
|
|
|
- **NVIDIA:** install the recommended driver and its GL/EGL userspace (Wayland needs it), then
|
|
reboot:
|
|
|
|
```sh
|
|
sudo ubuntu-drivers install
|
|
sudo apt install libnvidia-gl-<version> # the number ubuntu-drivers picked, e.g. libnvidia-gl-580
|
|
```
|
|
|
|
If `nvidia-smi` can't talk to the driver afterwards, Secure Boot is in the way — see
|
|
[Troubleshooting](/docs/troubleshooting#nvidia-smi-says-it-cant-communicate-with-the-driver).
|
|
- **AMD / Intel:** nothing to install. The host package pulls in the VAAPI driver for your GPU, and
|
|
Vulkan Video comes with Mesa.
|
|
|
|
## 2. Install the host
|
|
|
|
The repo is public and signed; this adds it and installs the host (the browser console,
|
|
`punktfunk-web`, comes along automatically):
|
|
|
|
<Install platform="debian" />
|
|
|
|
Updates ride along with `sudo apt upgrade` from now on; restart the host afterwards
|
|
(`systemctl --user restart punktfunk-host`) — or let the [console do it](/docs/updating).
|
|
|
|
## 3. Let it use your controllers
|
|
|
|
Virtual gamepads go through `/dev/uinput`, which the `input` group owns. Join it, then **log out and
|
|
back in**:
|
|
|
|
```sh
|
|
sudo usermod -aG input "$USER"
|
|
```
|
|
|
|
Want the **virtual Steam Deck controller** (paddles, trackpads, gyro)? Also join the `punktfunk`
|
|
group — [what it gates and why it's separate](/docs/gamescope#nobara-and-other-autologin-display-managers).
|
|
|
|
## 4. Start it
|
|
|
|
From a terminal inside your desktop session:
|
|
|
|
```sh
|
|
systemctl --user enable --now punktfunk-host punktfunk-web
|
|
```
|
|
|
|
Ubuntu ships `ufw` switched **off**, so there is nothing to open. If you turned it on (common on
|
|
Server): `sudo ufw allow punktfunk-native`, plus `sudo ufw allow punktfunk-web` to reach the console
|
|
from another device — [Ports & firewall](/docs/ports) has every port and the GameStream ones.
|
|
|
|
**That's the install.** Continue with the [Quick Start from step 3](/docs/quickstart#3-open-the-web-console)
|
|
— open the console, pair a client, stream.
|
|
|
|
## When you want more
|
|
|
|
- Something off? `punktfunk-host detect-conflicts` tells you if Sunshine or Apollo is also running;
|
|
[Troubleshooting](/docs/troubleshooting) starts from the symptom.
|
|
- Your desktop's particulars — headless sessions, quirks — [KDE](/docs/kde), [GNOME](/docs/gnome),
|
|
[gamescope](/docs/gamescope), [Hyprland](/docs/hyprland), [Sway](/docs/sway).
|
|
- Stream with nobody logged in — [Running as a service](/docs/running-as-a-service).
|
|
- Track `main` instead of releases — [Release channels](/docs/channels). Older Ubuntu, or want to
|
|
hack on it — [Build from source](/docs/build-from-source).
|
|
- Debian, LMDE and Linux Mint — [Debian](/docs/debian).
|