Most of this article seems unnecessary in 2025 and is very specific to Arch.
For most distributions you can simply install the (proprietary) nvidia drivers and you're good to go.
There is generally no tweaking or command line changes necessary for Nvidia to work on Wayland, including multi-monitors with different resolutions and refresh rates.
In Arch, the current NVIDIA driver automatically sets KMS and the kernel command line and hyperland changes are no longer needed. Basically it just works now.
How does the distribution make this an issue? You can always freeze drivers and install old ones. I get that it might not work out of the box, especially with rolling-release distros like Arch, but you also don't want rolling-releases for an older machine.
I know it's also me that's the issue. But I just want a Linux distro that works. I've had enough of people saying "Nvidia has been getting so much better recently!" and "It's completely usable now!" when the newest drivers break my whole experience. I would use arch, and have tried about 5 times, but it's too complicated to get the driver I need and I won't even bother at this point. I've just accepted the fact that I'm going to use Mint until I get a desktop. Maybe I'll try to get help on a forum somewhere but idk, I think I would need personal help.
This is perfectly valid. But I would add that Arch is not that distro. Even though projects like Endeavour and Manjaro are trying that I don't think it'll ever be the case. You have rolling-releases and even though they've done a great job you're never going to be the most stable because of this.
But I think Pop is the best distro for this. System76 is highly incentivized to do exactly this and specifically with nvidia drivers and laptops (laptops create extra complications...). I can't promise it'll be a cure-all but it is worth giving a shot. I would try their forums too.
I totally get the frustration. I've been there, unfortunately. I hope you can get someone to help.
CachyOS just works for me. Highly optimized Arch working flawless and without hassle.
I know my ways around Arch, and in the about two years using CachyOS I never needed to intervene, with the exception of things like changed configs/split packages. But those are announced in advance on their webpages, be it Arch itself, or CachyOS, and also appear in good old Pacman in the terminal, or whichever frontend you fancy. It's THE DREAM!
What's lacking is maybe pre-packaged llm/machine learning stuff. Maybe I'm stupid, but they don't even have current llama.cpp, WTF? But at least Ollama is there. LM-Studio also has to be compiled by yourself, either via the AUR, or otherwise. But these are my only complaints.
> has to be compiled by yourself, either via the AUR
I don't think I'd call the AUR "compiled by yourself". It's still a package manager. You're not running the config and make commands yourself. I mean what do you want? A precompiled binary? That doesn't work very well for something like llama.cpp. You'd have to deliver a lot more with it and pin the versions of the dependencies, which will definitely result in lost performance.
Is running `yay -S llama.cpp` really that big of a deal? You're not intervening in any way different for any other package (that also aren't precompiled binaries)
> Haven't used yay or other aur helpers so far.
> Have used Yaourt on Arch in the far past,
Yaourt is an aur helper?
> Maybe that's why my systems run so stable?
Sorry?
>>> I know my ways around Arch
Forgive me, you said this earlier and I think I misunderstood. What does this mean exactly? How long have you been using Arch? Or rather, have you used Arch the actual distro or only Arch based distros?
I guess I'm asking, have you installed the vanilla distro? Are you familiar with things like systemd-boot, partitioning, arch-chroot, mkinitcpio, and all that?
I have used plain Arch in the past, for several years, no derivatives.
At that time there existed an AUR-helper called Yaourt, which I made heavy use of. But often in haste, sloppy. Which lead to many unnecessary clean-up actions, but no loss of system. Meanwhile I had to use other stuff, so no Arch for a while. When the need for using other stuff was gone I considered several options, like Gentoo, but naa, I don't wanna compile anymore!1!! (Yes, Yes, I know they serve binpkgs now, but would they have my preferred USE-flags?) Maybe Debian, which can be fucking fast when run in RAM like Antix, but I had that for a while, and while it's usable, Debian as such is bizarre.
Anything Redhat? No thanks. SuSe? Same. So I came across CachyOS, and continued to use that, from the first "test-installation" running to this day, because it works for me, like I wrote before. Like a dream come true.
Remembering my experiences with Yaourt I abstained from using the AUR. And that worked very well for me, so far. Also the Gentoo-like 'ricing' comes for free with their heavily optimized binary packages, without compromising stability.
> I guess I'm asking, have you installed the vanilla distro? Are you familiar with things like systemd-boot, partitioning, arch-chroot, mkinitcpio, and all that?
Yes.
Are we clear now?
Edit: I'm so overconfident I'm even considering disabling the pacman-hooks into BTRFS-snapshots, because I never needed them.
No rollback necessary, ever, so far. Same goes for pacman cache.
After every -Syu follows an immediate -Scc.
I've used Yaourt too. Things are a lot better these days. Yay is the standard. But I think the biggest help of helpers is updating.
Yes, we're clear now, but are you surprised by my hesitation? Because having that experience would imply you've had a lot of experience compiling things the long way. Running makepkg -si isn't that complicated. It's as easy as it gets. There's no make, no configure, no cmake, no determining the dependencies yourself and installing those yourself too. I don't get the issue. Take too long? Not happen automatically?
> I'm so overconfident I'm even considering disabling the pacman-hooks into BTRFS-snapshots, because I never needed them.
lol yeah I'm sure they're not needed. Not hard to recover usually and yeah I agree, things are stable these days. I can't remember the last time I needed to chroot (other than an nspawn). I only snapshot data I care about these days and it's usually backed up remotely too. I've learned my lesson the hard way too many times lol.
# /etc/systemd/system/pacman_auto_update.timer
[Unit]
Description=Update automatically because ain't nobody got time for that
Documentation=man:pacman(8)
[Timer]
OnCalendar=weekly
Persistent=true
# Optionally wake system up to upgrade
#WakeSystem=true
[Install]
WantedBy=timers.target
After=network-online.target
# /etc/systemd/system/pacman_auto_update.service
[Unit]
Description=Update automatically because ain't nobody got time for that
Documentation=man:pacman(8)
[Service]
Type=simple
ExecStart=/usr/bin/pacman -Syu --noconfirm
Joking aside, I do use a version of this except I just run -Sy and I do it daily. I find it does help speed things up.
> Gimme binaries
Definitely not going to happen on Arch and this runs completely counter to what you claimed to like about CachyOS. Distributing binaries is not going to result in a very optimal system... Which is what caused those red flags to be raised in the first place
>>> After every -Syu follows an immediate -Scc
Btw, I don't suggest doing this. If an update breaks your system then you don't have the versions cached to roll back to. I mean you can download again but your cache gives you a good hint at what did in fact work.
I'm perfectly at ease with initiating them manually, as I see fit.
For me that means automatically tracking dependencies of things like USE-flags in Gentoo's Portage, or Exherbo's Paludis.
And the possibly resulting conflicts. Arch and its makepkg and the stuff in the AUR has simply no provisions(that I'm aware of) for that. It's all manual, IMO. AUR-helper, or not.
> Definitely not going to happen on Arch and this runs completely counter to what you claimed to like about CachyOS. Distributing binaries is not going to result in a very optimal system... Which is what caused those red flags to be raised in the first place
Says you. I counter that with my years long experience(on CachyOS), limited to the stuff they DO deliver as binary. Obviously carefully tested by people who really know what they do, on much faster systems than I have, before delivery to the general public.
> Btw, I don't suggest doing this. If an update breaks your system then you don't have the versions cached to roll back to. I mean you can download again but your cache gives you a good hint at what did in fact work.
Never needed it, neither on plain Arch in the far past, nor the two years of CachyOS now. Should something bad happen I can boot some rescue-image from whereever, and fix it that way. It's just a waste of space.
Edit: Please don't suggest Nix(OS) or Guix. They give a shit about optimization in the name of 'reproducible builds', and go for the lowest common denominator because of that. Which is understandable, given their goals. But they are unaligned with mine.
Ho-hum, so I gave this yay-thing a try, as a binary, out of CachyOS repos, and let it run an outstanding update of 77 packages, mostly new Plasma/KDE to 6.5.4 from 6.5.3. It even discovered some things which I must have installed manually via makepkg from the AUR, mainly i7z(probably during discovery, when the system(s) were 'new' to me), some microsoft fonts, and even Hexchat, which I've forgotten about, because I switched to KVirc when Hexchat began to crash. It doesn't do that anymore, at least not during autoconnect to EFNET & Libera Chat. Didn't test further. Did reboot with the usual insane brazenness of kill -9ing Firefox from within htop beforehand, to have it reliably restart my session, with all its windows and tabs in there. Yay -Scc, erasing all btrfs-snapshots, and so on.
Closing all other apps, terms, filemanagers. Klicking restart. Hands off. Very quiet and fast boot. Sddm appears. Login. Plasma is there. FF reloads as it should. Everything else works. Still ultra-smooth.
So Yay!?
(Squeekily screaming: *Oh my gawd!1!! Nao my (almost) pristine binary system iz tainted!1!!*)
Edit: Hrrm. When Hexchat began to crash... So I've told shit about no app ever crashing. But that was a general problem on Distros which updated the underlying substrate faster than others, IIRC.
It was just 'bitrotten'.
Very annoying at the time because I've been used to it since a long time, and had it heavily customized and themed, but (binary!) KVirc came to the rescue, so I've forgotten about that. Sorry.
Almost true. Some versions of the drivers, yes. Other versions, no. I didn't notice this until a few months ago but every now and then I'd have things like external monitors not working or one of them not waking from sleep on its own. So after like a week of banging my head against the wall on what configuration file I must've changed to break something, I found massive amounts of posts saying "I updated the driver and the following is now broken" so as a desperate attempt I backdated. Fixed everything. Immediately told apt to never update that driver ever again. There are still issues sometimes (like if the computer has been up for a few weeks the driver fails to allocate memory on display plug in), but in general it's usable.
I recommend everyone not update those drivers unless they're not working, and don't be afraid to downgrade. Almost every version has people saying on their system something doesn't work.
I had Nvidia up until a year ago or so. Every single time I had to do any kind of maintenance it was because of their drivers.
Since I don't play any more games than Minecraft and don't really need a fancy gpu I have switched to intel. Now I have two things which I buy intel only. GPUs and WiFi. I have had one glitch with opengl under a VM, but I am not sure that is intel only since it also had issues with my Nvidia card.
Half a dozen of NVidia cards in more than a decade on on Win/Lin. No major problems so far.. I had to install / remove drivers manually but only because I needed exact versions for some other software. Intel on Win/Lin works fine too.
What? The main difference between distros is the package manager. I don't see anything here that's distro specific other than editing the pacman config to enable multilib, which to be fair is default on with many distros.
But Systemd? That's on most distros these days. I'm pretty sure it is on all of those in the top 10.
Also, the OP is using CachyOS. You can tell b̶e̶c̶a̶u̶s̶e̶ ̶t̶h̶e̶y̶ ̶o̶p̶e̶n̶ ̶f̶i̶l̶e̶s̶ ̶w̶i̶t̶h̶ ̶n̶a̶n̶o̶ from the neofetch logo. But, I'll mention that if you checkout distrowatch, Arch based distros are incredibly common. Over the past 12 months the most downloaded distros are CachyOS (Arch), Mint (Deb/Ubuntu), MX (Deb), Debian, Endeavour (Arch), Pop (Ubuntu), Manjaro (Arch), Ubuntu, Fedora, Zorin (Deb/Ubuntu).
That said, you don't have to do any of this for either Endeavour (which I use) nor Manjaro (my old distro of choice). Along with Pop, one of the main motivations for these distros is Nvidia support. Really I don't expect most people to even be facing those problems these days. On Endeavour I've only run into one Nvidia problem over the last 5 years and it was when a beta driver conflicted with the most recent kernel. Super easy fix once I realized the problem.
On a side note/friendly reminder:
anyone that's using linux these days with an Nvidia card I suggest making sure your /efi partition is >1GB (at least 2GB but give it some headroom. Disk is still cheap). If you're putting the drivers in the kernel (you should), like done here, those are going to take up a lot of space. (If you get a space error, run `sudo du -ch --max-depth=3 /efi | sort -hr` to see the problem. You can, usually, safely delete any of the `initrd-fallback` versions and rerun `sudo reinstall-kernels`. They'll be built again but this will usually give you the headroom you need)
It feels surprising that there's people on hackernews without adblock considering that adblock is not just for blocking ads, but also malware, illegal tracking and blocking annoying and useless banners.
Well I run an ad blocker too, but maybe we should try browsing submitted URLs without blocking ads and only upvote them IF we can still read them like that.
brave seems to have some special sauce since it appears to be able to hide the fact that ads were removed. I am guessing they are doing so without triggering dom events.
My browser automatically blocked something that's triggering an overlay to "Disable any DNS / Extension Based AdBlocker to Continue" with no option to dismiss.
So the people on Hackernews with adblock aren't reading this.
I use an app called harmonic to browse HN, if I open a link externally Firefox for android opens it with ublock installed.
But the first glance of the article I get is with the default web view.
And a lot of places have ads that are okay. I mean I still dislike them, but they don't block half the page as in this instance. And when I see that I won't even bother to open it in Firefox.
Having failed to get Wayland working on Debian Trixie with a 1050 Ti as an upgrade from X11, I've given up for now and will try again when I switch to AMD. This is a workstation not used for games so it'd be good to have Wayland working right but I'm not wasting time fighting it, and it'll get the GPU from the gaming rig when it becomes due nullifying the problem.
What I don't get is if these are proscribed steps (and they do read as such) why are they not automated with the module install? Why are we still fighting these issues if the 'workaround' is linear and well described? Is it as flimsy a reason as "write-an-article, collect-advertising-revenue" rather than contribute code to the installer?
I have 3 intel gpus. One for light gaming and desktop use (3 screens), another one for light gaming and one for video transcoding. The experience is flawless for me. One of the cards seems to have issues with qemu and opengl rendering, but it is an older model and is no longer sold retail.
I have an intel/nvida 4080 pc and im running a regular Arch install, rocking KDE on Wayland. It works flawlessly, just installed the drivers and that was that. Stop inventing problems that do not exist.
You can do that now, and for at least the last year.
Very few games don't work anymore, and most that don't are using kernel level anti-cheat or are generally hostile to users anyways (Fortnite and Destiny 2 could work, but they actively block Linux).
I main Fedora with an Nvidia 3080 and haven't had issues for quite some time now.
I'd just go AMD. The drivers there are much more mature due to Google and Valve contributions, and the performance of an 9070 XT is great while being cheaper than the equivalent 5070 Ti. FSR4 is a solid competitor to DLSS and works in any game that supports FSR 3.1.
Anti-cheats won't work, I keep a Windows drive just for Battlefield 6.
I got fed up about a week ago and ditched my Nvidia GPU for a 9070XT.
I run CachyOS and have been having a nightmare of a time on Wayland with my 3D Printer slicer and other tools I use my computer for being unusable.
The only thing that has ever kept me on Nvidia all these years is that they have been killing AMD performance wise for gaming.
The 9070XT is easily performant enough for the gaming I'm doing at the moment, and I can finally ditch the last major headache I've had in two and a half decades of being a Linux user - NVIDIA drivers - good riddance.
I don't play online games other than Helldivers 2 (so anti-cheat is a non-issue) which is working just fine at 70-80FPS max settings in 4K. Also getting good performance with RT off playing Ghostwire in 4K with settings as high as I can get them while staying above 60 FPS with Freesync.
EDIT: 9070XT seems to have a bit of headroom too I got the Asus PRIME OC version; Using LACT I upped the power limit from the stock 317W to 340W and undervolted by -100mv (YMMV on this value) and can get a decent chunk of extra performance out of it.
I'd probably say at least Gold is "reliably click and play without fiddling", so probably we're around 20-50% there right now, if we consider the top 10 games on Steam. Once you start considering top 100 or top 1000, it starts to look a lot better. But still, mainstream games are lagging seemingly.
It has been my experience that this is currently the case. I haven't had to even open protondb or search for a workaround in over a year. The only titles I know that don't work are a handful of multiplayer games that have intentionally disabled linux support.
I'd wager that 95% of Steam titles does run on Linux. Admittedly some big and popular games use invasive anti-cheat that's not supported, but they're less than 5%.
I can run 99% on Linux + AMD + X11, on Ubuntu 24. The only problematic one is Witcher 3 which insists on Wayland which breaks everything else. Even the UT5 titles work well enough, but then again our gaming is not your gaming and you might be more demanding that we are.
I'm trying to recall how NVidia behaved for games, but my daily driver is an old 1050 Ti that's been rock solid for years now, also X11.
I don't even know when I ran into a game that didn't run off Steam on Linux. There's some fiddling gamescope on Wayland to get them to perform well, but most just run out of the box with great performance.
The stuff that doesn't work typically don't work because kernel level anticheats, so a few competitive titles but even in that space many titles still run.
Kinda now. That's what I've been doing for a while now.
I have a PC though, not a laptop. Running CachyOS with 4070Ti, GNOME with Wayland. Even VR works
Many of the replies completely missed the part about Nvidia, sigh.
I unfortunately still see a lot of Proton bug reports that don’t repro on AMD cards. Hoping that improves soon, I’m sure Valve would love to tell hardware makers that Nvidia GPUs are supported.
I've been using 30s and 40s just fine with both nvidia and nvidia-open so every time I see this I don't really understand what card or game we're talking about.
On the other hand when I tried a 6xx0 XT I always ran into an infamous "ring gfx timeout" GPU crash with certain applications on WINE [0]. Ended up giving that card to a cousin.
I have an nvidia card on catchyos with catchyos proton and I have not ran into a single game that does not run, well ok some only walk, but that's also a problem on AMD.
I am excluding games that rely on a kernelmode anticheat.
Games I've played on my Arch Linux desktop with a 4090 in the past few months: Clair Obscur, Disco Elysium, Outer Worlds, Red Dead Redemption 2, Cyberpunk, Dispatch, Silent Hill f, FFVII Rebirth. I haven't had a single issue with any of these games. What games do you think will struggle? I can give them a shot if I own then and let you know how they do.
Hm, I've recently noticed kwin taking up what seems like way too much CPU at idle. Fedora with KDE. Happens on both X11 and Wayland with Wayland being worse and perceptibly slower.
I think for me jetbrains applications cause a memory leak in KWin which actually is becoming less of a problem now that I am switching to neovim slowly but surely.
I still get fairly regular graphical glitches on Bazzite (Wayland) with a 3060ti. Certainly better than it used to be, but doesn’t quite feel there yet.
nvidia on linux [for desktop] is utterly broken.
I ran nvidia cards for almost 15 years (shame on me): laggy X11 compositing, fragile and broken wayland. Broken suspend/resume.
Too many moving parts (selected drivers, modprobe quirks, suspend/resume scripts).
Moved to amd: slick x11, reliable wayland, NO MORE DRIVERS AT ALL, works like charm.
And yes, I do playing in Linux.
Suspend/resume was broken in nvidia since release on aug 2024. I have internal bug id for it. And dozen links with suspend scripts.
No more drivers I mean I don't need to install dozens of packages. While it not big deal by itself, but reverting broken driver is huge deal.
Laggy desktop -- this is my experience until nov 2025 when I dumped nvidia. Desktop on both intel and amd feels like magic after nvidia.
Suspend/resume is broken for my friend with an AMD card right now. That's what I mean: it's broken everywhere in slightly different ways, yes even on Windows. Thankfully I never use it anyway.
Dunno anything about dozens of packages, I installed 1 (one) package from my distro and haven't touched it since, no issues with updates either. That same friend with an AMD card keeps getting random hard PC freezes during gaming though.
Also absolutely zero issues with lags/latency for me (on GNOME. I did experience a bunch of weird bugs with KDE, but again - no lags)
One thing that is very real is DirectX 12 performance. This one really does suffer due to poor nvidia drivers. Hope they iron it out at some point
Which is unfortunately not a good thing when it comes to NVIDIA. "Modern" distros package those for you, which is why I install linux-cachyos-nvidia-open [0] now and previously nvidia-driver-${version} [1] when I was using Pop! OS, both of which worked without a single issue for me from the word "go". My point is: it's not all doom and gloom, there's life to be had and it's not that worse than AMD cards.
Depends heavily on the used hardware AND firmware of the system. I remember having some no-name laptop with a P166-MMX, and Bios from Systemsoft. That thing managed to successfully suspend and resume anything. Be it just to and from RAM, or to Disk in a separate small partition. By anything I mean exotics like NetBSD, FreeBSD, OpenBSD, any Linux I threw at it.
ChromeOS is a far better "Grandma" distribution than Windows or MacOS. Linux is simultaneously both the most Grandma friendly and least Grandma friendly, including every point in between.
You need to compare apples to apples, aka pre-installed vendor supported operating systems. If you're comparing installing an unsupported OS on unsupported hardware, Linux is far superior. Try installing MacOS on a Windows computer or Windows on a Mac if you're truly masochistic.
Are you saying windows and macos do not have any bugs? I have news for you.
Also wevare talking here about archlinux + hyperland compositor, not the typical Fedora, Mint or Ubunti/Zorin distro. Tinkerer's gonna tinker while the other users just use their computer regardless of the OS.
Linux isn't a single OS. It's hundreds of different and weird combinations.
There are Linux distributions that are better than Windows or iOS for grandma to use as well as distributions where you need to be an expert to do anything.
It doesn't matter, your options are either X11 or a Wayland-based compositor, both of them come with their respective headaches that a regular user has NO IDEA how to fix.
To be clearer, as each wayland desktop pretty much creates their own incompatible wayland compositor (because wayland protocol is minimal and not feature complete) this is just a guide to fixing the hyperland broken wayland desktop. Not all waylands' broken desktops.
This is an incomplete list of protocols that aren't part of core Wayland. Compositors implement additional protocols that aren't even part of this process (e.g. wlr-screencopy-unstable). See the wlroota protocols here: https://gitlab.freedesktop.org/wlroots/wlroots/-/tree/master...
Right but there's the xdg-portal for screen capture which runs through Pipewire and supports sand-boxing (because its negotiated over dbus), which all the main compositors support.
Just because a protocol isn't part of Wayland, doesn't mean a standard protocol does not exists.
For most distributions you can simply install the (proprietary) nvidia drivers and you're good to go.
There is generally no tweaking or command line changes necessary for Nvidia to work on Wayland, including multi-monitors with different resolutions and refresh rates.