Skip to content

Installing NVIDIA Drivers on Fedora Linux

This guide is how I fixed broken NVIDIA GPU acceleration on Fedora after discovering that my system was silently using Intel Iris Xe instead of my RTX 3050.

These are the exact commands I ran, in the order I ran them.


Context

  • Very low FPS in Proton games
  • Games running noticeably worse than on Arch / Nix on the same hardware
  • Steam launching correctly, but performance was terrible

Initial assumption was Proton or Vulkan misconfiguration.

That assumption was wrong.


GPU Check

Before touching drivers, verify what the system is rendering with.

OpenGL renderer check

        glxinfo | grep "OpenGL renderer"

Output showed:

        Mesa Intel(R) Iris(R) Xe Graphics (RPL-P)

This was the first red flag. On a laptop with an RTX 3050, this means Fedora is not using NVIDIA at all.

        vulkaninfo | less

This showed multiple devices, including:

  • Intel Iris Xe
  • NVIDIA RTX 3050
  • llvmpipe (software renderer)

But the presence of NVIDIA here does not mean the driver is installed or active.


Confirm NVIDIA Driver Is Missing

        nvidia-smi

Result:

        command not found

This confirms the NVIDIA driver is not installed.


Enable RPM Fusion Repositories

Fedora does not ship NVIDIA drivers by default.

Enable RPM Fusion (free + nonfree):

        sudo dnf install -y \
          https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm \
          https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm

Install NVIDIA Driver Packages

Install the NVIDIA kernel module and CUDA utilities:

        sudo dnf install -y akmod-nvidia xorg-x11-drv-nvidia-cuda

Notes:

  • akmod-nvidia builds the kernel module for your current kernel
  • This may take a moment
  • Nothing will work yet, the module still needs to build
        sudo akmods --force

Expected output includes lines like:

        Checking kmods exist for <kernel-version> [ OK ]

If you see OK messages, the module built successfully.

Verify

After reboot, run:

        nvidia-smi

Expected output:

        NVIDIA-SMI <version>
        Driver Version: <version>
        CUDA Version: <version>
        GPU: NVIDIA GeForce RTX 3050

This confirms the NVIDIA driver is loaded and active. Re-run the earlier checks.

OpenGL renderer

        glxinfo | grep "OpenGL renderer"

This should no longer show Intel Iris Xe.

Vulkan devices

        vulkaninfo | grep -E "GPU|deviceName"

You should see the NVIDIA GPU listed as a discrete device.


Result

  • NVIDIA driver active
  • RTX 3050 correctly detected
  • Proton games immediately returned to expected performance

The key lesson:

Fedora will happily run on Intel graphics without telling you. Vulkan and OpenGL output are often more revealing than error messages.


Commands Used

For reference, these are all of the commands used:

        glxinfo | grep "OpenGL renderer"
        vulkaninfo
        nvidia-smi

        sudo dnf install -y akmod-nvidia xorg-x11-drv-nvidia-cuda
        sudo akmods --force
        sudo reboot

        nvidia-smi
        vulkaninfo | grep -E "GPU|deviceName"