PunktfunkPunktfunk

Fedora

Install the Punktfunk host on Fedora 43 or newer from the RPM repo — four steps.

For Fedora 43 or newer (Workstation or KDE). Bazzite and other Fedora Atomic spins have their own page.

One command instead? The guided installer (preview) does everything on this page — it detects the distro, installs the host, joins the groups, opens the firewall and starts it:

curl -fsSL https://punktfunk.unom.io/install.sh | sh

The steps below are the same thing by hand, and stay the documented path.

1. GPU driver

  • NVIDIA: the driver comes from RPM Fusion. Enable it, install, reboot:

    sudo dnf install \
      https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm \
      https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
    sudo dnf install akmod-nvidia xorg-x11-drv-nvidia-cuda

    With Secure Boot on, the module won't load until you enrol its key — nvidia-smi will say it can't talk to the driver; the fix is in Troubleshooting.

  • AMD / Intel: nothing to install — Mesa carries Vulkan Video and VAAPI. For full codec coverage add RPM Fusion's mesa-va-drivers-freeworld (AMD) or intel-media-driver (Intel).

2. Install the host

The RPM repo has one group per Fedora release: fedora-44 on Fedora 44, bazzite on Fedora 43 (it's a plain Fedora 43 build of the same package). rpm -E %fedora prints your number — set baseurl to match, then install. The install line names the browser console (punktfunk-web) and the plugin runner (punktfunk-scripting) explicitly: they're recommended deps of punktfunk, and a box with install_weak_deps=False would silently skip them.

sudo tee /etc/yum.repos.d/punktfunk.repo >/dev/null <<'REPO'[punktfunk]name=punktfunk# fedora-44 on Fedora 44; bazzite on Fedora 43 (a plain Fedora 43 build of the same package)baseurl=https://git.unom.io/api/packages/unom/rpm/fedora-44enabled=1gpgcheck=1repo_gpgcheck=1gpgkey=https://git.unom.io/api/packages/unom/rpm/repository.key       https://git.unom.io/api/packages/unom/generic/punktfunk-keys/1/RPM-GPG-KEY-punktfunkREPOsudo dnf install punktfunk punktfunk-web punktfunk-scripting

Updates ride along with sudo dnf upgrade; restart the host afterwards (systemctl --user restart punktfunk-host) — or let the console do it.

3. Let it use your controllers

Join the input group (virtual gamepads go through /dev/uinput), then log out and back in:

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.

4. Start it, open the firewall

From a terminal inside your desktop session:

systemctl --user enable --now punktfunk-host punktfunk-web

Fedora runs firewalld, and a package never opens ports for you — so until you allow it, no client can reach the host. The RPM installed the service definitions; enable them once:

sudo firewall-cmd --reload   # load the definitions the package installed
sudo firewall-cmd --permanent --add-service=punktfunk-native --add-service=punktfunk-web
sudo firewall-cmd --reload

(punktfunk-web is only needed to reach the console from another device. Turning on Moonlight compat later? Add punktfunk-gamestream too — Ports & firewall.)

That's the install. Continue with the Quick Start from step 3 — open the console, pair a client, stream.

When you want more

On this page