Steam has made constant improvements since it came to Linux, and that’s not slowing down. With the introduction of Steam Play and Proton, Steam’s version of Wine, you can now play your favorite Windows games directly through your Linux Steam client. Even better, you don’t need to install any outside repositories to do it.
In this tutorial you will learn:
- How to Install Your Graphics Drivers
- How to Enable 32bit Support
- How to Enable the Non-free Repository
- How to Install Steam
- How to Enable Steam Play
Software Requirements and Conventions Used
|Category||Requirements, Conventions or Software Version Used|
|System||Debian 10 Buster|
|Other||Privileged access to your Linux system as root or via the
# – requires given linux commands to be executed with root privileges either directly as a root user or by use of
$ – requires given linux commands to be executed as a regular non-privileged user
How to Install Your Graphics Drivers
In order to play your games, or even use Steam for that matter, you’re going to need the latest graphics drivers for your card. Not to worry, you shouldn’t have any problem installing either the NVIDIA or AMD drivers on Debian 10. If you have an NVIDIA card, check out our complete NVIDIA driver guide to learn how to install your drivers. AMD users can find our AMD driver guide to get your card set up as well.
How to Enable 32bit Support
In case you didn’t set up 32bit support in the process of installing your drivers, you’re going to need it for Steam. Steam is 32bit only, and most games only support 32bit. All you need to do is enable 32bit support in
dpkg and update Apt.
$ sudo dpkg --add-architecture i386 $ sudo apt update
How to Enable the Non-free Repository
While you don’t need to add any external repositories to install Steam, you are going to need Debian’s non-free repo. Chances are, you’ve already enabled it, but in case you haven’t, open
/etc/apt/sources.list in your text editor of choice, and add
contrib non-free to the end of each line. When you’re done, it should look something like this:
deb http://deb.debian.org/debian/ buster main non-free contrib deb-src http://deb.debian.org/debian/ buster main non-free contrib deb http://security.debian.org/debian-security buster/updates main contrib non-free deb-src http://security.debian.org/debian-security buster/updates main contrib non-free
Update Apt again to apply the changes.
$ sudo apt update
How to Install Steam
Here’s a super easy part; install Steam. It’s in the non-free repo you just enabled.
$ sudo apt install steam
How to Enable Steam Play
Launch Steam and sign in to your account. Once you’re logged in, click Steam in the upper left corner of the window. That will open the main menu. Select Settings.
In the Settings window, you should notice Steam Play at the very bottom of the tab list to the left. Click on it.
Now, you’ll see the available options for Steam Play. If it isn’t already, check Enable Stream Play for supported games. Now, if you’d like to try Steam Play with games that will probably work, but aren’t guaranteed, check Enable Steam Play for all other titles too.
Next, use the drop down menu to select the latest version of Proton, if it isn’t already selected.
When everything’s set, press Ok to save your changes.
Head over to your Steam library, and you’ll see all of your Windows games(or all the ones supported by Steam Play) listed among your Linux titles. Click one, and install it just like you would a native game. When it’s finished, you can launch it straight from your library too. There’s never anything that gets in the way or breaks the illusion that you’re playing a native game, unless of course you choose an unsupported game that happens to crash. That’s really unlikely, though, unless you choose something that’s just been released.
That’s all there is! You can enjoy many of your favorite Steam games for Windows on your Debian machine without any extra configuration or nonsense. Valve has integrated its own version of Wine so seamlessly into Steam that you can play tons of Windows games without even noticing.