[PR #541] feat: move Wolf to Fedora as the default base image #511

Open
opened 2026-10-15 13:01:08 +00:00 by bsakaguchi · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/games-on-whales/wolf/pull/541
Author: @ABeltramo
Created: 10/14/2026
Status: 🔄 Open

Base: beta ← Head: feat/fedora-base-images


📝 Commits (6)

  • ea4ee16 feat: move Wolf to Fedora as the default base image
  • 18bc44b refactor: drop the Ubuntu image chain, Fedora is the only build
  • 53e5a10 fix: erase pipewire-pulseaudio when installing PulseAudio on Fedora
  • 233f66d fix: install boost-static for the static Boost link on Fedora
  • 4dbc14b ci: stabilize base image digests and serialize Docker builds
  • 055919a fix(devcontainer): drop apt-only zsh feature, port dev-setup to dnf

📊 Changes

14 files changed (+144 additions, -182 deletions)

View changed files

📝 .devcontainer/dev-setup.sh (+4 -10)
📝 .devcontainer/devcontainer.json (+5 -17)
📝 .github/workflows/docker-build.yml (+28 -18)
📝 .gitignore (+1 -0)
📝 docker/gpu-drivers.Dockerfile (+22 -26)
📝 docker/gstreamer.Dockerfile (+14 -42)
📝 docker/wolf.Dockerfile (+44 -43)
📝 docs/modules/apps/pages/index.adoc (+2 -2)
📝 docs/modules/apps/pages/pegasus.adoc (+1 -1)
📝 docs/modules/apps/pages/prismlauncher.adoc (+1 -1)
📝 docs/modules/dev/pages/manual_build.adoc (+1 -1)
📝 docs/modules/user/pages/configuration.adoc (+3 -3)
📝 src/moonlight-server/state/default/config.include.toml (+9 -9)
📝 src/moonlight-server/state/default/config.v7.toml (+9 -9)

📄 Description

What

Following games-on-whales/gow#362 (Fedora 44 gow images, now published on ghcr with :fedora tags), this moves Wolf to Fedora as the base image, replacing Ubuntu entirely.

  • Fedora Dockerfile chain (originally from #411's ci-fedora-images branch, never merged), now the canonical docker/wolf.Dockerfile, docker/gstreamer.Dockerfile, docker/gpu-drivers.Dockerfile:
    • modernized to current pins (Rust 1.96.0, gst-wayland-display 016b4fc, cargo-c 0.10.23, C++20)
    • extended with embedded PulseAudio parity (supervisor + pulseaudio via dnf, COPY supervisord.conf) — #411 predated embedded PA
  • Ubuntu Dockerfiles removed; single build chain in docker-build.yml, same tags as before (gpu-drivers:2025.05, gstreamer:1.26.7, wolf:beta/:stable/semver).
  • Config defaults (config.include.toml + config.v7.toml): gow app images point at ghcr.io/games-on-whales/<app>:fedora instead of :edge. The :fedora tag only comes from master pushes in gow (never PRs), so it tracks the latest Fedora 44 images.
  • Devcontainer builds from the Fedora wolf-builder stage; embedded PulseAudio image default → pulseaudio:fedora.
  • Docs + AGENTS.md updated.

Verification done

  • All gow :fedora images (9 apps + base, base-app, pulseaudio) confirmed published on ghcr via skopeo, amd64 (same as the Ubuntu variants today — no arm64 regression).
  • :fedora tag provenance checked: raw fedora tag only emitted on push events to master in gow's workflow.

Notes

  • This branch's CI run bootstraps the new Fedora gstreamer:1.26.7 / gpu-drivers:2025.05 (workflow passes BASE_IMAGE explicitly, so no chicken-and-egg in CI).
  • Fedora package availability (supervisor, pulseaudio, RPM Fusion bits) to be confirmed by the CI build — main reason this is a draft.
  • Possible follow-up: port #411's pr-images.yml for PR-scoped image builds.

Reuses ideas from #411 (dual Ubuntu/Fedora chain), simplified to Fedora-only.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/games-on-whales/wolf/pull/541 **Author:** [@ABeltramo](https://github.com/ABeltramo) **Created:** 10/14/2026 **Status:** 🔄 Open **Base:** `beta` ← **Head:** `feat/fedora-base-images` --- ### 📝 Commits (6) - [`ea4ee16`](https://github.com/games-on-whales/wolf/commit/ea4ee1644801377afcb4a705862716247d55b39c) feat: move Wolf to Fedora as the default base image - [`18bc44b`](https://github.com/games-on-whales/wolf/commit/18bc44b6036a7a60aeaf108280156a309cfa3b61) refactor: drop the Ubuntu image chain, Fedora is the only build - [`53e5a10`](https://github.com/games-on-whales/wolf/commit/53e5a10f51daba928794541bab8085bb5a1346e8) fix: erase pipewire-pulseaudio when installing PulseAudio on Fedora - [`233f66d`](https://github.com/games-on-whales/wolf/commit/233f66de2439055126021785488e56c756062a58) fix: install boost-static for the static Boost link on Fedora - [`4dbc14b`](https://github.com/games-on-whales/wolf/commit/4dbc14b1d668f851d0c14e6581de53cb83a24640) ci: stabilize base image digests and serialize Docker builds - [`055919a`](https://github.com/games-on-whales/wolf/commit/055919af5adf0196b30084839ef7d905bad62cd0) fix(devcontainer): drop apt-only zsh feature, port dev-setup to dnf ### 📊 Changes **14 files changed** (+144 additions, -182 deletions) <details> <summary>View changed files</summary> 📝 `.devcontainer/dev-setup.sh` (+4 -10) 📝 `.devcontainer/devcontainer.json` (+5 -17) 📝 `.github/workflows/docker-build.yml` (+28 -18) 📝 `.gitignore` (+1 -0) 📝 `docker/gpu-drivers.Dockerfile` (+22 -26) 📝 `docker/gstreamer.Dockerfile` (+14 -42) 📝 `docker/wolf.Dockerfile` (+44 -43) 📝 `docs/modules/apps/pages/index.adoc` (+2 -2) 📝 `docs/modules/apps/pages/pegasus.adoc` (+1 -1) 📝 `docs/modules/apps/pages/prismlauncher.adoc` (+1 -1) 📝 `docs/modules/dev/pages/manual_build.adoc` (+1 -1) 📝 `docs/modules/user/pages/configuration.adoc` (+3 -3) 📝 `src/moonlight-server/state/default/config.include.toml` (+9 -9) 📝 `src/moonlight-server/state/default/config.v7.toml` (+9 -9) </details> ### 📄 Description ## What Following games-on-whales/gow#362 (Fedora 44 gow images, now published on ghcr with `:fedora` tags), this moves Wolf to Fedora as the base image, replacing Ubuntu entirely. - **Fedora Dockerfile chain** (originally from #411's `ci-fedora-images` branch, never merged), now the canonical `docker/wolf.Dockerfile`, `docker/gstreamer.Dockerfile`, `docker/gpu-drivers.Dockerfile`: - modernized to current pins (Rust 1.96.0, gst-wayland-display `016b4fc`, cargo-c 0.10.23, C++20) - extended with embedded PulseAudio parity (`supervisor` + `pulseaudio` via dnf, `COPY supervisord.conf`) — #411 predated embedded PA - **Ubuntu Dockerfiles removed**; single build chain in `docker-build.yml`, same tags as before (`gpu-drivers:2025.05`, `gstreamer:1.26.7`, `wolf:beta`/`:stable`/semver). - **Config defaults** (`config.include.toml` + `config.v7.toml`): gow app images point at `ghcr.io/games-on-whales/<app>:fedora` instead of `:edge`. The `:fedora` tag only comes from master pushes in gow (never PRs), so it tracks the latest Fedora 44 images. - **Devcontainer** builds from the Fedora `wolf-builder` stage; embedded PulseAudio image default → `pulseaudio:fedora`. - Docs + AGENTS.md updated. ## Verification done - All gow `:fedora` images (9 apps + base, base-app, pulseaudio) confirmed published on ghcr via `skopeo`, amd64 (same as the Ubuntu variants today — no arm64 regression). - `:fedora` tag provenance checked: raw `fedora` tag only emitted on push events to master in gow's workflow. ## Notes - This branch's CI run bootstraps the new Fedora `gstreamer:1.26.7` / `gpu-drivers:2025.05` (workflow passes `BASE_IMAGE` explicitly, so no chicken-and-egg in CI). - Fedora package availability (`supervisor`, `pulseaudio`, RPM Fusion bits) to be confirmed by the CI build — main reason this is a draft. - Possible follow-up: port #411's `pr-images.yml` for PR-scoped image builds. Reuses ideas from #411 (dual Ubuntu/Fedora chain), simplified to Fedora-only. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
games-on-whales/wolf#511
No description provided.