Skip to content

fix(steam): launch Big Picture via -bigpicture instead of -tenfoot -steamdeck (#28) - #58

Merged
hikaps merged 1 commit into
developfrom
feature/steam-bigpicture
Aug 20, 2026
Merged

fix(steam): launch Big Picture via -bigpicture instead of -tenfoot -steamdeck (#28)#58
hikaps merged 1 commit into
developfrom
feature/steam-bigpicture

Conversation

@hikaps

@hikaps hikaps commented Aug 20, 2026

Copy link
Copy Markdown
Owner

Problem

On non-SteamOS distros (CachyOS, #28), the builtin Steam preset launch steam -tenfoot -steamdeck forces Steam's Deck first-run setup (language → network → update). That update step fails with "unable to download the required update" and blocks Big Picture entirely.

Verified with the reporter: plain steam -steamdeck opens fine, but the session launch (steam -tenfoot -steamdeck inside gamescope) hits the update error. Launching a Steam game via its desktop file (steam steam://rungameid/N — no Deck flags) opens Big Picture and plays games with no error.

Change

Replace the launch flags with Steam's documented Big Picture flag:

steam -tenfoot -steamdeck  →  steam -bigpicture

Applied at all 4 hardcoded sites (PresetManager builtin preset + flatpakArgs, GamescopeInstance fallback, SessionRunner fallback) plus CouchPlayHelper.h doc comment and the tests covering them.

Why this is safe

  • -bigpicture opens the same Big Picture UI without the Deck first-run OOBE.
  • Original reason for -steamdeck was "proper Proton prefix handling" (Deck-mode); the reporter's no--steamdeck game launch played games fine, so the practical delta is low.
  • CouchPlay's own steamAppId launch mode was already removed — steamAppId is only used for override paths now, so nothing else depends on Deck-mode flags.

Verification

  • cmake --build clean (dev-box, Qt 6.10.2)
  • 17/18 tests pass; only test_monitormanager fails, and it's environmental (headless container: qt.qpa.wayland: There are no outputs → placeholder screen 0×0). All touched test files (test_gamescopeinstance, test_presetmanager, test_couchplayhelper) pass.

…teamdeck

Replace the -tenfoot -steamdeck flag combo, which triggers the Steam Deck
first-run OOBE (whose update step fails on non-SteamOS distros like CachyOS,
issue #28), with -bigpicture. Same Big Picture UI, no Deck bootstrap.

- Centralize the steam default command in PresetManager::defaultSteamCommand()
- Version the Flatpak launch cache (FLATPAK_CACHE_VERSION=2): stale caches
  carrying the old command are ignored and rewritten, so existing installs
  pick up the new flags instead of being pinned to -tenfoot -steamdeck forever
- Regression test: stale v1 cache does not override the builtin command
@hikaps
hikaps force-pushed the feature/steam-bigpicture branch from d902584 to fcba6d5 Compare August 20, 2026 21:28
@hikaps
hikaps merged commit cf6427e into develop Aug 20, 2026
1 check passed
@hikaps
hikaps deleted the feature/steam-bigpicture branch August 20, 2026 21:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant