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
20920 is the game id.
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 \ ./drive_c/flawless/FlawlessWidescreen.exe
Someone in the comments below created a bash script that makes this easier: https://gist.github.com/michaelbutler/f364276f4030c5f449252f2c4d960bd2?permalink_comment_id=3921629#gistcomment-3921629
The two errors mentioned in the comments above I solved with some of the following. ie: the location of STEAM_COMPAT_CLIENT_INSTALL_PATH, and setting WINEPREFIX.
and reinstalling the stuff gstreamer complains about seems to fix its symlinks
sudo apt-get install --reinstall gstreamer1.0-alsa gstreamer1.0-libav gstreamer1.0-plugins-bad gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-ugly gstreamer1.0-pulseaudio libgstreamer-plugins-bad1.0-0 libgstreamer-plugins-base1.0-0 libgstreamer-plugins-good1.0-0 libgstreamer1.0-0