cross-posted from: https://lemmy.world/post/16149785
Cross-posting here for more opinions.
Gentlemen, just for context, I usually use Linux. I have been a user of Debian, Ubuntu, and Fedora for a few years.
Recently, I acquired a decent graphics card (GeForce RTX 4070) and decided to uninstall my Windows and install Linux.
I saw that Pop!_OS already has an image with everything pre-configured for Nvidia. Is this pre-configuration worth it, are the games more stable on this distribution, or is it the same as manually installing Nvidia’s proprietary drivers on Manjaro?
Pop!_OS by far.
Note that NVIDIA ships proprietary, out of tree drivers.
No Linux Distro really supports NVIDIA as they cannot fix the drivers, as they are proprietary.
Manjaro is weird semi-rolling with a criticised mechanism of holding back packages without real testing (which might be outdated info).
PopOS is based off Ubuntu LTS, a stable distro and the most common Linux variant.
Stable distros will not break the NVIDIA stuff. NVIDIA doesnt care about rolling release etc, and Distros need to not break it, as they can package them but not fix them.
Yes, Bazzite using Fedora Atomic is very nice through the inherent stability of the OS distribution model.
But they rely on rpmfusion, an external repo packaging the proprietary NVIDIA stuff for Fedora. The repo is not supported by Fedora, and the drivers cannot be fixed by anyone.
Keep that in mind. NVIDIA sucks.
What does “out of tree” mean and imply?
The tree refers to the Linux kernel Git repo. On Linux normally all drivers are in there.
I think that is a pretty crazy concept, but it kinda gives trust and if it is in there is will likely not break.
Out of tree means the driver is not compiled in (like BTRFS on RHEL distros) or cannot even be included as it is proprietary or else (NVIDIA, Displaylink, Virtualbox).
These drivers are added locally using
kmods
ORakmods
, I dont know the difference and never used it.uBlue adds some drivers during the build process which is pretty cool. So even though it is out of tree, it gets centrally included and if it breaks you dont get the update.
Hmm… Why is this so much more difficult on Linux than Windows then? On Windows I just updated the driver through the GeForce Experience thing (which is annoying just because it requires a sign in). What am I missing?
Windows is a single OS, with a LOOT of late stage capitalist market monopoly. It is a single OS.
Also the drivers on Windows are not in the kernel, which I think is actually a pretty good thing for security.
But as userspace is always different in the various Linux Distros, vendors just stopped doing that, which is a shame.
Ah okay, I see now. Isn’t the term microkernel or something? But yes, I do remember hearing everything was in the kernel for Linux (even prior to this discussion).
https://www.youtube.com/watch?v=Quh3FauAaWE
Here is an alternative Piped link(s):
https://www.piped.video/watch?v=Quh3FauAaWE
Piped is a privacy-respecting open-source alternative frontend to YouTube.
I’m open-source; check me out at GitHub.
Yes minix, hurd, RedoxOS are all (using) microkernels.
Most projects didnt succeed but RedoxOS is interesting.
Not sure what you’re trying to say here. Would you mind elaborating? FWIW, Bazzite’s model (by default) allows automatic fixes to be applied to a broken driver without requiring any manual intervention from its user.
If you get an update, and after that update your system doesnt graphically boot anymore or something, you can use
sudo ostree admin pin 1
andrpm-ostree rollback
to switch back to the working version and make sure it never disappears.Then you can wait for a next update (still no good update info mechanism afaik) to fix it, try it, unpin the saved version and go on.
But there is no automatic repair voodoo anywhere, on any distro. That driver is proprietary, only NVIDIA can fix it. rpmfusion packages it to work on Fedora, Fedora Atomic helps making this very unstable mechanism more failsafe.
But you are still relying on 3 entities (NVIDIA, rpmfusion, Fedora, (uBlue)), with NVIDIA not caring about Linux that much, instead of 1 (Fedora) like with AMD, where drivers are FOSS and can be adapted for Fedora specifically.
AMD does not opensource a lot, and ROCM or the entire amdgpu-pro driver is a similar situation. But at least the basics work.
Consider to revisit this, cuz this is basically (at least for me) most of uBlue’s schtick:
“No more building drivers on your laptop, dealing with signing, akmods, third party repo conflicts, or any of that. We’ve fully automated it so that if there’s an issue, we fix it in GitHub, for everyone.”
And the way it’s setup, is so that you don’t get the broken update ever on your device in the first place.
So, contrary to what you might expect, this black magic (or just excellent engineering) somehow does exist.
uBlue does not repair anything, they dont automatically detect a broken driver on your system and block an update.
This would be possible, but slow down boot (running some GPU benchmark on every boot via a systemd service, if it fails run the commands that I mentioned).
rpm-ostree is awesome, and has the potential to do that.
In theory yes, but this would mean uBlue is some kind of stable distro. I dont know, at least their base images just get updates.
Their big advantage is that they dont have the legal restrictions, so they can ship 1:1 the system you run. I dont know if they do, but having some automated benchmark tests on real hardware with these devices would be useful.
But that costs a lot of money. uBlues trick is that they can run their whole huge project for free on Github.
But for sure, the dependency issues will not occur. But this does not guarantees that there are no issues on bare metal.
Or a stable branch, Bazzite was longer on F39 for example. I use the
:latest
branch which automatically gets upgraded to the latest version, which they determine. So having an:testing
branch that is up to date, and slowing down the releases of the latest branch, could help.I think we’re misunderstanding eachother. So perhaps consider to outline if you agree with the following:
testing
branch; even Bazzite has.Yes agreed.
I didnt know they have testing images, but makesbsense in their flagship variants.
I miss the old website with the full image list.
Thank you for contributing so that people don’t misunderstand!
You can verify it yourself from here.
Though, with all that’s mentioned above; do you still think Pop!_OS is better than Bazzite for Nvidia?
I dont know.
“Traditional” / “package based” / “messy” distros suck a bit. The big issue is doing insane stuff like the kernel mod stuff on the user side, which leads to sooo much pain.
But as far as I know, NVIDIA just supports enterprise distros. The community distros build the packages, but the binaries are not compiled for newer distros. So using non-LTS Ubuntu etc may result in breakages. Especially when using newer kernels.
I dont know a lot of how drivers depend on userspace programs, it is likely only dependend on the Kernel.
I also look forward to CentOS-bootc, which is a bootable OCI container for CentOS-stream. Like the uBlue Containers or the OCI containers for Fedora built on Gitlab, used by uBlue.
I didnt know that, but uBlue uses random OCI container builds by Fedora for all their stuff, that Fedora doesnt even officially use themselves.