Jump to content

[Guide] Best gaming setup on Linux desktop and Laptops

Guest

Hi, I'm creating this guide because I think there are a lot of misconceptions when gaming on Linux, so I'll show the best gaming setup you can have on Linux desktops and optimus laptops, focused with newbies

This guide will divide in two parts, the desktop section, which is somewhat general and the specific laptop section. 

 

 

Desktop

For laptop users, just read this entire paragraph first!

Introduction

First of all, the best setup you can have is the most supported one, so Intel or AMD CPU, no APU's, and an NVDIA graphics card. 
If you have problems, you would like to go on the most recent Linux distro you can think of.

 

Distribution

 

It depends, if you want the most stable and easy to use desktop experience, you would go for Ubuntu 18.04 or Linux Mint however, you would need to add some ppas to get recent drivers, and all the programs present in there would be old, exception for Snap and Flatpak packages

If you want a more "updated" cutting edge experience especially for new hardware then you may want to go with Ubuntu

18.10 or Manjaro Linux, which is based on arch, manjaro would probably have the best performance.

However, it has a slightly longer learning curve than Ubuntu when it comes to installing software.


Other distros like Fedora may be fine, but I never used them.

 

Desktop environment

 

Probably the most important thing of a perfect gaming experience after the driver is the desktop enviroment, contrarily to what people may think, the worst desktop environments to game with are 

  • Xfce
  • Mate
  • Cinnamon
  • Pantheon*

At this point, you are probably guessing why? Those are the lightest desktop environments.
Simple, they got a compositor which doesn't turn off when you open a fullscreen game, this may change in the future if they update their code but if you really want to use those desktops you need to turn off desktop compositing manually and this can't be possible in Cinnamon.

*Seems to perform well, not 100% sure but it seems.

 


Desktop compositing enabled in games causes tearing, fps drop, input lag.


The best (I tested personally) desktops for gaming are:

  • KDE Plasma
  • GNOME

I would however recommend Plasma, it's lighter on system ram, like 500MB lighter.

 

Remember: Like windows, for the best gaming performance you need to play in fullscreen mode for both wine+dxvk games or native ones.

I don't know if the same applies to LXDE, I don't use it.

 

Updated drivers

 

Another important thing are system drivers. If you use an ArchLinux based distro, like Manjaro you don't have to worry, it's a rolling release and probably has the most updated packages you can imagine. 

If you are on an Ubuntu based distro, there are three mainly things you may want to update

 

NVIDIA drivers

 

Updating NVIDIA drivers is relatively easy, all you need to do is add this PPA

sudo add-apt-repository ppa:graphics-drivers/ppa

then, update your APT cache, and go into your Driver manager and install the latest ones, at the point of this writing, the latest are the NVIDIA 410.77 ones

 

