How to run Windows games on Linux with Steam, Proton and Lutris

Follow a clear workflow to install Steam, enable Proton, and use tools like ProtonUp, GameHub and Lutris to expand compatibility

Gaming on Linux has become much more approachable thanks to the combination of Valve’s Steam client and community-driven compatibility tools. This article walks through installing Steam on a Debian/Ubuntu-derived system, configuring Proton (the compatibility layer built on WINE), and integrating additional helpers such as ProtonUp and ProtonUp-Qt. The instructions include graphical and command-line options so you can choose the method that fits your workflow.

Beyond setup, you’ll learn how to force a specific Proton build for an individual title, how to obtain community forks like ProtonGE, and how alternative launchers such as GameHub and Lutris fit into a Linux gaming library. Throughout, runner and compatibility tool are used to clarify technical roles, and important commands and concepts are highlighted with strong and emphasis respectively.

Installing Steam: graphical and terminal approaches

The easiest route for many users is the graphical store. Open the system software center—called Pop!_Shop on some distributions—search for Steam, and click the install button. After installation, use the application launcher to start Steam and sign into your account. This method handles dependencies automatically and is friendly for users who prefer a point-and-click setup.

If you favor the command line, open a terminal and use the package manager (for Debian/Ubuntu derivatives the apt family). First update package lists, then search for the steam package and install it with apt. Remember that running commands with sudo grants administrative rights; be careful and read prompts before confirming with ‘Y’. These steps produce the same installed client but are often faster for scripted setups or remote work.

Enable and understand Proton

Proton is Valve’s distribution of WINE with gaming-focused patches and libraries; here Proton is treated as the compatibility bridge that allows many Windows games to run within Steam on Linux. To turn it on globally, open Steam → Settings → Steam Play and check both the option to enable Steam Play for supported titles and the option to enable it for all other titles. Once enabled, games that use Proton will show the normal green Play button, and the game details pane will indicate “Runs on this computer via Steam Play” along with the selected Proton version.

Choosing a specific Proton version per game

Some titles behave differently depending on the Proton release. To set a game-specific compatibility tool, open the game’s info page, click the gear icon, choose Properties, then select Compatibility. Tick the box to force a specific Steam Play tool and pick the desired Proton build from the dropdown. This approach allows testing older or experimental builds without changing global settings and is useful when community reports indicate a particular release works best for a given game.

Managing community builds and alternative launchers

Valve’s official Proton releases are regularly updated, but the community also maintains forks that can improve compatibility for specific games. ProtonGE, maintained by Glorious Eggroll, is a well-known example. To install and update these builds, use ProtonUp, a Python-based CLI tool that fetches compatibility tool releases and places them where Steam expects. To install ProtonUp, ensure python3-pip is installed (sudo apt update && sudo apt install python3-pip) and then install via pip. After installation you can run the protonup command to download the latest community builds or specify a particular release.

Graphical management with ProtonUp-Qt and other launchers

If you prefer a graphical manager, ProtonUp-Qt provides an easy interface and is often available as a Flatpak in the software store. It installs both Proton variants for Steam and WINE builds for Lutris, placing them into proper compatibility folders so the clients detect them automatically. For broader library organization, tools such as GameHub and Lutris let you combine games from different sources, run installer scripts for complex launchers like Battle.net, and manage runners such as WINE, Proton, and DOSBox.

Practical tips and open-source options

When using Lutris to run Windows installers (.exe), configure the executable path after installation to point to the installed .exe inside the virtual C: drive; otherwise the setup wizard will rerun. Be mindful that multiple installers from the same launcher (for example Battle.net installers) may create separate launcher copies and duplicate disk usage. Finally, if you enjoy native open-source titles, explore projects like Unvanquished, Veloren, 0 A.D., and Battle for Wesnoth, which all run natively and showcase the diversity of the Linux gaming scene.

Scritto da Sarah Finance

Top camera phones for street photography and urban shooting