Adding a custom Proton build to Steam

June 14, 2019 - Reading time: 3 minutes

I needed to revert back to previous Proton build to do some testings, so I figured out how to download and add any Proton version manually to Steam.

Go to Steam console steam://nav/console and download with following command (guide here https://steamcommunity.com/sharedfiles/filedetails/?id=889624474)

download_depot <appid> <depotid> [<target manifestid>] [<delta manifestid>] [<depot flags filter>] : download a single depot

Example for Proton 4.2-5:

Download the specific build

download_depot 1054830 1054831 325796197665791634

at the end of download process, locate the download location logged in the console (here ~/.local/share/Steam/ubuntu12_32/steamapps/content/app_1054830/depot_1054831/)

Create the ~/.steam/root/compatibilitytools.d/ folder if it doesn't exist yet, and create a sub folder in it to import your custom version of Proton to Steam, in this example it will be "prouton45"

mkdir  ~/.steam/root/compatibilitytools.d/
mkdir  ~/.steam/root/compatibilitytools.d/prouton45

Move the content of ~/.local/share/Steam/ubuntu12_32/steamapps/content/app_1054830/depot_1054831/ to ~/.steam/root/compatibilitytools.d/prouton45

Ccreate the VDF file at ~/.local/share/Steam/compatibilitytools.d/prouton45/compatibilitytool.vdf that will make this folder recognized by Steam according to the Proton GitHub.

"compatibilitytools"
{
  "compat_tools"
  {
    "Prouton45" // Internal name of this tool
    {
      // Can register this tool with Steam in two ways:
      //
      // - The tool can be placed as a subdirectory in compatibilitytools.d, in which case this
      //   should be '.'
      //
      // - This manifest can be placed directly in compatibilitytools.d, in which case this should
      //   be the relative or absolute path to the tool's dist directory.
      "install_path" "."

      // For this template, we're going to substitute the display_name key in here, e.g.:
      "display_name" "Prouton45"

      "from_oslist"  "windows"
      "to_oslist"    "linux"
    }
  }
}

Start Steam and select "Prouton45" in the available Proton version (in Settings or per game).