Files
bc250-console/README.md
T
ckochandClaude Fable 5 6194756d2a Bake Sunshine remote admin + add one-command configured ISO builder
- Sunshine flatpak in first-boot list; autostarts with the console
  account's session (bc250-sunshine-autostart, honors CONSOLE_KID_USER)
- bc250-personalize: one-shot display names from /etc/bc250-console.conf
- build-console.sh + console.env(.example): fill in usernames/passwords/
  display names, get a fully personalized ISO — no post-install steps
  beyond per-account logins. Generated files git-ignored (credentials)
- Docs: Moonlight is the remote-admin path; RDP marked blocked by the
  mutter cursor-metadata screencast crash on GFX1013

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 10:51:57 -04:00

3.7 KiB

bc250-console

A custom Bazzite GNOME (bootc) image for the AMD BC-250, built as a kid-friendly couch gaming console with remote parent administration. Recipes build with BlueBuild; the installer ISO comes from bootc-image-builder; installed consoles update over-the-air from this Gitea's container registry.

Image: git.lazypugs.com/ckoch/bc250-console-gnome:latest Recipe: recipes/bc250-console-gnome.yml

What it adds on top of bazzite-gnome:stable

Area Change
GPU cyan-skillfish-governor-smu (BC-250 DVFS governor, from the filippor COPR), enabled
Memory ttm.pages_limit / ttm.page_pool_size kargs so the GPU can use the full 16 GB shared GDDR6
Remote admin openssh-server (enabled); Sunshine auto-serves the kid's session to Moonlight; tailscaled enabled. (RDP via bc250-remote-setup exists but is blocked by a mutter/GFX1013 crash)
Console behavior All suspend paths masked, no screen lock/dim, GNOME animations off — always on, always reachable
Kid experience Steam Big Picture autostarts for the kid account only
Apps First-boot flatpaks: ProtonUp-Qt, Heroic, RetroDECK, Prism Launcher (Minecraft) — Steam, Firefox, auto-updates already in the Bazzite base
Cloud gaming GeForce NOW native Linux app (beta) auto-installed on first boot from NVIDIA's flatpak repo — note the BC-250 has no hardware video decode, so streams decode on CPU; keep to 1080p
Fixes hhd.service masked (crash-loops on BC-250)
Docs Parent manual baked at /usr/share/doc/bc250-console/OPERATIONS.md

Accounts

Build with build-console.sh + your console.env to bake real usernames, passwords, and display names directly into the ISO (see BUILD-CONSOLE.md). Without it, the ISO bakes the placeholder users from iso-config.toml: parent (admin/wheel) and kid (standard), passwords to change on first login. The kid's account can be renamed post-install (see OPERATIONS.md) — the Big Picture autostart follows CONSOLE_KID_USER in /etc/bc250-console.conf.

⚠️ The installer wipes the first disk with no prompts. Don't boot it on a machine whose disk you care about.

Documentation

  • BUILD-CONSOLE.md — build the image, generate the ISO, publish OTA updates (verified podman and docker paths, with workarounds)
  • OPERATIONS.md — day-2 admin: connecting, installing games remotely, updates/rollback, GPU tuning, health checks
  • WIRING.md — PSU/mains wiring, J1000 pinout, power-switch design (AC rocker + AUTO_PWRON), fans, first power-on
  • BIOS-FLASH.md — backup + flash the modded firmware via the J4004 header, then the VRAM/IOMMU settings (ROMs are local-only, not in this repo)

Hardware prerequisites (on the board, not in the image)

Modded BIOS (see mothenjoyer69/bc250-documentation), then BIOS settings: 512 MB dynamic VRAM, IOMMU disabled, auto power-on.

Credits

Forked from 62fixolab/Latest-Bazzite-AMD-BC-250-Patched-Images, which builds on vietsman's patched images and filippor/cyan-skillfish-governor, on top of ublue-os/bazzite. The 40-CU experimental tooling from upstream is intentionally not included — this image stays on the stable 24-CU configuration.

MIT licensed — see LICENSE and NOTICE.