Skip to content

Instantly share code, notes, and snippets.

Last active September 23, 2023 22:17
  • Star 42 You must be signed in to star a gist
  • Fork 4 You must be signed in to fork a gist
Star You must be signed in to star a gist
What would you like to do?
How to run another .exe in an existing proton wine prefix

Running games through Steam's Proton is great. But what if there is a secondary exe or configuration application bundled with the game? How can you launch it if Steam itself only launches the game?

Simply run this command in a terminal:

cd /path/to/steam/steamapps/compatdata/20920/pfx

STEAM_COMPAT_DATA_PATH="/path/to/steam/steamapps/compatdata/20920" WINEPREFIX=$PWD \
    "$HOME/.steam/root/steamapps/common/Proton 5.0/proton" run ./drive_c/path/to/custom_application.exe

Where 20920 is the game id.

First you cd (change directory) to the proton prefix in question. If you don't have any custom steam libraries it likely will all be within your home directory. To find it easier you may run find . | grep compatdata from ~/ and when you find it, cd to it.

Real world example:

cd /media/michael/SSDGAMES/steam/steamapps/compatdata/20920/pfx

STEAM_COMPAT_DATA_PATH="/media/michael/SSDGAMES/steam/steamapps/compatdata/20920" WINEPREFIX=$PWD \
    "/home/michael/.steam/root/steamapps/common/Proton 5.0/proton" run \


Someone in the comments below created a bash script that makes this easier:

Copy link

maybe its could help, its in pt-br but you can follow the steps, I did this to launch another exe before launch the game here

Good thing I'm a Brazilian! Obrigado

Copy link

cprn commented Apr 5, 2023

Just wanted to say Protontricks already does that.

Either use a dedicated script that comes with Protontricks and displays a list of all wine prefixes known to Steam letting you select the right one:

protontricks-launch ~/Downloads/my.exe

or run a command that sets environment variables for you:

protontricks <steam_appid> shell
# whatever you run next runs in correct proton prefix, e.g.:
proton ~/Downloads/my.exe

Copy link

Proton6959 commented Jun 15, 2023

Doesn't work for me. I get the following error messages:
01b8:err:fsync:fsync_init Server is running with WINEFSYNC but this process is not, please enable WINEFSYNC or restart wineserver.


Traceback (most recent call last):
  File "/usr/bin/protontricks-launch", line 33, in <module>
    sys.exit(load_entry_point('protontricks==1.7.0', 'console_scripts', 'protontricks-launch')())
  File "/usr/lib/python3/dist-packages/protontricks/cli/", line 18, in cli
  File "/usr/lib/python3/dist-packages/protontricks/cli/", line 143, in wrapper
    return cli_func(self, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/protontricks/cli/", line 152, in main
  File "/usr/lib/python3/dist-packages/protontricks/cli/", line 143, in wrapper
    return cli_func(self, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/protontricks/cli/", line 264, in main
    proton_app = find_proton_app(
  File "/usr/lib/python3/dist-packages/protontricks/", line 624, in find_proton_app
    tool_app = find_steam_compat_tool_app(
  File "/usr/lib/python3/dist-packages/protontricks/", line 537, in find_steam_compat_tool_app
    tool_appid = get_tool_appid(compat_tool_name, appinfo_path)
  File "/usr/lib/python3/dist-packages/protontricks/", line 418, in get_tool_appid
    vdf_sections = get_appinfo_sections(appinfo_path)
  File "/usr/lib/python3/dist-packages/protontricks/", line 385, in get_appinfo_sections
    raise SyntaxError("Invalid file magic number")
SyntaxError: Invalid file magic number

Any idea how I can fix this?

Copy link

cprn commented Jun 15, 2023


enable WINEFSYNC or restart wineserver

Copy link

It is enabled. This happens after I start the game and then run protontricks-launch ~/Downloads/my.exe in the terminal.

Copy link

cprn commented Jun 17, 2023

@Proton6959 If the exec file is supposed to be run in the same process layer as the game then try one of the other methods - if it doesn't work, then IDK man, sorry. Either this:

protontricks-launch --appid <steam_appid> ~/Downloads/my.exe

or this:

protontricks <steam_appid> shell   # use Steam appid of the game
path/to/your/proton ~/Downloads/my.exe

Maybe there's something in protontricks-launch --help that'll help you.

Copy link

hey fellows, try steamtinkerlaunch, its more simple to use another .exe inside steam.....

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment