protonscr

Run application in Proton prefix option

steamopen Feature RequestSteam clientProton
ValveSoftware/steam-for-linux#5766 · opened 2018-09-16 by kisak-valve · updated 2026-07-27 · 18 comments · github
2 matching comments, n / p to jump
Kkisak-valve 2018-09-16 github

Issue transferred from https://github.com/ValveSoftware/Proton/issues/1485.
@4LT posted on 2018-09-16T13:27:21:

Feature Request

I confirm:

  • [x] that I haven't found another request for this feature.
  • [x] that I have checked whether there are updates for my system available that
    contain this feature already.

Description

I'm requesting an easier means of running utilities under Proton. I think a good solution would be to have Steam auto-detect the file type of programs added through 'Add a non-Steam game' and run them under proton if they are Windows executables.

Justification

Some games provide utilities that need wine/proton to run, such as Worms Armageddon's sound bank editor. Currently, the only way to get at them (that I know of) is to take an existing steam game and set its launch options to something like /path/to/proton waitforexitandrun /path/to/utility && echo %command% >/dev/null. This is cumbersome, and requires swapping launch options every time you want to switch between the game and the utility. Additionally, trying to run Proton as a non-steam game does not work because it does not run under the same environment as it does when run from a steam game's launcher.

Risks

  • Determining which Proton installation to use when installed on multiple paths.
Ttatsujb 2018-09-29 github

being only able to launch games through steam wouldn't be enough though.

some game's require utilities that run them while passing them dynamic arguments.

Said argument that can't be passed to steam for steam to pass down to the game, ...that I know of.

So it needs to be also possible to pass through the command-line-only version of Proton as well.

GGTX64 2019-04-21 github

I am envisioning this feature as a way to install external DLC, so thumbs up!

For example, in Mass Effect and Mass Effecvt 2, DLC was available as a downloadable .exe, which then, to my understanding, 'patched' the game. (It was not available from within Steam's DLC section.)

I would like to be able to run these DLC .exe's against the Steam Proton pfx, in order for the material to be available.

NOTE: When I searched for other requests to match what I am looking for, they were closed and pointed back to here. Apologies if this is not the correct place.

SSparrowOchon 2019-06-27 github

If you switch from waitforexitandrun to run you would get this /path/to/proton run /path/to/utility && echo %command% >/dev/null. Which allows you to run multiple programs in the prefix at the same time. I also wrote a small script to get this working temporarily without having to touch the steam-startup options as we wait for an official update.

EEvernow 2019-11-05 github

If you switch from waitforexitandrun to run you would get this /path/to/proton run /path/to/utility && echo %command% >/dev/null. Which allows you to run multiple programs in the prefix at the same time. I also wrote a small script to get this working temporarily without having to touch the steam-startup options as we wait for an official update.

I just tried this script and I do not believe it works anymore, opened an issue here: https://gitlab.com/SparrowOchon/proton-exec/issues/1

Please take a look at it when you can

SSparrowOchon 2019-11-05 github

@Evernow tested script still works, the issue is probably with the pathing of your steam compatdata. Continuing discussion on gitlab to avoid hijacking this.

Ssmirgol 2020-11-08 github

I too ran into this issue, where I need to run an application that is located in a games proton prefix.
The only way right now that I knew of is to do this in the terminal, set the WINEPREFIX to the games proton prefix, run the correct proton wine64 binary and launch the app. That is not an ideal solution and I think it bypasses some things proton is doing when being launched via steam.

What I really would love to see is, being able to add a non-steam application to steam (that is possible right now), and being able to set in the launcher options to run it in a specific proton prefix - what this ticket is basically about.

Nnstgc 2020-12-16 github

I haven't tried this, but would it be possible to replace the game's executable with a bash script that launches all relevant programs?

Bberarma 2021-04-09 github

I've found an issue closely related to this. rFactor 2 is a racing game that ships a game server within the game but it has to be run separately and it doesn't have a Steam launcher.

The game server uses port 27013 as configured for Http communication, and by the documentation two more ports are open by Steam after this one, UDP 27014 and 27015.

When I run the game server outside of Steam or with a non-Steam game launcher these Steam ports aren't created and thus the game can't find the server locally. But if I launch the game server using the default game launcher by changing the launcher options or swapping the executables the ports are created.

I've tried with proton-exec from the command line and from a non-steam game launcher but it doesn't create the ports either. It seems the multiplayer integration breaks unless the default game launcher is used.

On Windows the game server can be launched outside of Steam and it works.

AAlex-Bujorianu 2021-12-14 github

I too would like to see a solution to this problem. My preferred solution would be to have a right click menu in the game’s entry in the Steam Library, named “Run .exe…” or perhaps “Run .exe inside game installation…” A normal user probably doesn’t know what a Wineprefix is, but there needs to be some indication that Proton games are sandboxed and have their own virtual “C:” drives.

For Dragon Age: Origins, I had to run Proton from the command line:

#!/bin/bash
cd /mnt/2fc5a9a8-67ad-479f-ab77-2ca48c29ac8c/SteamLibrary2/steamapps/compatdata/47810/pfx
STEAM_COMPAT_DATA_PATH="/mnt/2fc5a9a8-67ad-479f-ab77-2ca48c29ac8c/SteamLibrary2/steamapps/compatdata/47810" WINEPREFIX=$PWD \
    /home/alex/.steam/root/steamapps/common/Proton\ 5.13/proton run \
    /mnt/2fc5a9a8-67ad-479f-ab77-2ca48c29ac8c/SteamLibrary2/steamapps/common/Dragon\ Age\ Ultimate\ Edition/bin_ship/DAUpdater.exe
Bbidzapfc 2022-04-10 github

I would like to add that this feature is a must for Genie Scout for Football Manager series. I cant run it any other way. Would be nice to have it integrated into steam

TThisNekoGuy 2022-04-29 github

This is probably obvious, but this issue not being implemented affects a wide array of community mod tools for various games; it would be great to get user-friendly implementation for this, including fixes for .NET 5 and 6, since many of such tools are written in C#.

AAlex-Bujorianu 2022-04-30 github

This is probably obvious, but this issue not being implemented affects a wide array of community mod tools for various games; it would be great to get user-friendly implementation for this, including fixes for .NET 5 and 6, since many of such tools are written in C#.

Tell me about it. Some modding tools have to be run from within a Windows VM because the .NET stuff just doesn’t play nice with Proton.

Bbjoern-tantau 2022-08-14 github

This has become evident with the Steam Deck. When you install a game with an external launcher you would create three prefix folders where only one was needed.

Let's say I run the installer.exe of a launcher by adding it as a non-Steam game. It would create prefix1 and install the launcher there.

If I then add the launcher.exe as a non-Steam game it would create prefix2 and possibly put any game data I downloaded with the launcher there.

If I then add a game's exe as a non-Steam game it would create prefix3. Launching it could potentially fail if it needs dependencies from the launcher that were installed into prefix1.

A quick solution would be if Steam could detect that it's starting a file in a compdata folder and adjust the STEAM_COMPAT_DATA_PATH accordingly.

CChaosRifle 2024-09-24 github

this would help for modded games, or games that use 3rd party applications. DCS and IL2 use SRS on the side that can hook into the game, and all sim games using head tracking software will use this. Force Feedback hardware will use external software too.

Wwyldlock 2025-05-27 github

Also for those using text hooking for things such as Japanese study, you need the hooking program to run in the same memory space as the game to function, so same issue - it needs to run inside the same proton environment so it can see the memory registers.

NNightWatchman 2025-08-10 github

I am writing in support of a feature such as this one, that would facilitate games that involve the use of additional utility applications. This would be a major boon for flight simulation especially, now that MSFS 2024 is eminently runnable using Steam/Proton. Everything from planes, airports, flight trackers, EFB applications, even economic engines such as OnAir Company require that you run an installer and/or utility program that expects to find your installation of MSFS.

NNodokaHanamura 2026-05-30 github

I am writing in favor of this, as certain games such as ARMA 3 use common mods such as ACRE and TFAR that require use of Teamspeak 3, running within the Proton Prefix to handle RPC calls and communication between ARMA and Teamspeak.

Cchilversc 2026-07-27 github

It would be nice to have this available as a command line helper, similar to using protontricks, but with the proper Steam environment for launching one-off tools (or tools that often need different command line arguments).

It would also be nice if I could add custom launch options to the drop down that can include setting:

  • Environment Variables
  • Arguments
  • Optionally changing the command itself

This would be very useful for games like Fallout and Skyrim when using tools such as Mod Organizer where you have to launch the game through the tool (which isn't an issue on Windows). At the moment there's a bit of a hack that involves adding the command to the game's launch options, but that gets reverted every time Steam validates the game (which is pretty often).