nVidia Drivers

Kalpa is a Wayland only Linux Distribution. This means nVidia GPUs and drivers not supporting Wayland are not going to work!

Attention: Follow every step carefully as the installation may otherwise end in an unbootable/broken system, with broken auto updates or missing display output. Also throughout this guide please reboot only if this has been explicitly stated.

Determine supported driver driver package

It is important to determine the supported driver version first. The easiest way is by looking up nVidias driver download page. Do not download the nVidia Installer from there as it will not work with Kalpa.

If you know the micro architecture of your GPU the following should work with Kalpa:

The best experience you will have with Turing and newer as these GPUs can also make use of nVidias open kernel module.

Setup system

Before we can begin with the driver installation it is important to do the following config changes first.

Setup zypper

This is important to not break Kalpas auto update as the nVidia driver packages requires the user to agree with the nVidia EULA. As the automated update is running in the background no user interaction is possible here.

Setup transactional-update

This is important as the nVidia repository signing key might change at any given time. If the system dose not import the key by itself the auto updated might break at any given time and/or the health checker might run havoc and cause the system to permanently reboot.

Add nVidia driver repository and install driver

Still in Konsole run sudo transactional-update pkg in openSUSE-repos-MicroOS-NVIDIA

G06 with open source Kernel module

Recommended for: Turing, Ampere, Ada Lovelace, Blackwell

Install the driver using:

sudo transactional-update -c -i pkg in nvidia-open-driver-G06-signed-kmp-meta
version=$(rpm -qa --queryformat '%{VERSION}\n' nvidia-open-driver-G06-signed-kmp-default | cut -d "_" -f1 | sort -u | tail -n 1)
sudo transactional-update -c -i pkg in nvidia-compute-utils-G06 == ${version} nvidia-persistenced == ${version} nvidia-video-G06 == ${version}
sudo transactional-update -c initrd

Reboot. The driver should work right away.

G06 with closed source kernel module

Recommended for: Maxwell and Pascal

Installing the driver can be done using: sudo transactional-update -c pkg in nvidia-driver-G06-kmp-default nvidia-video-G06 nvidia-gl-G06 nvidia-compute-G06

The driver will not load yet if you have Secure Boot enabled. Continue with secure boot below after you have rebooted the system.

Secure boot

For G06 with the open kernel module this step is not required as the open module is already signed by the systems own secure boot keys.

With the closed source driver module the MOK (machine owner keys) have to be manually enrolled in order for the driver to get loaded. To do so run:

G06 with closed source kernel module: sudo mokutil --import /usr/share/nvidia-pubkeys/MOK-nvidia-driver-G0<X>-<driver_version>-<kernel_flavor>.der and provide an easy to type and remember password as we will need it at the next reboot.

Optimus

For Laptop users which do have an integrated and a dedicated (presumably nVidia) GPU, also called Optimus Laptop, may want to read the following.

Offloading

To offload an application or game to the dedicated nVidia GPU it is required prefix the launch command with a few environment variables to make them run on the nVidia GPU:

For Steam you can add the following as a game launch option for example: __GLX_VENDOR_LIBRARY_NAME=nvidia __NV_PRIME_RENDER_OFFLOAD=1 __VK_LAYER_NV_optimus=NVIDIA_only %command%

You can verify this by running nvidia-smi from Konsole and see if the requested application is listed in the Processes table at the bottom of the screen.

Power management

If the nVidia GPU is of the Pascal (GTX 10) or older micro architecture it is recommended to install additional software, as these GPUs stay powered on if not in use. To forcefully power them down or up install prime-select and bbswitch as follows:

sudo transactional-update pkg in bbswitch-kmp-default suse-prime After the next reboot also enable the prime-select service as follows: sudo systemctl enable --now prime-select.service

To set which GPU should be used at boot time run: sudo prime-select boot intel|offload. The intel mode will also work for integrated AMD iGPUs.

To switch the mode on-demand you can run: sudo prime-select intel|offload log out and in again. The nVidia GPU should now be powered on or off and the driver loaded or unloaded depending on which mode has been chosen.

Note: Only use intel or offload with out the pipe Note 2: The nvidia mode does only work on X11 which is not supported on Kalpa

Additional notes about driver support

nVidia installer: Do not use the driver installer provided by nVidia it does not work with Kalpa as it does not expect a Linux distribution to be immutable and will therefore write certain files into the wrong directories as well as DKMS will fail to generate the kernel module. 390 or older: These drivers will not work with Kalpa 496.44 or newer: Recommended by KDE for Plasma 6 with Wayland 555.58 or newer: Is recommended for the best possible Wayland experience with the proprietary nVidia driver. As these driver series and newer contain a lot of improvements and tweaks to work best with Wayland.

Troubleshooting

Reset driver installation

In case of an issue with the driver you can reset the driver installation and start from scratch by running:

sudo transactional-update run "rpm -e $(rpm -qa | grep -e ^nvidia -e ^libnvidia | grep -v container)"
sudo reboot

Report Bugs

If you encounter any errors with teh nvidia driver after the instalaltion was successfull please report them to nVidia directly following these steps: nvidia - How to report a bug