TLDR: From my experience, in 2023, the Mesa drivers with an AMD GPU provide an experience that is way better than NVIDIA with their proprietary drivers. And if you’re helping a friend get into linux, and or linux gaming I think you should steer them towards an AMD GPU.
“It just works”, is how I would describe my computer after making the switch to an AMD GPU.
Having migrated from Windows I came over with an NVIDIA GPU, and for a long while my experience with using the proprietary NVIDIA drivers was fine. I had started with Manjaro, then moved to EndeavourOS after getting tired of Manjaro forgetting to renew their keys. EndeavourOS was an order of magnitude better, but eventually I got tired of tending to Arch and settled onto Fedora. Everything worked well enough so when I upgraded away from a 2070 Super
I sought out a 3080 Ti
, and again things were smooth. Issues didn’t start cropping up until I upgraded monitors.
I went from 2560x1440@144hz
to 3440x1440@240hz
and on Fedora running under Wayland I could only get a max of 144hz. I tried using both HDMI and Displayport and could never budge past 144hz. Another issue that arose was I would need to manually turn my monitor on before booting my computer, otherwise I would not get an image, this was also the case for waking the computer having to manually turn on the monitor. Even after a fresh install of Fedora 38 these issues persisted.
Eventually I got tired of the issues I was experiencing on Fedora and decided to just try vanilla Arch. Using archinstall
I was up and running with in no time, and to my surprise I was getting 240hz under X11 and Wayland. Tearing, and stuttering on X was detracting too much from the whole experience, so naturally I wanted to use Wayland.
Having gone with Gnome the amount of work required from my end to use Wayland was just too high. Even after getting the Wayland session up and running I still noticed odd graphical glitches, with enough frequency that I couldn’t just live with them.
Eventually my 7900 XTX
arrived, did a clean install with archinstall
, and that’s that. Everything just worked out of the box. It was refreshing that config changes I made were only because I wanted to, and not to enable basic functionality.
As a nice bonus seeing Processing Vulkan Shaders
has become a rare occurrence after switching.
Great post, thanks for sharing your experience with Nvidia in all those distros!
Just wanted to add: if you are stuck with Nvidia but want to get started gaming in Linux, install Pop!_OS . They have carefully tweaked Ubuntu to make even Nvidia “just work”. It works for me so far, on 2560x1440 @75Hz.
I would rather have some distro freedom with an AMD GPU but unfortunately my main (Windows) game (DCS World) does not work well in VR specifically with the RX7000 series drivers yet.
Good to know, I’ve just ordered a steam deck and if I find that I’m able to play everything I want on there, I might even move my main pc across.
The only real game with anticheat I play is csgo and with Cs2 imminent, I can’t imagine valve would lock Linux out on that.
I made the mistake of not getting rx7000 series so I guess I reap what I sow.
i do own a steam deck and can say with certainty that, after seeing how well it’s handled every game i’ve thrown at it, i will be switching my primary pc to linux once support for win10 ends
I think any gaming on games or boxes post 2019 is just silly. It is a horror minefield of broken and buggy programming and drivers. The best bet is to stick with all hardware and software pre 2018 , preferably running Linux. Windows sucks so stick with pre win10 if u can. Windows is doomed. Hang on to all your all hardware and stick with old games, everything past 2018 is about to slide into a massive shitshow of broken bugs.
Did they fix the issue where installing Steam would nuke the desktop?
IIRC it was already fixed when Linus did this, just not distributed. It was caused by the bluntness Linus developed due to unmeaningful Windows warnings in the 1st place.
It’s so crazy that such a bug ever made it to production. I guess that’s the cost of FOSS: installing Steam can nuke your entire desktop.
The bug was that you couldn’t install steam without faking a the installation of a dep that went down the dependency chain ending in a conflict of essential packages. The functionality to still proceed is a feature. Linus could also just have copied
rm -rf --no-preserve-root /
from the internet as solution and would have trusted it blindly. If you want to be nannied all the way, I’d suggest you switch to iOS for everything.Blaming the user for installing Steam is the most Linux response imaginable. The user above explained it was a bug.
If Linus would be a non-techie, he would have tried to install it with a graphical AppStore, it wouldn’t have worked and he’d either given up or found the flatpak version of Steam, which would have worked. Not restricting power users is a good aspect. If I play around with Windows registry to force the removal of edge, Linus would blame me, not Windows. You have to differentiate between things normal users tried and things Linus attempted because he has some technical knowledge.
Some random user saying anything doesn’t make anything true, you don’t believe flat-earthers on the internet, either.
If I play around with Windows registry to force the removal of edge, Linus would blame me, not Windows.
He didn’t “play around” with anything. He entered, “sudo apt-get install Steam”. That comes straight from thousands of blogs and help sites which instruct users to do just that when they have issues installing Steam.
It’s nothing exclusive to open source. Eve Online removing boot.ini and bricking Windows installs was hilarious.
I googled that. 2007 right? Looks like the Eve devs bungled that. In this case it was the Pop_OS devs who introduced the bug.
AMD on linux is just really, really good.
Some annoyances exist though, like trying to use hardware en(!)coding while retaining the mesa drivers for gaming. HW Enc. is only available with the proprietary amdgpu-pro drivers, which are no good for gaming. You can work around that by using distrobox to setup an arch container on any distro and then using the AUR to install the proprietary drivers and obs in that container. That way, the rest of the system still runs on mesa, but obs loads with hardware encoding support. You can then export obs using distrobox-export -app obs-studio to make it available on the rest of your system like any other app. On nvidia, you install the proprietary drivers anyway, so obs will let you encode on hardware right away.