punktfunkpunktfunk

Steam Deck (Decky)

Install the punktfunk Decky plugin to discover, pair, and stream from the Steam Deck's Gaming Mode — no drop to Desktop.

The Decky plugin adds a punktfunk panel to the Steam Deck's Quick Access Menu (the button), so you can find a host, pair, and start streaming without leaving Gaming Mode. It's the couch-friendly front end for the Steam Deck — built from real Steam UI, gamepad-navigable end to end.

Under the hood the plugin doesn't decode video itself: it discovers hosts, runs the PIN pairing, and launches the regular Linux client (the io.unom.Punktfunk Flatpak) the way gamescope needs so it fullscreens correctly. So the Deck has two ways to stream, and they share one client + one paired identity:

  • Gaming Mode → the Decky plugin (this page).
  • Desktop Mode → run the Flatpak directly, like any Linux app.

Before you start

You need three things on the Deck:

  1. Decky Loader — the plugin loader. Install it from decky.xyz if you haven't already.

  2. The punktfunk client Flatpak — the plugin launches it, so install it once in Desktop Mode:

    flatpak install --user https://flatpak.unom.io/io.unom.Punktfunk.flatpakref

    (Full options: Install a Client → Steam Deck. Without it, the panel's Stream button reports client-not-found.)

  3. A punktfunk host running on your LAN — see Install the Host. The Deck finds it automatically over mDNS, so nothing to configure here.

Install the plugin

The plugin is published as a ready-to-install zip on every build. You don't need the Decky CLI or a developer toolchain — just paste a URL into Decky:

  1. On the Deck, open the Quick Access Menu () → the plug icon (Decky) → the gear (Settings) → enable Developer Mode.

  2. Open the new Developer tab and choose Install Plugin from URL.

  3. Paste the stable link and confirm:

    https://git.unom.io/api/packages/unom/generic/punktfunk-decky/latest/punktfunk.zip

The punktfunk panel appears in the Quick Access Menu right away — no Deck restart needed.

Channels. The link above is the stable channel (moves on vX.Y.Z releases). For the latest main build use the canary zip — …/generic/punktfunk-decky/canary/punktfunk.zip — or pin an exact version with …/punktfunk-decky/<version>/punktfunk.zip. See Release Channels.

Use it

Open the punktfunk panel from the Quick Access Menu, or Open punktfunk for the full-screen page (host list + stream settings).

  • Discover — hosts on your network appear automatically (mDNS). Tap Refresh to rescan. A lock icon means the host requires pairing.
  • Pair — for a locked host, arm pairing on the host (its console or web console shows a 4-digit PIN), then enter that PIN on the Deck's keypad. Pairing persists, so the next connection is silent.
  • Stream — pick a host and the stream launches fullscreen in Gaming Mode (as a hidden Steam shortcut, so gamescope focuses it).
  • Settings — resolution, refresh, bitrate, gamepad type, and mic, written to the client the plugin launches. Leave Resolution / Refresh on Native to get the Deck's own mode.

To leave a stream: the in-client controller chord L1 + R1 + Start + Select, or close the "game" from the Steam overlay. Exiting the client ends the Steam game and drops you back to Gaming Mode.

Updating

The plugin checks for updates itself — no Decky store needed. When a newer build is available it shows an Update to vX button (in the Quick Access Menu panel and on the full page). Tap it, confirm Decky's prompt, and the plugin downloads, verifies, replaces itself, and reloads — without leaving Gaming Mode.

The check follows the channel you installed from: a plugin installed from the stable link tracks stable releases; one installed from the canary link tracks main builds.

If the Update button never appears (an older Decky Loader, or no network), update manually: Decky → DeveloperInstall Plugin from URL, and paste the same channel link again. Decky replaces the installed copy in place.

Troubleshooting

SymptomFix
Stream shows client-not-foundInstall the client Flatpak in Desktop Mode (see Before you start).
No hosts listedMake sure the host is running and on the same LAN; the Deck needs avahi (shipped on SteamOS). Tap Refresh.
Pairing fails / "not armed"The PIN is shown only after you arm pairing on the host. Arm it, then enter the PIN within the window.
Stream launches but doesn't focusStart it from the panel (not by launching the Flatpak by hand) so Steam/gamescope focuses it.

The plugin source lives in clients/decky.

On this page