Skip to content

Installation

360900 edited this page Aug 2, 2026 · 2 revisions

There are a number of ways to install TinkerGame. Remember to restart Steam after any of these installation methods, as Steam will not refresh the list of available Compatibility Tools until it has been restarted.

Table of Contents


Package Manager

The preferred method is to use the package provided by your package manager, though they may not always be available or up-to-date. Some distributions offer either official or community maintained TinkerGame packages. Several are listed below, but you might find other community packages in the wild as well.

Packaging status

Don't forget to add TinkerGame as a Compatibility Tool, as this is the preferred way of using TinkerGame with Proton.

ProtonUp-Qt

It is possible to install TinkerGame for desktop and Steam Deck via ProtonUp-Qt, a frontend for installing and managing Steam compatibility tools. You can install the latest stable release of TinkerGame out of the box, but for the latest Git release you will need to click the "About" button and enable the "Advanced Mode" option. ProtonUp-Qt will manage adding TinkerGame to your PATH for you as well.

On Steam Deck, TinkerGame will automatically update to the latest Git, but you are free to enable this option and install TinkerGame Git anyway.

See the dedicated ProtonUp-Qt wiki page for a list of features and how to use TinkerGame as a launch option for native games when installed via ProtonUp-Qt.

Dependencies

Please ensure before attempting to install that you have met all of TinkerGame's hard dependencies (listed below). ProtonUp-Qt can warn you if you are running the AppImage or running a build from source, but it cannot warn you if you are using the ProtonUp-Qt Flatpak. The most common missing or outdated dependency is Yad, please ensure it is installed and that you are using version 7.2 or higher. To check your Yad version you can run yad --version from the command line. If you get an error, Yad is most likely not installed. If you are a more advanced user and would like a way to use a custom Yad install, please see TinkerGame's Yad wiki page for further guidance.

ProtonPlus

Recent versions of ProtonPlus, a graphical frontend for installing compatibility tools, also support installing and managing installations of TinkerGame including on Steam Deck.

As with other similar installation methods, ensure that you have met the relevant Hard Dependencies for TinkerGame (unless you are on Steam Deck).

Manual Installation

If TinkerGame is not available via your package manager yet, you can install it manually. However, please check if there are any documented installation steps specific to your distribution before going ahead and installing manually. There may be an easier method to get TinkerGame installed on your distribution, or there may be more steps than mentioned here.

There are several Hard Dependencies which are required to use TinkerGame. When installing manually you will need to manage and install these yourself. There are some Optional Dependencies (e.g., Feral GameMode) which are needed for extra functionality, but not required for TinkerGame to build and install.

Dependencies

Please note that a Steam installation of some kind is required before using TinkerGame.

Hard Dependencies

The following packages are required to build and install TinkerGame:

