The safest way to install NVIDIA drivers on Linux for gaming is to use your distribution’s own packages instead of the installer from the vendor’s website. On Ubuntu-based systems that means the built-in driver tool, on Fedora it means the RPM Fusion packages, and on Arch it means the nvidia or nvidia-open packages, followed by a reboot and a quick check with nvidia-smi.
- Check Your GPU and Current Driver First
- Choose the Right Driver Type
- Installation Paths by Distribution
- Step-by-Step: A General Procedure
- Handling Secure Boot
- Gaming-Specific Setup
- Distribution Notes in More Detail
- Troubleshooting After Installation
- Common Mistakes
- Before You Install
- Related guides
- Frequently Asked Questions
This guide walks through the choices that matter: which driver branch fits your card, how to handle Secure Boot, which extra libraries Steam needs, and how to confirm everything works. Package names and supported GPU lists change between releases, so verify against your distribution’s documentation and NVIDIA’s current support notes before running any command.
Check Your GPU and Current Driver First
Before changing anything, find out what you have. Open a terminal and run lspci | grep -i nvidia to list the card, and nvidia-smi to see whether a proprietary driver is already loaded. If nvidia-smi reports a driver version, you may already be set. If the command is missing or errors out, the open-source nouveau driver is probably in use, which works for the desktop but performs poorly in games.
Choose the Right Driver Type
Proprietary Closed Module
This is the long-standing option. It supports a wide range of cards and is what most guides assume.
NVIDIA Open Kernel Modules
NVIDIA now ships open-source kernel modules for newer GPUs, generally Turing-era (GTX 16 series and RTX 20 series) and later. The newest GPU generations may require the open modules, so check NVIDIA’s current documentation for your card. Your distribution may offer packages named with “open” in them.
Legacy Branches for Older Cards
Older GPU generations have been moved to legacy driver branches, and support for them keeps shrinking. If your card is several generations old, look up which branch your distribution still provides before assuming the latest driver will work.
Nouveau
The open-source nouveau driver is fine for basic desktop use, yet it usually lacks the performance and features needed for modern games and Proton.
Installation Paths by Distribution
| Distribution family | Recommended method | Extra step |
|---|---|---|
| Ubuntu and derivatives | Run ubuntu-drivers devices, then install the suggested package, or use the Additional Drivers tool | Reboot; enroll a key if Secure Boot is on |
| Fedora | Enable RPM Fusion nonfree, install the akmod-nvidia package | Wait for the kernel module to build before rebooting |
| Arch-based | Install the nvidia or nvidia-open package with nvidia-utils | Add lib32-nvidia-utils for Steam and 32-bit games |
| Debian | Enable the non-free repository, install the nvidia-driver package | Reboot after the install completes |
Step-by-Step: A General Procedure
- Update your system fully and reboot so you run the newest installed kernel.
- Identify your GPU and read your distribution’s NVIDIA page for the current package names.
- Enable any needed repositories, such as RPM Fusion on Fedora or non-free on Debian.
- Install the driver package and the matching 32-bit libraries if you use Steam.
- If Secure Boot is enabled, enroll the module signing key when prompted (see below).
- Reboot, then run nvidia-smi to confirm the driver is loaded and the GPU is detected.
Handling Secure Boot
With Secure Boot enabled, the kernel will refuse to load an unsigned NVIDIA module, and you may end up at a black screen or on nouveau. Many distributions handle this by prompting you to create a password and then enroll a Machine Owner Key (MOK) at the next boot. Follow the blue enrollment screen carefully. If you would rather skip it, you can disable Secure Boot in firmware, though that lowers one layer of boot security.
Gaming-Specific Setup
32-Bit Libraries
Steam and many Proton games use 32-bit components. Without the 32-bit NVIDIA userspace libraries, games can crash on launch or fall back to software rendering.
Wayland and Kernel Mode Setting
Wayland sessions rely on kernel mode setting for NVIDIA. Recent drivers and distributions often enable it by default, but if your session misbehaves, check your distribution’s guidance on the nvidia-drm modeset parameter.
Hybrid Laptops
Laptops with both integrated and NVIDIA graphics use a switching setup. Games must be told to use the discrete GPU, either through a PRIME offload option set in Steam launch options or through your desktop’s settings. Read your distribution’s hybrid graphics page.
Vulkan and Proton
The proprietary driver includes Vulkan support, which Proton relies on. Confirm it with the vulkaninfo tool if a game refuses to start.
Distribution Notes in More Detail
Ubuntu, Pop!_OS, and Mint
These systems detect your GPU and offer a recommended driver. The Additional Drivers window or the ubuntu-drivers command lists the available versions. Pick the one marked as recommended unless you have a reason to choose another, and choose the open variant only if it is listed as appropriate for your card. Pop!_OS ships a separate ISO with the driver already included, which removes this step entirely.
Fedora
After enabling RPM Fusion nonfree, install the akmod-nvidia package. The akmod system compiles the kernel module for your running kernel, and it takes a minute or two. Check that the build has finished before rebooting, for example by looking for the module with the modinfo command. If you want CUDA or video encode support, additional packages exist in the same repository.
Arch and Derivatives
Install the driver package that matches your kernel. The standard nvidia package targets the default kernel, while a dkms variant works with custom kernels. Add nvidia-utils and lib32-nvidia-utils, and enable the multilib repository for 32-bit support. Make sure the initramfs is regenerated after installation if the guide for your setup says so.
Debian
Debian keeps proprietary drivers out of its default repositories, so you add the non-free components and non-free firmware sources first. The nvidia-driver package then installs the kernel module through DKMS. Because Debian’s stable branch moves slowly, its driver version can be older than the newest release, which is usually fine for gaming on supported cards.
Troubleshooting After Installation
- nvidia-smi says it cannot communicate with the driver: the module did not load. Check the system log for signing errors, confirm Secure Boot status, and verify the module matches your running kernel.
- Games run slowly: confirm the game is using the NVIDIA GPU and not integrated graphics or software rendering. On laptops, set the offload variable or use the desktop’s discrete GPU option.
- Screen tearing or flicker under Wayland: update the driver, check the modeset setting, and consult your desktop environment’s notes on NVIDIA support.
- Steam shows a missing library error: install the 32-bit NVIDIA userspace package for your distribution.
If a driver update ever leaves you with a black screen, switch to a text console, remove the driver packages, and reinstall them. Keeping an older kernel installed gives you a fallback boot option.
Common Mistakes
- Running the vendor’s standalone .run installer on top of distribution packages, which can leave the system in a broken state.
- Rebooting before the kernel module has finished building on distributions that compile it on install.
- Forgetting the 32-bit libraries and then blaming Steam when games will not launch.
- Ignoring Secure Boot and landing on a black screen after the first restart.
- Installing the newest driver on an older card that has moved to a legacy branch.
Before You Install
- Back up important files and note your current kernel version.
- Know your GPU model and whether Secure Boot is on.
- Have a way to reach a text console if the desktop fails to start.
- Read the current instructions for your distribution and release.
- Check the NVIDIA support notes for your GPU generation.
Related guides
- Aio Liquid Coolers For High Performance Gaming
- Wireless Gaming Headsets Under 100 For Pc
- Ssds For Large Video And Raw Photo Files
Frequently Asked Questions
How do I know if the NVIDIA driver is working?
Run nvidia-smi in a terminal. If it lists your GPU and a driver version, the module is loaded. You can also check the system settings for the active graphics renderer.
Should I use the open or closed kernel module?
For recent cards, NVIDIA recommends the open modules and the newest generations may require them. Older cards generally need the closed module, so check the support table for your specific GPU.
Why does my screen go black after installing the driver?
Common causes are Secure Boot rejecting an unsigned module or a conflict with nouveau. Boot into a recovery option or text console, then fix the signing key or remove the conflicting packages.
Do I need to reinstall the driver after every kernel update?
Not if you use distribution packages with DKMS or akmod support, since they rebuild the module automatically. Manual installs from the vendor’s installer usually do need repeating, which is another reason to avoid them.






