Skip to main content

Protontricks

image Coverage Status Test Status

A wrapper that runs Winetricks commands for Proton enabled games among other useful features, requires Winetricks.

This is a fork of the original project created by sirmentio. The original repository is available at Sirmentio/protontricks.

What is it?

This is a wrapper script that allows you to easily run Winetricks commands for Steam Play/Proton games among other common Wine features, such as launching external Windows executables. This is often useful when a game requires closed-source runtime libraries or applications that are not included with Proton.

Requirements

  • Python 3.6 or newer
  • Winetricks
  • Steam
  • YAD (recommended) or Zenity. Required for GUI.

Usage

Protontricks can be launched from desktop or using the protontricks command.

Command-line

The basic command-line usage is as follows:

# Find your game's App ID by searching for it
protontricks -s 

# or by listing all games
protontricks -l

# Run winetricks for the game.
# Any parameters in  are passed directly to Winetricks.
# Parameters specific to Protontricks need to be placed *before* .
protontricks  

# Run a custom command within game's installation directory
protontricks -c  

# Run the Protontricks GUI
protontricks --gui

# Launch a Windows executable using Protontricks
protontricks-launch 

# Launch a Windows executable for a specific Steam app using Protontricks
protontricks-launch --appid  

# Print the Protontricks help message
protontricks --help

Since this is a wrapper, all commands that work for Winetricks will likely work for Protontricks as well.

If you have a different Steam directory, you can export $STEAM_DIR to the directory where Steam is.

If you'd like to use a local version of Winetricks, you can set $WINETRICKS to the location of your local winetricks installation.

You can also set $PROTON_VERSION to a specific Proton version manually. This is usually the name of the Proton installation without the revision version number. For example, if Steam displays the name as Proton 5.0-3, use Proton 5.0 as the value for $PROTON_VERSION.

Wanna see Protontricks in action?

Desktop

Protontricks comes with desktop integration, adding the Protontricks app shortcut and the ability to launch external Windows executables for Proton apps. To run an executable for a Proton app, select Protontricks Launcher when opening a Windows executable (eg. EXE) in a file manager.

The Protontricks app shortcut should be available automatically after installation. If not, you may need to run protontricks-desktop-install in a terminal to enable this functionality.

Troubleshooting

For common issues and solutions, see TROUBLESHOOTING.md.

Installation

You can install Protontricks using a community package, Flatpak or pipx. pip can also be used, but it is not recommended due to possible problems.

If you're using a Steam Deck, Flatpak is the recommended option. Open the Discover application store in desktop mode and search for Protontricks.

If you're using the Flatpak version of Steam, follow the Flatpak-specific installation instructions instead.

Community packages allow easier installation and updates using distro-specific package managers. They also take care of installing dependencies and desktop features out of the box, making them the recommended option if available for your distribution.

Community packages are maintained by community members and might be out-of-date compared to releases on PyPI. Note that some distros such as Debian / Ubuntu often have outdated packages for either Protontricks or Winetricks. If so, install the Flatpak version instead as outdated releases may fail to work properly.

Packaging status

Protontricks is available on the Flathub app store:

To use Protontricks as a command-line application, add shell aliases by running the following commands:

echo "alias protontricks='flatpak run com.github.Matoking.protontricks'" >> ~/.bashrc
echo "alias protontricks-launch='flatpak run --command=protontricks-launch com.github.Matoking.protontricks'" >> ~/.bashrc

You will need to restart your terminal emulator for the aliases to take effect.

The Flatpak installation is sandboxed and only has access to the Steam installation directory by default. You will need to add filesystem permissions when using additional Steam library locations or running external Windows applications. See here for instructions on changing the Flatpak permissions.

pipx

You can use pipx to install the latest version on PyPI or the git repository for the current user. Installing Protontricks using pipx is recommended if a community package doesn't exist for your Linux distro.

pipx does not install Winetricks and other dependencies out of the box. You can install Winetricks using the installation instructions provided by the Winetricks project.

pipx requires Python 3.6 or newer.