Package Notes
awk gawk fully tested, mawk should work as well.
bash Only shell tested.
git
make Required for manual root installation with make only.
pgrep
unzip
wget
xdotool
xprop
xrandr
xxd Part of vim.
xwininfo
yad GUI toolkit. Version 7.2 or higher required (see #98).
As well as system-wide installs, TinkerGame also supports Custom Yad installs and the Yad AppImage.

Most distributions should have the required hard dependencies, however not all distributions package an up-to-date Yad version. Check the Yad wiki page for information on resolving this.

Optional Dependencies

As TinkerGame offers a lot of third-party functionality, there are a number of optional dependencies which may be installed. These are not strictly needed for TinkerGame to run but may be needed to use various functionality. Flatpak variations of these dependencies may be available but may not work with TinkerGame.

NOTE: TinkerGame does not require all of these dependencies, but if there is any functionality of TinkerGame you would like you will need to install any required dependencies before it will be available. These can be installed after TinkerGame is installed, so you can expand/remove TinkerGame dependencies as you desire them.

Package/Program Description TinkerGame Wiki Page
Boxtron Steam Compatibility Tool for running DOSBox games natively. Available.
GameMode Configurable game optimization tool from Feral Interactive. Available.
GameScope Tool from Valve for running games in an isolated Xwayland instance. Available.
GDB Debugging utility for programs from GNU. N/A
ImageMagick Command line image editing suite.
Used for Game Icons for Game Desktop Files.
N/A
jq JSON Parser utility.
Used to get updated Proton versions for Vortex, and for other things like Steam Deck compatibility rating. Installing this is highly recommended.
N/A
libnotify Used to send desktop notifications.
A custom notifier may be defined. See Notifier wiki page.
N/A
MangoHud (including MangoApp) Vulkan and OpenGL overlay for monitoring performance metrics such as FPS, temperatures, CPU/GPU load and more. Available.
net-tools Allows for game network activity monitoring. Available.
Nyrna Utility for putting games and applications to sleep to free up resources. Available.
p7zip Command line port of 7-Zip to Unix-like systems.
Required for extracting SpecialK archives.
N/A
pev Extracts data from game executables. Available.
ReplaySorcery Low-overhead instant-replay solution for Linux, similar to AMD ReLive/Nvidia ShadowPlay/OBS Replay Buffer. Available
rsync Versatile file copying and backup utility.
Used for backing up and restoring the steamuser folder of a Proton prefix.
Available.
ScummVM Runs classic graphical adventure games and RPGs.
Required for starting ScummVM games natively via Roberta.
Available.
strace Diagnostic and debugging utility used for writing game logs. Available.
usbutils USB utilities library (including lsusb).
Used for checking if a VR headset is present.
N/A
vkBasalt Vulkan post-processing (shader) layer similar to and mostly compatible with ReShade shaders. Available.
vr-video-player Virtual reality video player for playing stereoscopic videos, regular videos and games. N/A
Wine Runs Windows applications on Unix systems.
Used for running applications with system Wine and performing associated Wine configurations.
Available.
Winetricks Provides workarounds for various problems with Wine.
Used for installing Winetricks workarounds/verbs on Wine/Proton prefixes.
Available.
xdg-utils Desktop environment application integration, such as for opening default browsers or text editors. N/A

Download

Latest Stable

If you want to use the latest stable release of TinkerGame, download it from the Releases page.

Development Release

Optionally, you can download the latest bleeding-edge development release of TinkerGame from the main repository page by clicking the green "Code" button and selecting "Download ZIP."

Keep in mind that this will install a version of TinkerGame with the very latest changes, including the latest features and bug fixes. The cost of this is that there may be regressions or broken functionality from the last stable build. Choose whichever version you think best fits your needs.

Build and Install

Once all of the Hard Dependencies and all of the desired Optional Dependencies are satisfied, and you have downloaded TinkerGame, you can install TinkerGame either system-wide or locally.

Extract TinkerGame to a folder of your choice, and navigate into that folder from the command line. For example, if you have downloaded TinkerGame to your Downloads folder, you might run cd ~/Downloads/tinkergame.

System-Wide

To install TinkerGame system-wide, simply run the following command:

$ sudo make install

This will usually install TinkerGame to /usr/bin/tinkergame. To find out where it is on your system, you can run which tinkergame to find the exact path.

After installation, make sure to add TinkerGame as a Compatibility Tool by running tinkergame compat add, then restart steam.

Local (Non-Root)

It is possible to install TinkerGame locally, without having to install it system-wide (initially proposed in #548). One of the benefits of installing locally is simple uninstallation compared to system-wide manual installation.

Below are the steps to install TinkerGame locally:

  1. Navigate to your downloaded TinkerGame folder from the command line, and make TinkerGame executable if it is not already with chmod +x tinkergame.
  2. Set the language for TinkerGame by running tinkergame lang=lang/langfile.txt, replacing langfile.txt with the name of a language file from the lang folder.
    • For example, if you wanted to set your language to Dutch, you would run tinkergame lang=lang/dutch.txt.
    • TinkerGame's languages are mostly community-maintained and may be incomplete. If you want to update existing translations or translate TinkerGame into your language, PRs are welcome!
  3. Now that TinkerGame has been initially run, you should copy your desired language file to the lang folder in the TinkerGame config directory
    • This folder is usually ~/.config/tinkergame
    • Using the example of Dutch again, you would copy the dutch.txt file to ~/.config/tinkergame/lang.
  4. Run tinkergame compat add to add TinkerGame as a Steam Compatibility Tool.
  5. Add the path to the tinkergame script to your PATH variable so that you can run TinkerGame commands from anywhere. Refer to your distribution/shell documentation for specific steps on how to do this, but some general steps are listed below.
    • The specific steps to do this vary between shells/distributions, but the PATH variable is usually defined in your shell profile (such as ~/.zshrc or ~/.bash_profile).
    • If you downloaded TinkerGame to your Downloads folder, on a regular distribution your path might be something like /home/gaben/Downloads/tinkergame/tinkergame.
    • You'll want to add a line that resembles export PATH=, and add the path to the tinkergame script to the end of it, with a colon separating it from the rest of the path.
    • The path variable should end up looking something like export PATH=/usr/bin/:/usr/local/bin:/home/gaben/Downloads/tinkergame/tinkergame. This is not an exact path and shouldn't be copied, but should give you a general idea of how to add TinkerGame to your PATH.
  6. Restart Steam so that TinkerGame shows up as an available compatibility tool.

To use TinkerGame as a command for native Linux games, you have to enter the absolute path to the TinkerGame script. For example, if you have TinkerGame in your downloads folder, your launch option might be /home/gaben/Downloads/tinkergame-master/tinkergame %command%.

Please report any issues you have using TinkerGame locally, including in your report that you followed the manual non-root installation method documented here.

Steam Deck

Please note that TinkerGame can also be installed via ProtonUp-Qt on Steam Deck. The instructions below mirror what ProtonUp-Qt does when installing TinkerGame, so choose whichever method you prefer. Installing via ProtonUp-Qt also has the added benefit of automatically adding TinkerGame to your PATH.

As of v10.0, TinkerGame is compatible with the Steam Deck, with a few caveats and missing external functionality due to how SteamOS is set up. See the Steam Deck wiki page for more information, and please report any bugs you encounter on the issue tracker.

Steam Deck support is heavily secondary for TinkerGame, and there is extremely little testing done on this platform. Community contributions are the primary way fixes and improvements are expected to happen. As a result of this, it is probably a good idea on Steam Deck to install TinkerGame-git to get the latest bug fixes (using the default master branch version).

Download

Stable

Download the latest release from the GitHub Releases page. However, this version may be very out-of-date, so only use this if you have a specific reason to!

Latest

It's probably better in the majority of cases to use the latest release of TinkerGame from git. You can do this by cloning the repository, or downloading the code archive and extracting that. You can then proceed to follow the installation instructions below.

Install

Installing TinkerGame on Steam Deck is different from installing it on a regular Linux desktop, as you do not need to install it system wide.

  1. Open the folder where you installed TinkerGame
  2. Right click on the file tinkergame and go to Properties (Alt+Enter with the file highlighted if you have a keyboard attached)
  3. Go to the "Permissions" tab and check the "Is Executable" checkbox, then press "Ok"
  4. On an empty part of the folder, right click and select "Open Terminal" (Shift+F4 if you have a keyboard attached).
  5. From here, you can run ./tinkergame. You can simply type ./steamt and press "Tab" to autocomplete (either with a physical keyboard or your on-screen keyboard)
  6. Wait for the script to finish, and then run ./tinkergame compat add to ensure TinkerGame is added as a compatibility tool in Steam.

Once again, remember to restart Steam and/or your Steam Deck after installing TinkerGame to ensure the list of Compatibility Tools in Steam is updated.

Follow the instructions in Step 5 of the manual non-root install for guidance on how to add TinkerGame to your path on Steam Deck, ensuring you add it to the correct shell profile(s) that you want to use.

Usage

TinkerGame supports being launched from within games from Steam in Desktop Mode and in Game Mode. TinkerGame may behave differently if launched from the command line.

Also, by default, using TinkerGame as a Steam Launch Option is not enabled. See the wiki page for steps on how to set this up.

Steam Flatpak

Fork note: TinkerGame does not currently publish its own Flatpak. The Flatpak on Flathub (com.valvesoftware.Steam.Utility.steamtinkerlaunch) installs upstream SteamTinkerLaunch, not TinkerGame. TinkerGame does not use the SteamTinkerLaunch Flatpak to run, so the instructions below only apply if you want to use SteamTinkerLaunch itself. TinkerGame should be installed with ProtonUp-Qt, on the Steam Deck, or manually as documented above.

Because TinkerGame does not ship its own Flatpak, the SteamTinkerLaunch Flatpak is the only one available for Flatpak Steam installs, and it installs upstream SteamTinkerLaunch rather than TinkerGame. See the Steam Flatpak wiki page for more information.

Although the SteamTinkerLaunch Flatpak is hosted on Flathub, currently Flathub doesn't list addons/extensions of runtimes on their website. Therefore you will either have to install it through the command line, or through a software center such as KDE Discover.

Command Line

To install the latest stable SteamTinkerLaunch for Flatpak Steam from the command line:

  1. Set up Flatpak on your system as directed in the Flathub setup guide.
  2. Install Flatpak Steam if it isn't already installed.
  3. Install with flatpak install com.valvesoftware.Steam.Utility.steamtinkerlaunch.
  4. Launch Steam and select "SteamTinkerLaunch" as a Compatibility Tool from the dropdown list.

You can verify that the installation succeeded by checking that the version has a date in the version number, such as v11.12.20221005. You can check the version number on the Main Menu.

Remember to report any issues following the guidance on the Steam Flatpak wiki page.

Software Center Frontends

Some Software Center GUI frontends that allow you to search Flathub, such as KDE Discover or GNOME Software, may allow you to find and install SteamTinkerLaunch for Flatpak Steam even though it is not yet listed on the Flathub website. You can install it from these frontends, but do keep in mind that regardless of how you install it, Flatpak SteamTinkerLaunch is only for Flatpak Steam!

Distro-Specific

Note: ProtonUp-Qt installation should work on any distro as long as you meet the TinkerGame Hard Dependencies. Only follow the guidance in this section if you have a specific reason to avoid using ProtonUp-Qt.

Ubuntu and Ubuntu-based Distributions (Pop!_OS, Linux Mint, etc)

Note: TinkerGame requires Ubuntu 21.04 or later. If you are using an Ubuntu-based distribution please ensure it is using Ubuntu 21.04 or later. See the Ubuntu wiki page.

TinkerGame can be installed on Ubuntu and Ubuntu-based distros either via the Pacstall package manager, or it can be installed manually. You may still need to run tinkergame compat add after installing with either of these methods.

Pacstall

TinkerGame can be installed via the Pacstall package manager with the following command:

$ pacstall -I tinkergame-git

This will install TinkerGame with its dependencies, including an up-to-date version of Yad. This packages a Git release of TinkerGame, meaning it should be a bleeding-edge release and may have some bugs. Please report any bugs you encounter on the issue tracker, noting that you are using Ubuntu and Pacstall.

Manual

TinkerGame can be installed on Ubuntu and Ubuntu-based distributions manually with the following steps. Please make sure you have met all of TinkerGame's Hard Dependencies.

  1. Install some missing core dependencies with sudo apt install -y git make gawk xdotool.
  2. Install Yad in one of the following ways:
  3. Download TinkerGame either by:
  4. Open a Terminal and navigate to the folder where you downloaded TinkerGame. For example, if you downloaded it to your home folder, you would type cd tinkergame.
    • You can verify that you are in the correct folder by typing pwd. If the path you see ends with tinkergame, then you are likely in the correct folder.
  5. Compile and install TinkerGame by running sudo make install.
  6. Run mkdir ~/.config/tinkergame ~/.config/tinkergame/lang
  7. From inside the tinkergame directory in the command line, run cd lang
  8. From here, run ls -l to list all the files in this directory. This will list all the languages that TinkerGame is available in.
  9. Look for the name of the language you want to use TinkerGame in, or English if your language is not available.
  10. Run cp your_lang_file.txt ~/.config/tinkergame/lang, replacing your_lang_file.txt with the name of the actual file.
  11. Run ./tinkergame to configure TinkerGame for the first time. This will properly create all of the configuration files at ~/.config/tinkergame.
  12. Update GTK Icons with gtk-update-icon-cache.
  13. Run tinkergame compat add.
  14. Restart Steam to refresh the list of Compatibility Tools.

Nobara

The latest stable release of TinkerGame comes preinstalled on Nobara.

If you wish to use a more up-to-date version, you may want to uninstall TinkerGame and install using something like ProtonUp-Qt.

SparkyLinux

Fork note: The upstream SteamTinkerLaunch package is supplied by the SparkyLinux repositories. TinkerGame does not currently ship a SparkyLinux package, so install it with ProtonUp-Qt, on the Steam Deck, or manually as documented above.

The upstream SteamTinkerLaunch is available in the repositories for SparkyLinux. You should be able to install it system-wide with sudo apt install steamtinkerlaunch. It is also available under the Game section in APTus.

OpenSUSE

Most of the hard dependencies should be available on OpenSUSE via the main repos, though they may need to be installed manually. Yad is the main dependency that is missing and requires manual compilation.

Fork note: The steps below install upstream SteamTinkerLaunch, not TinkerGame. Until a TinkerGame package exists for OpenSUSE, follow the OpenSUSE steps for Yad below and then install TinkerGame with ProtonUp-Qt or manually.

User SolarNyan has outlined the steps for installing SteamTinkerLaunch on OpenSUSE in #726. The steps are as follows:

  1. Open YaST
  2. Download all SteamTinkerLaunch hard dependencies except for Yad
  3. Yad has to be compiled from source following its compilation steps:
    • Before compiling Yad, install autoconf, automake, intltool, and gtk3 with all of its dev versions (GTK4 might also work, optionally all GTK2/3/4 packages can be obtained)
    • Once the dependencies are satisfied, open a terminal, navigate to the yad folder, and run su (this is required as a dependency of Yad will be inaccessible without su escalation)
    • Following this, run autoreconf -ivf && intltoolize
    • Finally, build Yad with ./configure && make && make install
  4. You can now install SteamTinkerLaunch however you like, either manually or with ProtonUp-Qt.

SteamTinkerLaunch is also available in the form of various community packages for OpenSUSE. If one of these packages is up-to-date, feel free to use it as well.

Uninstall

TinkerGame is very straightforward to uninstall. The first step is to run tinkergame compat del, which will remove TinkerGame as a compatibility tool from Steam.

Next, remove the /dev/shm/tinkergame folder. This stores some temporary files which are fairly small but removing it will give you a clean uninstall. If there are other similarly named folders in /dev/shm, feel free to remove them too.

If you don't think you'll ever use TinkerGame again in the future, you'll want to remove TinkerGame's configuration folder. Please note that this folder may contain third party executable tools such as ModOrganizer 2 (including ModOrganizer 2 mods by default), and community Proton flavours downloaded via TinkerGame such as GE-Proton. You may want to remove this folder as it can be quite large, and if you won't need it anymore, removing it can save on disk space. On most installations this folder is ~/.config/tinkergame. For Flatpak, refer to the Flatpak steps.

Please remember to remove TinkerGame as a launch option for native Linux games, if you have this set for any of your games.

Finally, you will need to follow the relevant steps below to remove TinkerGame itself depending on how you did your installation.

Package Manager

Refer to your package manager's documentation for how to remove a package.

ProtonUp-Qt

Select TinkerGame from the list of compatibility tools and click "Remove selected". If any games are currently using TinkerGame as a compatibility tool, it will prompt you.

ProtonUp-Qt also lets you remove the TinkerGame configuration folder. If you would like to do this, enable the checkbox when prompted for uninstallation.

ProtonPlus

TinkerGame can be uninstalled from the ProtonPlus interface by selecting it and removing it. This will also manage removing any residual installation files.

Manual Installation

System-Wide

If you're using an up-to-date release of TinkerGame, you can uninstall with sudo make uninstall. This will remove TinkerGame entirely from your system files.

Local

For local installations you only have to remove the folder you are running TinkerGame from. If you manually added TinkerGame to your shell path, remember to remove it as well.

Steam Deck

Simply delete the ~/tg folder to remove TinkerGame from your Steam Deck.

Flatpak

Fork note: This refers to the upstream SteamTinkerLaunch Flatpak, there is no TinkerGame Flatpak yet.

Software Center

You can uninstall SteamTinkerLaunch from any Software Center that has support for managing Flatpaks, such as KDE Discover, even if you did not install it through this frontend.

Newer releases of some Software Centers will give you the option to remove any lingering configuration files for your Flatpaks. You can use this option to remove the remaining SteamTinkerLaunch Flatpak files automatically.

Command Line

You can uninstall the SteamTinkerLaunch Flatpak with flatpak uninstall com.valvesoftware.Steam.Utility.steamtinkerlaunch.

You can then remove the folder ~/.var/app/com.valvesoftware.Steam/.config/tinkergame/ if it still exists. This will remove any lingering TinkerGame configuration files.

Clone this wiki locally