Add SteamOS distro #23
No reviewers
Labels
No labels
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
run-ci
wontfix
No milestone
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
gh-ps5-linux/ps5-linux-image!23
Loading…
Reference in a new issue
No description provided.
Delete branch "add-steamos"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Adds
--distro steamosas a build target. Same pattern asbazzite-deck/batocera:distros/steamos/build-rootfs.shfetches Valve's Steam Deck recovery image, extracts the rootfs into\$CHROOT, swaps in ourlinux-ps5kernel, rebuilds initramfs for PS5 amdgpu.PS5-specific fixes baked into the rootfs
/usr/bin/steamos-session-selectwith a direct SDDM-conf writer + sddm restart. The vendored helper goes throughsteamosctl/steamos-manager, whose Deck-hardware paths silently no-op on PS5 — UI stays at "Switching to Desktop..." with no actual swap. A small dbus monitor (steam-session-switch-listener.py) catches the Big Picture button signal.-steamos3/-steampal: those trigger Steam's A/B update reboot loop on a non-Deck box. Dropped in favor of the dbus listener./etc/fstab: comments out theby-partsetsA/B atomic mount entries (those device paths don't exist on a flat-rootfs flash) and appends aLABEL=-based/efimount so the FAT boot partition comes up. Required forps5-iw620-firmware.serviceto find the WLAN blob.amdgpu.dpm=0 amdgpu.gpu_recovery=0.modprobe.dalone isn't enough — amdgpu loads before the rootfs conf is read, so the cmdline is the only reliable path. Without it, Switch-to-Desktop produces a black screen on PS5 HDMI./home/deckownership: recovery image leaves itroot:root→ Plasma can't write~/.configon first launch.deck:deckpassword — so the box is reachable for iteration.reboot/powerofffor the deck user to break Steam's update reboot loop on first boot.rm -rfpath (assumes Deck factory layout, wipes/home/deck/.local).Test plan
mlan0brings up internal WiFi afterps5-iw620-firmware.servicestages the blobFiles
distros/steamos/build-rootfs.sh(646 lines)distros/steamos/README.mddistros/steamos/return-to-gaming-mode.desktopdistros/steamos/steam-session-switch-listener.{py,service}build_image.sh:steamos→FORMAT="arch"(useslinux-ps5pkg.tar.zst).github/workflows/build-image.yml:steamosadded tooptions:+distros=list