23bb814bac
Roadmap #3 (install on other devices). Bazzite already ships gamescope + PipeWire + the NVIDIA stack, so the host slots in with minimal new deps (ffmpeg-libs from RPM Fusion + opus + libei). - packaging/rpm/punktfunk.spec — builds punktfunk-host from source (cargo), installs the binary + udev rule + systemd user unit + headless helpers; Requires/Recommends mapped from the Ubuntu bootstrap deps to Fedora. - packaging/bootc/Containerfile — layer punktfunk into a bazzite-nvidia bootc image for atomic, image-based installs. - packaging/bazzite/host.env — gamescope-default appliance config (spawned per session). - packaging/copr/ + packaging/README.md — COPR build-from-SCM settings + install docs (rpm-ostree and bootc paths), and why not Flatpak. - LICENSE-MIT + LICENSE-APACHE — materialize the declared `MIT OR Apache-2.0` (was unfiled); the RPM ships them. Not buildable on the Ubuntu dev box (no rpm tooling) — the COPR/Fedora build is operator-run; all spec-referenced files verified present and the cargo build is green. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
27 lines
1.2 KiB
Bash
27 lines
1.2 KiB
Bash
# punktfunk host config for Bazzite (~/.config/punktfunk/host.env).
|
|
#
|
|
# Bazzite ships gamescope, PipeWire and the NVIDIA driver, so the default backend here is
|
|
# gamescope: the host spawns a headless gamescope per session at the client's exact mode and
|
|
# captures its PipeWire node — no separate desktop session to bring up. Set PUNKTFUNK_GAMESCOPE_APP
|
|
# to what you want to run inside it (e.g. `steam -gamepadui` for a SteamOS-like couch session).
|
|
|
|
XDG_RUNTIME_DIR=/run/user/1000
|
|
DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus
|
|
|
|
# gamescope backend: spawned per session, no compositor login required.
|
|
PUNKTFUNK_COMPOSITOR=gamescope
|
|
PUNKTFUNK_VIDEO_SOURCE=virtual
|
|
PUNKTFUNK_GAMESCOPE_APP=steam -gamepadui
|
|
|
|
# gamescope hosts its own EIS input socket — input lands in the nested session.
|
|
PUNKTFUNK_INPUT_BACKEND=gamescope
|
|
|
|
# GPU zero-copy capture (dmabuf -> CUDA -> NVENC). Auto-falls back to CPU if unavailable.
|
|
PUNKTFUNK_ZEROCOPY=1
|
|
|
|
#RUST_LOG=info
|
|
|
|
# To drive the full Plasma/GNOME desktop instead of a nested gamescope, switch to:
|
|
# PUNKTFUNK_COMPOSITOR=kwin (and run inside a KDE session — WAYLAND_DISPLAY/XDG_CURRENT_DESKTOP set)
|
|
# PUNKTFUNK_INPUT_BACKEND=libei
|