Installing Games on Linux

TheProf

Well-Known Member
Joined
Jun 15, 2021
Messages
318
Reaction score
328
Credits
2,941
I wanted to make this post to try and help other folks with their gaming setup as it seems like this is still somewhat challenging for new users. I guess you can also say that this post is kind of inspired by the recent Linus Tech Tips Linux challenge, specifically around gaming.

This post is not intended to be an exact instruction set on how to set everything up. Many folks use different distributions, different hardware, etc so there might some differences in the way that some of the packages are installed and/or configured.

**But for the most part, these steps are pretty universal and should work on most Linux distributions if done correctly**


Prerequisites:

Nvidia Drivers (GPU) - Install through Package Manager, this is quite important for nvidia GPUs, you'd need to install proprietary drivers.

AMD Drivers (GPU) - If you're using an AMD GPU, the drivers (mesa) should be integrated in the kernel so you don't need to install anything. Although really old AMD GPUs, might need drivers (I believe it is for GPUs 7+ years old)

Linux Updates - Make sure to always have the latest up to date OS before installing any apps.


Gaming Clients and Apps:

ProtonDB - Before even starting the install process, I highly recommend to go to protondb.com and look to see if the game you're trying to play is actually supported with Proton on Linux. Usually you will get folks on that website to give feedback on how well the game runs as well as their respective PC setup to give you an idea of what they're running.

Wine (staging - Install through Package Manger) - Wine is a big part of the gaming setups on Linux, specifically for games like Wow, FF14, etc all rely on Wine to work properly. For those that dont know, Wine is just a way of running Windows games in Linux. Wine is not an emulation layer, it just translates API calls. I highly recommend to install Wine staging to get the latest updates.

ProtonGE - This next app is VERY helpful in getting games to work smoothly. You can download a custom version of Proton that is tweaked and optimised for various games. I suggest using a combination of ProtonDB + ProtonGE to check and use Proton specific version depending on the game you're running. It could happen that one version of Proton runs better for a specific game, while another version of Proton, runs other games better. The trick is to use ProtonDB site to see what other users are using for the game, and then you can try yourself to see if that works for you. From my experience, this has always been very helpful and cuts down on the time of trial and error. Installation Instructions (https://github.com/GloriousEggroll/proton-ge-custom)

Lutris (Install through Package Manger) - This is an app that I use on my Linux install, it is used to aggregate all your games into one location as well as using the Lutris site, you can run scripts that will automate the install of your games and then integrate with Wine/Proton so that you can tweak and launch games. I use Lutris myself and highly recommend it if you plan on playing games outside of Steam. If you're only using Steam, it is not needed.

Steam - is one of the main gaming clients you can install on Linux today. Steam runs out of the box and it is very easy to install. You will need to configure Steam for Steam Play in order to use Proton to play Steam games. Most of the Steam games work with Proton, but might need some tweaks to get it to work. Make sure to Enable Steam Play for all other titles and Steam play for supported titles and then reboot Steam.

Heroic Game Launcher - This is the open source version of the Epic Game Launcher but not built by epic, but by the community. If you play games on the Epic Launcher, you can use this Launcher to play your games. This Launcher supports both Wine and Proton.

Origin Client - Through Lutris, you are able to download the Origin game client If you have some EA games that do not require EAC, this is a good way to play EA Games.

Ubisoft Client - Through Lutris, you are able to download the Ubisoft game client. If you have some Uplay games that do not require EAC, this is a good way to play Ubisoft Games.

Battle.net Client - Through Lutris, you are able to download the Battle.net game client. If you have some Battle.net games that do not require EAC, this is a good way to play Battl.net Games.

PlayOnLinux: I personally did not try PoL, but from what I can see, it is similar to Lutris, basically a front end to Wine, and like Lutris, it supposed to simplify the process of installing games in Linux.


Troubleshooting game install:

It could happen that from time to time, when you install a game, it just does not run well for you. Most of the time, this is not because of Linux, but because you are either missing some packages or maybe you need to tweak your game setup.

Missing Packages, games don't run - This is a common one I find, because in Linux, even though we think we installed everything, there might be a scenario where we're missing some packages, for example, you can install Wine, but then you might also need some of the other dependencies, such as wine-gecko and wine-mono where some games might require these packages to function correctly. Always make sure you're following the steps outlined in the documentation, such as in this article here for Arch Linux (https://wiki.archlinux.org/title/wine)

Games run sluggish and stuttering - if the games themselves are slow and/or stuttering, from my experience, this was mostly related to the Proton version that I am using, so most of the time, going on ProtonDB and looking at the comments for a game can give you an indication on which version of Proton to use. Of course, this is not the only thing that can cause sluggish game performance. Another example could be related to the Desktop Environment that you're using. For example, when I was using KDE, I had to tweak the compositor and opengl settings to make things work better, but this is something that does not happen often. Most of the time, you can fix this by using a different Proton version or sticking with the Wine staging version.

