Skip to content

Conversation

@ebkr
Copy link
Owner

@ebkr ebkr commented Dec 18, 2025

Steam Deck / Flatpak Support

This PR adds Flatpak building potential to r2modman which allows native installing to the deck (and running in Game Mode).

Status

As of now, this branch can be built to a Flatpak image and it will run.

It has currently broken launching of every other platform. Works great if you're on Steam Deck - not if you're a regular user.

Differences

Flatpak has an absolute ton of restrictions. To work around this for Flatpak-based installs we now do the following:

  • Invoke Steam via steam://run/<appid>.
    • A small benefit of this is that technically* you don't need to set the Steam directory.
    • It'll probably still ask you to though.
  • Require a separate launch wrapper script (part of this PR).
    • Arguments are consumed as part of a text file and not passed via CLI.
    • This is again, a limitation of Flatpak and a hacky workaround.

Work remaining

  • Fix all Game Runners
  • Prompt users to change launch arg to new web wrapper.
  • Flatpak detection to switch arg used on the copy/paste portion of the screen
  • Disable launch args if Flatpak and platform is Steam
  • Include WINEDLLOVERRIDES="winhttp=n,b" (and version[.dll] when appropriate) as an environment variable override as part of the command

Future work

  • Inform the user that their existing arguments need to be re-applied in a new format
    • Modal with a new way to enter keyValue launch arguments
      • Key/Value line item
      • Single command line item
    • New setting entry to record keyValueAdditionalLaunchArguments
    • On save, wipe the old launch args setting value

ebkr and others added 6 commits December 29, 2025 16:01
- Game instructions are now passed as lists
  - All game runners need to support this (currently only SteamGameRunner_Linux.ts does)
- Additional launch arguments setting needs to be reworked to implement a key/value approach
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.

2 participants