New open source Nvidia driver disabling to use proprietary driver in OpenSUSE Leap 15.3
Recently I decided I wanted to give OpenSUSE a try, as it has been almost ten years since I ran it on my home system for over an hour or two for testing, and I have fond memories. for its stability, its great implementation of the KDE Plasma desktop environment and the super supportive community behind it. So I pasted the ISO Leap 15.3 onto a flash drive, booted into the real environment, and installed; it went off without a hitch and was as easy as it gets.
But, before we get to the problem I faced and the resolution, let’s take a look at a few details.
What is OpenSUSE Leap? Tumbleweed?
OpenSUSE is a community-created and sponsored distribution by SUSE, with many built-in SUSE technologies.
As of the end of 2015, OpenSUSE, in essence, has split into two versions, Tumbleweed and Leap, rather than being a singular version. Tumbleweed is a progressive release model, receiving the latest cutting edge updates as soon as they are ready … While Leap is a more typical annual release model with intermediate security updates.
My decision to go with Leap, rather than Tumbleweed, is simply for maximum stability. While Tumbleweed is said to be fairly stable, and users only experience a major breakage every year or two at most … these are still breakages that I don’t want to have to fix, that I haven’t dealt with. directly caused because of my own mistakes. If I break Leap, I know it’s my fault.
- AMD Ryzen 5 3500x
- Gigabyte NVIDIA GTX 1660 Super
- 16 GB DDR4 3000Mhz
- KDE Plasma environment
While installing OpenSUSE Leap, I saw no option to use proprietary drivers for my GPU, out of the box … which makes sense, OpenSUSE mainly focuses on open source software , although there are community repositories that provide access to a plethora of proprietary packages. Instead, the system is installed using the New Driver, which is an open source driver designed for NVIDIA hardware.
However, this Nouveau driver was not working well with my system, and I found myself unable to reach a graphical login screen and see messages indicating that Nouveau had expired. Also, I am using full disk encryption and found out that entering my password was a nightmare because after I had already typed it twice (once for my system partition, once for my partition from exchange), I typed a third time to mount my system but found that there was an incredibly long entry delay of over 30 seconds per button press. I also attributed this to the hanging of Nouveau and the cause of trouble.
The first step I took was to turn off all forms of graphics acceleration / video drivers and run them in pure software mode, so that I could at least access my desktop / graphics environment. To do this, I added the ‘nomodeset’ option to my start line in my grub installation. To do it yourself:
- On your GRUB / GRUB2 menu screen during startup, press E on the menu entry (such as OpenSUSE) that you want to modify.
- Find the line that starts with either linux Where linuxefi, and add set of nomodes until the end, after the quiet splash option.
- Press CTRL + X to start.
Then, after reaching the desktop, open the YaST control center application by clicking on the launcher in the Applications menu, navigate to System, and click YaST.
From YaST, select Software repositories, Click on add, select community repositories, and select the NVIDIA repository.
You will now be able to access NVIDIA drivers. Then, from YaST, select Software management, and you should see that the NVIDIA drivers have already been selected because YaST will detect your hardware. Otherwise, select the following packages to install, assuming you are using an NVIDIA Geforce 600 series GPU and newer:
- nvidia-calculG05 – NVIDIA driver for computing with GPGPU
- nvidia-gfxG05-kmp-default – NVIDIA graphics driver kernel module for GeForce 600 series and newer
- nvidia-glG05 – NVIDIA OpenGL libraries for OpenGL acceleration
- x11-video-nvidiaG05 – NVIDIA graphics driver for GeForce 600 series and newer
- kernel-firmware-nvidia – Kernel firmware files for Nvidia Tegra and graphics drivers
Uninstall the xf86-video-new package, then restart your machine to complete the process.
While not too difficult for Linux connoisseurs, something like this might be enough to throw a new user completely into a loop and scare them off using an amazing system like OpenSUSE. Fortunately, YaST is powerful, easy to use, and a lot of OpenSUSE related documentation is also available online!