Tyler's Site

Abstract

In the not too recent past, playing video games on Linux (GNU Linux or otherwise) was an extremely difficult and often fruitless venture; however, with the improvements of tools like Wine, and contributions from other projects such as Valve’s Proton, there has been a massive amount of progress in the realm of playing games on Linux. This is likely nothing new to those who use Linux as a desktop operating system.

Open Source Games

While they are not extremely popular, it is worth mentioning the fair bit of fun open source games in a wide variety of genres. There are too many to really put on one comprehensive list, and I am certainly not going to try in this blog post, but there are some lists that have quite a lot of games, and will show other lists. Some decent lists I found were:

It is absolutely worth checking some of those games out as they have taken a lot of effort and in many cases the games are better than some of the proprietary rivals.

Running Games in Steam

For many games on Steam, this just works without any issues, for evidence of this check ProtonDB. Many of the games just work out of the box without any issues, and games are being added and improved every day. The games that are the most likely to give problems are the ones with kernel level anti-cheat. Some examples of games that have this “feature” are:

The games will either not launch, or will immediately kick/ban you when trying to play the game. While it is unfortunate, it is the current reality of playing games on Linux. However, that is just games available on Steam; what about games that aren’t on Steam?

Non-Steam Gaming

With all of the work that Valve has put into playing games on Linux, it’s not surprising that the experience is very good, but what about playing games outside of Steam? Well there are quite a few options… The first, and possibly the simplest is to use Steam’s “Add a Game” feature to run the game using Valve’s Proton; however, there is also an argument to be made that doing this is not necessary and could eventually cause issues with the game. This has never been my experience, however, your mileage may vary. There are some other tools that will be able to run Windows games as well as other Windows software on Linux.

Wine

Wine is the original software to make Windows games and applications work on Linux, and like the name implies, has only gotten better with age. The website manages a database of games and software that are known to be working with standard Wine. In many cases, Wine will be enough to get the game to run, however, there may or may not be some performance issues in some cases. Many games work well, but many give low frame rates without tweaks to use better graphics APIs such as DXVK rather than OpenGL.

Lutris

Lutris is a gaming platform designed to make playing games on Linux easier. From their website:

Lutris is an open gaming platform for Linux. Lutris helps you install and play video games from all eras and from most gaming systems. By leveraging and combining existing emulators, engine re-implementations and compatibility layers, it gives you a central interface to launch all your games. The client can connect with existing services like Humble Bundle, GOG and Steam to make your game libraries easily available. Game downloads and installations are automated and can be modified through user made scripts. Before installing Lutris (or at least before running any games), make sure your computer is fully setup to run games. This includes making sure your graphics drivers are installed and up to date, that Vulkan is installed and that the 32bit libraries for OpenGL / Vulkan are present. If any of those components are missing Lutris will give a warning. We also very highly recommend installing Wine from your package manager. This can be any version of Wine (stable, development or staging) as long as it pulls both 32bit and 64bit variants. Lutris will usually not make use of it directly but the peer dependencies installed from the Wine package are necessary to run our Wine version properly.

Lutris allows players to download configuration profiles for various games and game clients to allow running the software on Linux. This can be done by going to Lutris.net and search for a game that you would like to install (pro tip, DuckDuckGo has a bang for Lutris, !lutris). Then once that game is found, then download and open it with Lutris; Lutris will take care of the rest and get the game working. It will handle not only PC games, but emulator games as well.

Bottles

Bottles is another game/software manager for Linux that is installed via Flatpak. This software is similar to Lutris in the sense of it will manage different versions of Wine and its forks for the various games and software it will have to run. It acts almost like a virtual machine manager, but for Wine configurations. Bottles allows users to use different versions of Wine with different options set for Wine, as well as different versions of things like DXVK to allow for better graphics support depending on the game and/or software that the bottle is running.

More In-depth topics

There are quite a few more topics that could be covered in this post; however, it would get very length very quickly. So, rather than continuing with the technical bits, I will give some more things to look into that might be interesting for some one that is wanting to learn more about it.