You will need to install pip, setuptools and virtualenv first. Install the correct packages depending on your distribution:

  • Arch Linux: sudo pacman -S python-pip python-pipx python-setuptools python-virtualenv

  • Debian-based (Ubuntu, Linux Mint): sudo apt install python3-pip python3-setuptools python3-venv pipx

  • Fedora: sudo dnf install python3-pip python3-setuptools python3-libs pipx

  • Gentoo:

    sudo emerge -av dev-python/pip dev-python/virtualenv dev-python/setuptools
    python3 -m pip install --user pipx
    ~/.local/bin/pipx ensurepath
    

Close and reopen your terminal. After that, you can install Protontricks.

pipx install protontricks

To enable desktop integration as well, run the following command after installing Protontricks

protontricks-desktop-install

To upgrade to the latest release:

pipx upgrade protontricks

To install the latest development version (requires git):

pipx install git+https://github.com/Matoking/protontricks.git
# '--spec' is required for older versions of pipx
pipx install --spec git+https://github.com/Matoking/protontricks.git protontricks

You can use pip to install the latest version on PyPI or the git repository. This method should work in any system where Python 3 is available.

Note that this installation method might cause conflicts with your distro's package manager. To prevent this, consider using the pipx method or a community package instead.

You will need to install pip and setuptools first. Install the correct packages depending on your distribution:

  • Arch Linux: sudo pacman -S python-pip python-setuptools
  • Debian-based (Ubuntu, Linux Mint): sudo apt install python3-pip python3-setuptools
  • Fedora: sudo dnf install python3-pip python3-setuptools
  • Gentoo: sudo emerge -av dev-python/pip dev-python/setuptools

To install the latest release using pip:

sudo python3 -m pip install protontricks

To upgrade to the latest release:

sudo python3 -m pip install --upgrade protontricks

To install Protontricks only for the current user:

python3 -m pip install --user protontricks

To install the latest development version (requires git):

sudo python3 -m pip install git+https://github.com/Matoking/protontricks.git

Metadata

Release files for protontricks 1.11.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for protontricks 1.11.0
File Size Uploaded
protontricks-1.11.0.tar.gz 165.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for protontricks 1.11.0
File Interpreter ABI Platform
protontricks-1.11.0-py3-none-any.whl Python 3 none any Details

Total release size: 228.1 kB

Release files / protontricks-1.11.0.tar.gz

Download URL protontricks-1.11.0.tar.gz
Size 165.8 kB
Tags Source
SHA-256 checksum
How to use checksums
ad0ec55bf8251579c52c896c3c6d99880d9614ae53e16b5e1f7ca3b9262fc2a7
BLAKE2b-256 checksum
How to use checksums
74c811f1aebf64a587b5313d9d20164e9ec647e85cc5c881c2648ca95a5596d0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.6

Release files / protontricks-1.11.0-py3-none-any.whl

Download URL protontricks-1.11.0-py3-none-any.whl
Size 62.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
adc33ce1dc40f213eb0fe98cfbe019fb2420633b4f202a5bc817d40dbc5534b0
BLAKE2b-256 checksum
How to use checksums
9c943ce82e148a719003b8e332d84412c6fe580bc82b3e9601cd5fb0ba015aa9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.6

Release history Release notifications | RSS feed

1.14.1

2 release files

1.14.0

2 release files

1.13.1

2 release files

1.13.0

2 release files

1.12.0

2 release files

1.11.1

2 release files

This release

1.11.0 This release

2 release files

1.10.4

2 release files

1.10.2

2 release files

1.10.1

2 release files

1.10.0

2 release files

1.9.2

2 release files

1.9.1

2 release files

1.9.0

2 release files

1.8.2

2 release files

1.8.1

2 release files

1.8.0

2 release files

1.7.0

2 release files

1.6.2

2 release files

1.6.1

2 release files

1.6.0

2 release files

1.5.2

2 release files

1.5.1

2 release files

1.5.0

2 release files

1.4.4

2 release files

1.4.3

2 release files

1.4.2

1 release file

1.4.1

1 release file

1.4

1 release file

1.3.1

1 release file

1.3

1 release file

1.2.5

1 release file

1.2.4

1 release file

1.2.3

1 release file

1.2.2

1 release file

1.2.1

1 release file

1.2

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page