Another issue with sluggish games could be that you have older and outdated drivers which is why it is important to keep your OS up to date with the latest drivers.

Games have Low FPS - I ran into this issue most of the time and it is usually related to things like v-sync where if it is enabled, your games will run at an FPS that is supported by your GPU/Monitor and so in a lot of cases, you might see games running at 60 FPS even though you know you can run these games at 100+ FPS. To fix this, you can disable vsync, but if you start getting tearing in your games, you might have to enable it. I use a GSync monitor so I dont really on vsync for my games.


NOTE: Please note that at the moment, most games that require some Anti-Cheat software do not work well in Linux. Recently there has been some announcements made around providing support for Anti-Cheat software in Proton, but until the game developers enable support for Linux, at the moment, EAC games don't work under Linux. Some of these games are New World, Call of Duty, BF, etc.


Here's a screenshot of the Lutris app installed on my machine with some of the games I play. After following the instructions above, all my games run pretty smooth with 100+ FPS and graphics are either high / very high / ultra.

My Linux distribution is EndeavourOS which is an Arch Linux derivative. But this should also work in Fedora, Manjaro, Ubuntu, Debian, Garuda, MX, Mint, etc.

1638716417410.png
 
Last edited:


Thank you for this detailed write up! I'm very new to Linux and have just recently installed Ubuntu onto an office desktop converted into a low level gaming PC. I downloaded a couple games on Steam (CSGO, Payday 2) and have had nothing but issues. CSGO wouldn't load past the intro animation and Payday 2 was unplayable. I'm hoping your tips above will help. Will report back.
 
I'm gonna sticky this for a few days. Someone remind me to undo that.
 
No actually, I reckon it should stay stuck, David.

Nice piece of work @TheProf :)

Wiz
 
Great summary of what you need for Linux gaming without getting too technical and detailed. Great work! Thanks for sharing!
 
No actually, I reckon it should stay stuck, David.

That works for me. It seemed worth keeping stuck for at least a while. I usually try to remember to unstick 'em eventually, mostly so that new stuff could be cycled in. Alas, that memory of mine isn't all that great.
 
I'm playing and recording how i get games to work and sometimes even program.
You should check it out. Maybe you can learn somthing that can be added or things you never should do.
Hey, even Comment if i do something Stupid or weird i don't mind.

 
Did someone manage to get MO2 running and being able to add mods?
I am trying to mod Skyrim but the MO2 part is the one i have problems with. Skyrim itself runs fine though. Just not with mods.
 
Did someone manage to get MO2 running and being able to add mods?
I am trying to mod Skyrim but the MO2 part is the one i have problems with. Skyrim itself runs fine though. Just not with mods.
 
@kibasnowpaw I will check your video. Thanks for sharing.
No problem, just note that it was my first time trying to make it run, so some stuff you can just skip, like installing mono and Vrun. It's not needed, but you can do it if you want shouldn't matter.
 
I have to say i got some grey hairs getting MO2 running on Linux. Actually i had it running. But i was not able to have it find Skyrim. I could not figure out why. So let me try this. I am sure i made some mistakes. Linux and all.
 
I have to say i got some grey hairs getting MO2 running on Linux. Actually i had it running. But i was not able to have it find Skyrim. I could not figure out why. So let me try this. I am sure i made some mistakes. Linux and all.
you can do it two ways install steam inside the wine folder or use winecfg and make a link to the steam folder i show both at the end of the video.

Also you need to use the right wine version
mine was lutris-ge-7.0rc3-1
 
Originally i though Lutris would solve my problem. Ok, i will do the manual then. Sorry, haven't watched yet. At least not full.
 
Originally i though Lutris would solve my problem. Ok, i will do the manual then. Sorry, haven't watched yet. At least not full.
i end up using Lutris at the end.
 
Well, the one that broke it with MO2 was that it could not read Skyrim.exe. So you start MO2 and its fine but once you get the request to find the directory and you link it, it can not read it. Plus, Steam is ignored for some reason.
Wine reads from the virtual filesystem. Not sure if that is the issue. Whatever the case i will finish watching.
p.s. MO2 complains about a py file not present. That is with Wine installation.
 
Have you checked if you have Python 3.8 installed i think that's the versions wine uses?
At least in my case.
 
I have Python installed. On the version, i have to check. Perhaps i have a newer version than 3.8.
 
Well, i know now you have to install Skyrim and MO2 within Lutris.
So far it works fine. Where i stumble is within MO2 where it seem not to find registry key for Steam.
That py thingy does not appear anymore.
I tried to add the registry but that did not work. Strange.
 

Staff online


Top