Stop asking simple users to install the unfriendly .run file

Hi.
It is a fact that the .run file installer driver for linux that nVidia provides is very unfriendly. You can google the hundreds of problems that people have when trying to install .run file. Also you can search the hundreds of tutorials that exist to try to successfully install .run file. Yes, people need a tutorial to install a driver (crazy), and many times even following a tutorial not prevents you from breaking your system.
I break Kubuntu, Mint and Fedora when trying to install the .run file. I must be very stupid…

So I have the feeling that nVidia does not give correct support to people who do not install the driver using official .run file. So you tell me so I can know what brand of graphics card will be my next GPU for Linux: Is nVidia properly supporting Linux users if they install drivers with unofficial binaries and not .run file provided by nVidia?

People spend a fair amount of money on these graphics cards. You (nVidia) must provide your developers with the correct testing environments with the installation of the most common Linux distributions (they are not more than 5, hopefully). So nVidia developers are the ones that should properly test distributions packages, not users breaking their system with unfriendly .run file. And in addition nVidia developers should create a channel to always be in contact with driver packagers of each Linux distribution, to inform them correctly about the new changes the driver had.

One more thing: Many thanks to Linux packers for making the installation of the nvidia driver simpler.

That’s all, thanks for reading.

Exactly.

All these distros have their own packages with binary NVIDIA drivers - this .run file is intended only for power users who understand how these drivers work and get installed.

NVIDIA has no manpower or financial resources to support literally several thousands of distros out there. Ubuntu alone, considering the number of supported distros and their kernels, can easily reach hundreds of combinations! Hundreds!

It’s not NVIDIA’s business to participate in this madness. They provide drivers more or less in a timely fashion. Sometimes they are a tad late in regard to supporting new kernel releases. However again it’s not NVIDIA’s fault that Linux developers break kernel APIs/ABIs every release, i.e. roughly every three months. No other popular OS is as crazy as Linux/GNU.

If you are not content with this situation leave Linux for Windows/FreeBSD/Android/whatever.

/Thread.

NVIDIA mentions distro specific packages on the driver download page, but I guess most people will miss it.

Most likely people download the installer, don’t know what to do with it and Google it. Then they will find distro specific instructions.

I agree on most of your points, except the political one, if the driver (kernel components which are opensource already, but technically only partially free) went full GPLv2 only and somebody at nvidia tried to push kernel module component upstream then there wouldn’t be problems with APIs breaking. After all, these are not userspace APIs and kernel community doesn’t care about their stability since all it takes for refactoring the code is one semantic patch applied over the whole kernel tree and whoever makes changes gets to fix them. Not sure how realistic this is, it would sure require some initial effort and might have met with resistance from kernel developers who have “fck nvidia” attitude for historical reasons (cuz fuck nvidia), on the other hand in long term it would lessen the burden on both nvidia and distro package maintainers who get to fix this shit every goddamn kernel/driver release.

Windows is way more crazy than linux actually, especially with all the madness with windows 10 lately.
On the other hand considering how many users use it, I wouldn’t be surprised if nvidia had a team of dozen employees just fixing windows quirks.

@YAFU You have triggered birdie, run you fool. :-D

Come on, let’s be serious!

Regardless of derivatives, there are at most 5 distros covering 98% of stupid users like me with potential problems when installing .run file. And I can think four for now: Ubuntu (or Mint), OpenSUSE, Fedora

But I’m not even asking for nvidia support directly to those distributions. I ask for better communication between nvidia developers and distros packagers. How difficult would it be for nvidia to create an appropriate channel to be in touch with distro packagers? That way discuss modifications in kernel, new nvidia modules that must be loaded, etc.
I also ask that nvidia developers have installations of those 4 or 5 distributions with the driver installed from official packages, to do tests. It’s not very difficult, stupid users like me are able to have multiple linux installations.

There are literally hundreds of distributions. How do you think Nvidia will work with all of them? What other hardware developers work with distributions directly? It you think that’s the case, then you are very delusional about how software industry works.

Today, you don’t have to tuch nvidias installer ever, which actually is quite easy to use. Just use whatever distribution you like and install through whatever package manager of choice. I am using Arch, and nowadays at least in Arch, things are so well automated that every new kernel update will come with updated nvidia drivers as well.

World of *nix, unlike “other popular os”, is not a centralized world. People are doing different things on common ground because they want to do different things. Nobody forces you into their way, it’s a free will. In *nix world there is no one way to manage software distribution, but it’s rather a synergi of technologies and humans working together to achieve final goal. If you dislike the way things work, you can always trade in your private life and become a money making cattle in exchange for different service that some “other popular os” offers which you might perceive as some kind of quality. If a “stupid users like you” are able to waste their time with multiple linux installations, then I am quite sure they can waste few moments to learn how to properly install a driver.

As a Linux user I am totally agree with birdie.

And I can tell that it is almost useless (for a “dumb user”) to deal with the .run files because all major distributions which are covering 98% of the users have their “non-free” or 3rd party repositories which include compiled, ready to install proprietary drivers of all type. And what is making the situation even easier - most of these repositories and the packages in them are compatible with (all) the base distro derivatives. No even single need of complain about anything.
And despite the popular belief, according to me nVidia is doing a great job for the Linux support.

YAFU, just as a matter of fact AMD drivers are also shipped as a .run files from their site.

Still with that story of the “thousands of Linux distributions”…
I am going to asume merely convenient readers, or bad readers. Because I’m the only stupid here…