Linux Kernel (AMD and Intel GPU's drivers)

There are several ways to do that, the first is to use Ukuu which has a GUI! Follow those instructions https://github.com/teejee2008/ukuu

 

Please note that installing new kernels is dangerous, be sure to have at least one stable kernel, don't remove any! If you got problems on your new kernel, boot to the previous one

OpenGL stack (AMD and Intel GPU's)

 

If you are using an open source driver, the opengl stack is updated differently from the drivers, to update them add this ppa

sudo add-apt-repository ppa:ubuntu-x-swat/updates

then, reload your APT cache and `sudo apt-get dist-upgrade`

 

That's all for Desktops, and what about laptops?

 

Laptops

 

Introduction

Things are much harder on laptops. If you have a single graphics card,  just follow the desktop paragraph.

 

Intel/AMD CPU + AMD GPU/APU

 

Just follow the desktop paragraph, but remember that you need to set an environment variable before the game executable, you'll be using DRI_PRIME=1. 
Lutris has an option to enable it, in Steam/Proton you would need to modify the argument by right-clicking on the game and adding 

DRI_PRIME=1 %command%

Anyway, never owned such laptops so I don't think if this is gonna work, follow this guide instead https://wiki.archlinux.org/index.php/PRIME#Open-source_drivers 
I don't even know if the battery life is any good since it would need to switch off the drivers.

 

Intel CPU + NVIDIA card

 

This is the most common setup, and probably the most complicated just because of two things. The "Official" nvidia support for Optimus is jut for Ubuntu and it's called NVIDIA PRIME and it's not present or supported on other distros not based on Ubuntu, and it's the only way to get Vulkan games working on the discrete GPU.

Important note. At least for me, this setup it is suffering from a strange form of screen tearing + choppy performance, not on fps but on the "overall experience", so I would honestly suggests to game on a dual-boot environment, I think the PRIME syncronization between Intel GPU + nvidia is messed up, and not the same.
 

Basically it just let you choose which GPU to use from nvidia-settings GUI (also called NVIDIA X server settings) but only for the current X.org session, so you'll need to logoff every time you have to use a different GPU. 
Sometimes it's buggy and requires a reboot.

 

There is also another Windows-like and DRI_PRIME like method called bumblebee but only supports OpenGL at it's current state, there is a program called primus_vk but it's in an alpha state, on other distros you could also try nvidia-xrun or messing around with X config to use just the NVIDIA card but that's not the purpose of this guide, I'll just show the easiest way possible


NVIDIA-PRIME method*
 

With newer nvidia drivers(So when Using Ubuntu 18.10 or Ubuntu 18.04 with repos)

The only desktop+display manager combination which is working fine with Vulkan/DXVK is KDE plasma+SDDM,

So for Optimus laptops, would just need to use a distro like Kubuntu 18.04 or 18.10.

 

Or if you are an experienced user, just switch for a display manager which is not GDM3 and use GNOME.


Or you can just stick with Ubuntu 18.04 without upgrading NVIDIA drivers (Unless they ubuntu devs update them even on 18.04) 

 

* Workaround for nvidia-settings not opening anymore when on Intel GPU after the update
Before upgrading nvidia drivers, go into /usr/bin and save the nvidia-settings binary somewhere, like in the same folder and calling it nvidia-settings.390

Also into /usr/lib  save all libnvidia-gtk* libs, you need to restore those after the update because newer drivers will mess up with nvidia-prime GUI functionality, so after the update just copy those files back.

 

Fix NVIDIA-PRIME screen tearing

 

add this parameter to /etc/modprobe.d/*.conf

options nvidia-drm modeset=1

or 

nvidia-drm.modeset=1

to /etc/default/grub in GRUB_CMDLINE_LINUX_DEFAULT
 


Suggestions

 

  • Always use the latest DXVK version when using lutris, or the latest Proton one. Old versions are not less stable than new ones... 
  • Always use the latest Wine version, I suggest the tkg one, this one disables the desktop compositor (Don't need to worry with Proton, it already does that)

     

That's all I think...

 

Link to comment
Share on other sites

Link to post
Share on other sites

thanks for this, i didn't know cinnamon was a bad desktop for gaming. 

 

personally i'm still gonna use gnome, as the desktop pc i'm in the process of building will have 48gb of ram, so 500mb more or less won't matter much :P 

She/Her

Link to comment
Share on other sites

Link to post
Share on other sites

1 minute ago, firelighter487 said:

thanks for this, i didn't know cinnamon was a bad desktop for gaming. 

 

personally i'm still gonna use gnome, as the desktop pc i'm in the process of building will have 48gb of ram, so 500mb more or less won't matter much :P 

it's bad only with wine games, it seems to disable desktop effects only with native games (took an entire day to figure out this using ssh)

Link to comment
Share on other sites

Link to post
Share on other sites

22 minutes ago, Lukyp said:

it's bad only with wine games, it seems to disable desktop effects only with native games (took an entire day to figure out this using ssh)

interesting. most of my gaming is Windows games (Overwatch) so it would be nice if i can get the best performance out of it. 

She/Her

Link to comment
Share on other sites

Link to post
Share on other sites

6 minutes ago, firelighter487 said:

interesting. most of my gaming is Windows games (Overwatch) so it would be nice if i can get the best performance out of it. 

For some reason even with the same drivers  and kernel Arch performed better with overwatch than Ubuntu 18.10, like +20 fps maybe releated to some X updates

Link to comment
Share on other sites

Link to post
Share on other sites

2 minutes ago, Lukyp said:

For some reason even with the same drivers  and kernel Arch performed better with overwatch than Ubuntu 18.10, like +20 fps maybe releated to some X updates

yeah probably. i will use Arch (manjaro) so i'll get those advantages. 

 

+20fps compared to what by the way? 

She/Her

Link to comment
Share on other sites

Link to post
Share on other sites

3 minutes ago, firelighter487 said:

yeah probably. i will use Arch (manjaro) so i'll get those advantages. 

 

+20fps compared to what by the way? 

Ubuntu, 220 vs 200 in a specific overwatch training zone section.

Link to comment
Share on other sites

Link to post
Share on other sites

Today I tested Pantheon/ElementaryOS, it performed really well.



Added suggestion category

Edited by Guest
Updated guide
Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×