android / android (push) Canceled after 1m54s
apple / swift (push) Canceled after 0s
apple / screenshots (push) Canceled after 0s
ci / docs-site (push) Successful in 1m15s
arch / build-publish (push) Canceled after 1m50s
docker / builders (ci/arch-ci.Dockerfile, punktfunk-arch-ci) (push) Successful in 14s
docker / builders (ci/fedora-rpm.Dockerfile, punktfunk-fedora-rpm) (push) Successful in 14s
ci / rust (push) Canceled after 59s
ci / rust-arm64 (push) Canceled after 2m31s
ci / web (push) Canceled after 0s
deb / build-publish (push) Canceled after 18s
deb / build-publish-host (push) Canceled after 19s
deb / build-publish-client-arm64 (push) Canceled after 12s
docker / builders (--build-arg FEDORA_VERSION=44, ci/fedora-rpm.Dockerfile, punktfunk-fedora44-rpm, -f44) (push) Canceled after 0s
docker / apps (docs-site, docs-site/Dockerfile, punktfunk-docs) (push) Canceled after 1m15s
docker / builders (ci/android-ci.Dockerfile, punktfunk-android-ci) (push) Canceled after 0s
docker / builders (ci/rust-ci-noble.Dockerfile, punktfunk-rust-ci-noble) (push) Canceled after 0s
docker / builders (ci/rust-ci.Dockerfile, punktfunk-rust-ci) (push) Canceled after 0s
docker / builders-arm64cross (push) Canceled after 0s
docker / apps (., web/Dockerfile, punktfunk-web) (push) Canceled after 0s
docker / deploy-docs (push) Canceled after 0s
rpm / build-publish (43, bazzite, punktfunk-fedora-rpm) (push) Canceled after 36s
rpm / build-publish (44, fedora-44, punktfunk-fedora44-rpm) (push) Canceled after 2m28s
windows-host / package (push) Canceled after 0s
windows-host / canary-manifest (push) Canceled after 0s
windows-host / winget-source (push) Canceled after 0s
decky / build-publish (push) Successful in 50s
Notify-only (U0): polls /update/status (which keeps the host's manifest cache warm), Check-now with the 30s limit surfaced, release-notes link, stale-feed and check-disabled states, copyable per-install-kind command. en+de strings; docs-site 'Updating the Host' page wired into the install section. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
61 lines
2.8 KiB
Markdown
61 lines
2.8 KiB
Markdown
---
|
|
title: Updating the Host
|
|
description: How to see when a newer punktfunk host is available — the web console's update card — and the update command for every install method.
|
|
---
|
|
|
|
The web console tells you when a newer host is out. The **Host** page has an **Updates** card
|
|
showing the version you run, the channel you follow (stable or canary), how this host was
|
|
installed, and — once a newer release exists — the exact command that updates it. The
|
|
"update available" state also fires an `update.available` event on the host
|
|
[event stream](/docs/automation), so hooks and scripts can react to it too.
|
|
|
|
The check is a small signed manifest the host fetches from the punktfunk release feed and
|
|
verifies against keys built into the host itself — a tampered or replayed feed is rejected, and
|
|
the console will tell you when a check failed rather than silently showing stale facts.
|
|
|
|
## Updating, per install method
|
|
|
|
The console shows the right one of these automatically; for reference:
|
|
|
|
| How you installed | How to update |
|
|
|---|---|
|
|
| Windows installer / winget | `winget upgrade unom.PunktfunkHost`, or run the newer `punktfunk-host-setup.exe` |
|
|
| Ubuntu / Debian (apt) | `sudo apt update && sudo apt install --only-upgrade punktfunk-host` |
|
|
| Fedora (dnf) | `sudo dnf upgrade punktfunk` |
|
|
| Bazzite sysext (recommended) | `sudo punktfunk-sysext update` |
|
|
| Bazzite rpm-ostree layer | `sudo /usr/share/punktfunk/update-punktfunk.sh` (staged — reboot to finish) |
|
|
| Arch / CachyOS (pacman) | `sudo pacman -Syu` (a normal full system upgrade) |
|
|
| Steam Deck (on-device build) | `bash ~/punktfunk/scripts/steamdeck/update.sh --pull` |
|
|
| NixOS | update the flake input and rebuild |
|
|
|
|
After a Linux package update, restart the host to pick up the new binary:
|
|
|
|
```bash
|
|
systemctl --user restart punktfunk-host
|
|
```
|
|
|
|
(The Windows installer restarts the service itself; `punktfunk-sysext update` prints the same
|
|
restart hint when it's needed.)
|
|
|
|
One-click updating from the console is on the way, per install method — the card will grow an
|
|
**Apply** button where the platform supports it.
|
|
|
|
## Turning the check off
|
|
|
|
The check contacts `git.unom.io` (the punktfunk forge) and nothing else, and sends nothing but a
|
|
normal download request. If you'd rather the host never checks, set:
|
|
|
|
```bash
|
|
PUNKTFUNK_UPDATE_CHECK=0
|
|
```
|
|
|
|
in the host's environment (`host.env` on Windows, the systemd user unit environment on Linux).
|
|
The card then shows checks as disabled; everything else keeps working.
|
|
|
|
## If the card says the feed is stale
|
|
|
|
"Feed hasn't changed in over 45 days" means checks *succeed* but nothing new arrives. Usually
|
|
that just means no release happened for a while; if the [releases page](https://git.unom.io/unom/punktfunk/releases)
|
|
shows something newer than the card does, something between this host and the feed is pinning old
|
|
data — worth a look at proxies or DNS on the way to `git.unom.io`.
|