All-in-one NVIDIA Linux driver with dynamic branch selection, kernel compatibility patching, and optional component split packages.
- nvidia-all
- Vulkan dev drivers : https://developer.nvidia.com/vulkan-driver
- Regular drivers : https://www.nvidia.com/object/unix.html
- Builds current and legacy NVIDIA Linux drivers.*
- Supports proprietary kernel modules and NVIDIA open kernel modules.*
- Detects installed kernels and applies compatibility patches where needed.
- Offers DKMS and regular package variants.
- Supports optional split packages.
- Exposes many build/runtime toggles through customization.cfg.
- Legacy selection path includes additional older series down to 396.
- Custom version input is supported for 396 and newer.
- As of 590, NVIDIA no longer develops proprietary (closed-source) kernel modules. https://archlinux.org/news/nvidia-590-driver-drops-pascal-support-main-packages-switch-to-open-kernel-modules/
- For older GPUs (pre-Turing), proprietary kernel modules remain available via driver 580 and below.
- For 470 users (Kepler legacy context) 470 is treated as a legacy branch and may require extra caution on newer kernels. NVIDIA ended Kepler support updates in September 2024, so an LTS kernel is generally recommended.
- 390 and older series are not supported.
Arch-based (makepkg):
git clone https://github.com/Frogging-Family/nvidia-all.git
cd nvidia-all
makepkg -siAll distributions (install.sh):
Supported: Debian, Ubuntu, Fedora, SUSE/openSUSE — and Arch-based via direct install.
git clone https://github.com/Frogging-Family/nvidia-all.git
cd nvidia-all
bash install.shThe script auto-detects your distribution and offers two install modes:
- Direct install - installs driver files directly onto the system.
- Package build - builds a native package to
dist/<distro>/.
After a package build, install the generated packages:
# Debian/Ubuntu
sudo dpkg -i dist/ubuntu/*.deb
# Fedora
sudo rpm -i dist/fedora/*.rpm
# SUSE
sudo zypper install dist/suse/*.rpmIf your setup needs it, consider a pacman hook for DRM mode setting: https://wiki.archlinux.org/title/NVIDIA#DRM_kernel_mode_setting
cd nvidia-all
git pull
bash install.sh
# or
makepkg -siThen follow the prompts as before.
The exact package names can vary by branch and options (for example open/dev, series suffixes, dkms vs regular, lib32, split components).
List installed nvidia-all packages first:
pacman -Qq | grep -E 'nvidia.*-tkg'If the list looks correct, remove the matched packages:
pacman -Qq | grep -E 'nvidia.*-tkg' | xargs -r sudo pacman -RddFor open DKMS path (Turing or newer only):
sudo pacman -S \
nvidia-open-dkms \
lib32-nvidia-utils \
lib32-opencl-nvidia \
nvidia-settings \
opencl-nvidia \
nvidia-utilsFor proprietary DKMS path:
sudo pacman -S nvidia-580xx-dkmsAfter installing the drivers provided by your distro everything should function as normal after a reboot.
List installed nvidia-all packages:
# Debian/Ubuntu
dpkg -l | grep nvidia-tkg
# Fedora/SUSE
rpm -qa | grep nvidia-tkgRemove them:
# Debian/Ubuntu
sudo dpkg -r <package-name>...
# Fedora
sudo rpm -e <package-name>...
# SUSE
sudo zypper remove <package-name>...Then reinstall the NVIDIA driver provided by your distro.
DKMS is usually recommended because it rebuilds modules automatically when kernels update.
Choose regular packages only if you specifically want prebuilt non-DKMS modules for your workflow.
The main user-facing configuration lives in customization.cfg.
External options can be placed at ~/.config/frogminer/nvidia-all.cfg to automatically apply them.
Prebuilted distro packages are written to /nvidia-all/ and can be installed from there.
Build logs and environment snapshots are written under logs/.
When prompted for driver version:
- Select custom version entry(6).
- Select branch group (stable/regular beta or Vulkan dev).
- Enter desired version number.
- Select DKMS or regular modules.
Version format examples:
- Vulkan dev style: 415.22.01
- Regular style: 415.25
Rebuild so the script re-detects currently installed kernels and reapplies relevant compatibility logic.
NVIDIA modules should be built with the same major GCC/Clang version used for the kernel and not mixed between different compilers. Align your toolchain or rebuild kernel/modules consistently.
Hardware and OEM implementations vary. If needed, use dedicated hybrid tooling and consult NVIDIA PRIME render offload documentation.