The NVIDIA driver the hard way
I recently installed the Nvidia driver on one of my systems. Because it is running opensuse Tumbleweed, I had to install it the hard way.
It actually was not very hard at all. So I thought I would describe what I did.
The Wiki page
I started with the relevant opensuse Wiki page:
That pointed me in the right direction. So let’s go through the various steps.
The first listed step is to install the dependencies. There was nothing to do here, for I already had installed those. While installing opensuse from the DVD, I always check the section “Base Development” in the software selection. You can also find that in Yast software management, when you select the “Patterns” view. The base development group of packages includes the compiler and most of the standard development tools. These days I don’t compile very often, but I find it useful to have those basic development tools available.
In addition, the kernel-devel package is needed. While installing, I normally click on (but don’t select) “Linux Kernel Development” in the patterns view. And there I select “kernel-syms” which brings is “kernel-devel”. It is also possible to just search for “kernel-devel” and select it. This package includes needed header files for compiling drivers.
Download the driver
This was actually the hardest step for me, but not at all hard. The wiki page gives the link to the Nvidia download page. And from there, you have to find which driver you will need for your Nvidia graphics card. You will need to know which card you have. In my case, it is the GeForce 6150 LE.
I made the mistake of downloading the 32bit installer, when I should have download the 64 bit installer. My first attempt at an install gave me an error message about that, so I downloaded the 64 bit installer and tried again. The installer for my card is “NVIDIA-Linux-x86_64-304.88.run” but that is probably wrong for your card. So do check what the Nvidia download page tells you.
Once downloaded, I copied that file to “/usr/local/src” (which required being the root user).
I made a few mistakes in the install, but none were serious.
I logged out of KDE, and used CTRL-ALT-F1 to get to a virtual terminal. And there, I logged in as root.
I then ran the command:
I typed it just that way. It isn’t necessary to type in the full name, as long as the abbreviation is unambiguous.
The error message told me that a graphic session was running.
I ran the command
to switch to init level 3, or actually to the simulation of that by systemd. That stopped the graphic session from running, but did not affect my terminal login.
I ran the installer again (same command). This time it asked a few questions, did some work, and looked as if everything was going well. Then it told me that the system was configured to use the “nouveau” driver, and offered to fix that. I agreed. A little more chugging away, and then it reported failure.
I figured that the nouveau driver was the problem. So I rebooted, now that loading nouveau should have been blocked. The graphics on reboot was poor (probably using “nomodeset”). But, never mind.
I again used CTRL-ALT-F1 to get a virtual terminal, ran “telinit 3” to shutdown the graphics display software, and ran the installer again (same command as before). This time it ended with success.
I then rebooted, and the system came up in graphics mode using the nvidia driver. And that seemed to work very well.
A few days later, there was a kernel update for Tumbleweed. I expected problems for the nvidia installer does things that are dependent on the kernel version.
I rebooted after the kernel update. And the system came up only in CLI mode (or terminal mode, no GUI). I logged in as root, ran the installer again. And that fixed everything for the new kernel. I’ll have to repeat that for every kernel update.
Overall, that was not particularly hard.