-
v0.8.3
Stableapple / swift (push) Successful in 1m11sapple / screenshots (push) Successful in 5m46sci / web (push) Successful in 56sci / rust (push) Successful in 3m40sci / docs-site (push) Successful in 59sci / bench (push) Successful in 4m59sandroid-screenshots / screenshots (push) Successful in 49sandroid / android (push) Successful in 4m25sarch / build-publish (push) Successful in 5m47sdecky / build-publish (push) Successful in 15sdocker / build-push (--build-arg FEDORA_VERSION=44, ci, ci/fedora-rpm.Dockerfile, punktfunk-fedora44-rpm) (push) Successful in 6sdocker / build-push (., web/Dockerfile, punktfunk-web) (push) Successful in 4sdocker / build-push (ci, ci/fedora-rpm.Dockerfile, punktfunk-fedora-rpm) (push) Successful in 4sdocker / build-push (ci, ci/rust-ci.Dockerfile, punktfunk-rust-ci) (push) Successful in 5sdocker / build-push (docs-site, docs-site/Dockerfile, punktfunk-docs) (push) Successful in 4sdeb / build-publish (push) Successful in 4m3sflatpak / build-publish (push) Successful in 5m3srelease / apple (push) Successful in 17m20srpm / build-publish (43, bazzite, punktfunk-fedora-rpm) (push) Successful in 10m47srpm / build-publish (44, fedora-44, punktfunk-fedora44-rpm) (push) Successful in 10m41sdocker / deploy-docs (push) Successful in 17sweb-screenshots / screenshots (push) Successful in 2m38swindows-host / package (push) Successful in 16m17swindows-msix / package (arm64, C:\Users\Public\ffmpeg-arm64, aarch64-pc-windows-msvc, C:\t-a64) (push) Successful in 3m7swindows-msix / package (x64, C:\Users\Public\ffmpeg, x86_64-pc-windows-msvc, C:\t) (push) Successful in 2m58slinux-client-screenshots / screenshots (push) Successful in 2m7sreleased this
2026-07-07 22:44:28 +00:00 | 22 commits to main since this releaseWire-compatible with 0.8.x — existing pairings and clients keep working.
Linux client — rebuilt on Vulkan
The native Linux client has been re-architected from the ground up. The old GTK4 shell and its GL presenter give way to a two-binary design: a relm4/libadwaita desktop shell (host discovery, pairing, and the game library) that hands each stream off to a dedicated Vulkan session binary — an SDL3 window with an
ashpresenter and a Skia "console" UI (live stats overlay, capture HUD, and a gamepad-navigable coverflow library you can browse with--browse). What the rebuild unlocks:- Zero-copy decode into Vulkan. VAAPI-decoded frames (AMD/Intel, including the Steam Deck) are imported straight into Vulkan — no GL round-trip.
- Vulkan Video decode on NVIDIA — hardware HEVC decode on the presenter's own device.
- HDR10 end to end (P010).
- An animated mesh-gradient background, matching the Apple client.
- Along the way: the resize crash is fixed, the decoder recovers by requesting a keyframe when it produces no output, decode-stage stats now measure true GPU completion, Alt+Enter toggles fullscreen, and pointer-lock / mouse-motion input is fixed.
Windows client
- Stream-shortcut parity with the GTK client — Ctrl+Alt+Shift+S toggles the stats overlay live and F11 toggles fullscreen, joining the release/disconnect chords. The full set is now surfaced in a Settings reference card and a brief start-of-stream banner (on both the Windows and Linux clients).
Android
- The low-latency pipeline is now the default — vendor low-latency decoder keys, an async decode loop, DSCP marking, the Wi-Fi low-latency lock, and pipeline thread boosts, all on by default.
- CI now attaches the built APK to each run.
Host
- Keyframe-request storms are coalesced into one IDR per cooldown, so a burst of loss no longer floods the encoder with redundant keyframes.
- The receiver now jumps to live on a standing backlog instead of ratcheting latency upward when it falls behind.
Packaging & install
- Steam Deck / Flatpak — the client Flatpak now ships both client binaries (the shell and the Vulkan session streamer), so streaming and the gamepad library work with the new two-binary split. The Decky plugin's install-from-URL uses the
unom.io/pf-deckyshort link. - Desktop Linux (Arch / deb / RPM) — these packages now install both client binaries and pull the runtime Vulkan loader.
- The host's management / library port (47990) is opened on the shipped LAN firewall profiles (ufw + firewalld).
Security
crossbeam-epochbumped for RUSTSEC-2026-0204, and the web console's transitive dependency tree was re-audited clean.
Downloads