feat(gaming): add wolf-pair module — browser PIN form for Moonlight pairing

Adds services/wolf-pair.sh (gaming group, port 8090). Builds a tiny
python:3.12-alpine container from server.py + Dockerfile (both baked
into the script) that reads Wolf's docker logs for the current pairing
secret and serves a PIN entry form. Runs with network_mode: host so
localhost:47989 (Wolf's /pin/ API) is reachable; docker socket mounted
read-only for log access.

Replaces the ./manage.sh pin CLI workflow: visit the URL, type the PIN.
Optional Caddy subdomain, UFW port 8090, README in ~/docker/wolf-pair/.

Bumps version to 0.9.8.
This commit is contained in:
Claude
2026-06-03 17:52:19 +00:00
parent c3b096361e
commit d9b19b5f56
3 changed files with 327 additions and 1 deletions
+11
View File
@@ -4,6 +4,17 @@ All notable changes to this project. Versions follow `MAJOR.MINOR.PATCH`.
The project is pre-1.0 while the modular system reaches parity with the
monolithic `ubuntu-post-install-*.sh` scripts.
## [0.9.8] - 2026-06-03
### Added
- `services/wolf-pair.sh` *(gaming)* — browser-based Moonlight pairing UI for
Wolf. Builds a tiny Python HTTP container (`python:3.12-alpine` + `docker-cli`)
that watches `docker logs wolf` for the current pairing secret and serves a
PIN entry form on port 8090. Eliminates the `./manage.sh pin` CLI workflow —
open `http://<server>:8090`, type the 4-digit PIN, done. Runs with
`network_mode: host` so it can reach Wolf's `/pin/` API at `localhost:47989`;
mounts the Docker socket read-only for log access. Optional Caddy subdomain.
## [0.9.7] - 2026-06-03
### Added