The problem I posed is not related to the possibility of installing the driver with distro packages. The problem is that when you pose a problem in the forum and you install the driver with distro packages, the first request you receive from the nvidia developers is that you test with .run file then. So if you do not tell them that you have tested with .run file, the second thing that nvdia developers say is that it is not an nvidia problem, it is a distribution problem or the software you use (Blender in my case). All this without even bothering to do a test themselves.

@HotMusicFan. The problem here is not the ‘.run’ file, the problem is the “unfriendly” .run file. Just mention that the last time I tried Catalyst it had a GUI and it was not necessary to kill the graphics server to install it. Anyway I do not care at all what AMD does, I put my money in nvidia when I buy my nvidia card for Linux.

And neither do I want to get out of the topic and what I’m asking for nvidia developers: Create an appropriate channel to be in touch with top distro driver packagers and discuss driver related issues. Install that couple of most used Linux distros and do testing with distro packages.

This has never been the case. All NVIDIA usually asks is nvidia-bug-report.

Also there’s basically zero difference between installing NVIDIA drivers manually via *.run file or via your distro. The end result is the same libraries and the same kernel module.

If someone from NVIDIA specifically asked you to install their drivers manually - you can safely ignore their request. It was an error.

If you have a problem with Blender, try reproducing it in Windows 7/10.

If it’s reproducible, then ask at GeForce Forums.
It it’s not reproducible, attach nvidia-bug-report and bump your topic once in a while. It will help tremendously if you find people who experience the same problem. Bug reports filed by single individuals are often ignored.

Come on, bridie. You look at this thread that I started:
https://devtalk.nvidia.com/default/topic/999074/linux/378-13-kubuntu-i-can-not-use-cuda-if-intel-is-selected-in-prime-from-nvidia-settings/

You read that thread carefully from the start, and you also see that the creation date of this thread is earlier than this other thread. I knew in advance that they were going to ask me for .run file. I am not a fortune teller, I knew this because it is very common for this to happen.

And I’m not sure there is zero difference in installing .run file compared to installing from distro packages. You see here:
https://bugs.launchpad.net/ubuntu/+source/nvidia-graphics-drivers-331/+bug/1361207

Maybe sometimes the distro packagers screw up, or forget to create the correct routine to load certain modules (or new modules they do not know), or install dependencies, or whatever. That’s why I’m asking is that nvidia developers create a channel for better communication with packagers. And have installations of those couple of the most popular distros to do tests.

*When I say nvidia-developers, I mean developers or moderators, or support people. Because I have seen request .run file installation to all of them.

*And I’m not going to continue that other thread, I know how it always ends. I’m sure it’s not a Blender problem. And if you said that nvida does not have the resources to give some support, you imagine in comparison the poor resources that have the humble Linux distributions.

Again whoever asked you to install NVIDIA drivers directly did that mistakenly.

It’s nigh impossible to screw up NVIDIA drivers and I’m 100% sure Ubuntu didn’t.

Nah, don’t do that. Push nvidia to open their drivers. That’s where you want to start, YAFU, if you want to effect change. The disconnect isn’t between nvidia and package maintainers, but between nvidia and kernel developers.

Hmm…
Gentoo patch files: https://gitweb.gentoo.org/repo/gentoo.git/tree/x11-drivers/nvidia-drivers/files

I’m sure Ubuntu didn’t either but phew, your assertions make me worry for the safety of the newbies. Besides, there’s already talk of Ubuntu’s hardware enablement kernel causing headaches: https://devtalk.nvidia.com/default/topic/1001959/linux/geforce-378-13-driver-incompatible-with-ubuntu-16-04-02/ (one post to which you even responded: https://devtalk.nvidia.com/default/topic/1000169/378-13-driver-is-not-compatible-with-ubuntu-16-04-2-lts-linux-4-8-kernel-based-/#5110354) though I’m sure this isn’t actually Ubuntu’s fault but instead the usual not-keeping-pace-with-kernel-development on nvidia’s part.

I see patches for games’ profiles and patches to support new kernels.

IOW Gentoo provides more or less pristine NVIDIA drivers.

You cannot push NVIDIA towards open source unless they see an opportunity to earn either more money or market recognition ( = money in the end since more people respect them and eager to use their products).

Kernel portion of the driver is already opensource, user-space part is not (libGL, libGLX, …).

I personally don’t have a dog in open-sourcing all of it debate, but it would be nice to have kernel-side modules upstreamed. On one hand there wouldn’t be much difference, but kernel support would be much better and I personally wouldn’t have to maintain/write patches every time new RC release refactors some kernel function changes.

Whoever breaks something gets to fix fallout in kernel, but since nvidia isn’t “in kernel”, we have to wait for nvidia folks to fix it in new driver release which by the way takes anywhere from few weeks up to 10+4 weeks (kernel + nvidia release cycle) presently. Alternatively, we do it ourselves - [1], [2]
[3], [4], …

Another annoyance that hits even normal users is that external kernel module “taints” the kernel, which means that nvidia users get “voided warranty” and nobody on kernel bugzilla or mailing list cares about your bug reports if you have nvidia driver loaded in (even if they are unrelated to nvidia code itself).

Both problems could be solved if kernel side of the driver got upstreamed, not sure why nobody haven’t pushed for this as far as I know. Probably because kernel people and nvidia people aren’t playing nice with each other historically, but there might be some other reasons as well.

How would you upstream the nvidia linux kernel module when only part of it is opensourced, while the other part if a blob no one can inspect?