Home

Awesome

asdf-protonge Build

Unofficial asdf plugin for GloriousEggroll custom Proton distribution.

Installation

Install asdf-vm and add this repo as a plugin:

asdf plugin-add protonge https://github.com/augustobmoura/asdf-protonge.git

Optional tools:

Configuration

Configuration of the plugin is done by environment variables, you can set them by default in the rc file of your shell of preference (.bashrc, .zshrc, .profile, etc.).

VariableDescription
ASDF_PROTONGE_STEAM_COMPAT_DIRdirectory in which the custom protons will be installed. Defaults to ~/.steam/root/compatibilitytools.d. See tip below
GITHUB_API_TOKENGH token used for downloading the tarballs. This is useful because Github tends to rate limit API calls

[!TIP] If you are using flatpak's Steam you need to set the ASDF_PROTONGE_STEAM_COMPAT_DIR variable to: ~/.var/app/com.valvesoftware.Steam/data/Steam/compatibilitytools.d/

Usage

You can install any pre-compiled release from the Github release page.

Examples of versions supported by asdf

# Install latest version available
asdf install protonge latest

# Install latest version starting with prefix
asdf install protonge latest:GE-Proton8

# Install specific version
asdf install protonge GE-Proton9-18

[!NOTE] asdf ref versions (build from source) are not supported yet. This will not work:

asdf install protonge ref:master

Managing already installed versions

If you already have custom installations in your compatibilitytools.d directory you can start managing them with asdf-protonge by running:

asdf protonge manage $version

An useful one-liner to manage all already installed versions is:

ls ~/.steam/root/compatibilitytools.d | xargs asdf protonge manage

How it works

We are basically doing the instructions for manual installation:

  1. Download the tarball and checksum from the GitHub releases page
  2. Validate the checksum
  3. Extract the tarball to the compatibilitytools.d directory
  4. Symlink the extracted directory to the asdf directory

We manage installed versions by symlinking the extracted directory to $ASDF_DIR/installs/protonge/$version, that way we can prevent double installations and manage uninstallations with asdf.

asdf uninstall protonge $version

TODO