Why is "dnf module list nvidia-driver" Incomplete?
If you are trying to roll back to a specific Nvidia driver version or install a legacy branch like 470, you might find that dnf module list nvidia-driver doesn't show the version you need. This "incompleteness" usually stems from how DNF filters modular content and how repositories like NVIDIA's CUDA repo manage their metadata.
1. Modular Filtering (Stream Hiding)
DNF Modularity is designed to show you Streams, not individual package versions. If you are looking for a specific sub-version (e.g., 535.129), dnf module list will only show you the 535 stream. If a newer stream is set as the "default," older streams may be hidden unless you explicitly look for them.
The Fix:
Force DNF to ignore the current enabled state and refresh the metadata:
sudo dnf clean allsudo dnf module list --refresh nvidia-driver
2. Deprecation of Modularity in DNF5
In newer distributions (like Fedora 41+ and upcoming RHEL versions), Modularity is being deprecated. Many repository maintainers are moving back to standard RPM sets. If your list is empty or incomplete, it may be because the repository you are using has moved the Nvidia drivers out of a "Module" and into a standard package list.
The Fix:
Check the standard package list instead of the module list:
dnf list available nvidia-driver --showduplicates
3. Repository Metadata Expiration
The NVIDIA CUDA repository is frequently updated. If your local metadata is stale, DNF might only see a "snapshot" of what was available when you last updated. This often leads to the "missing groups or modules" error when trying to switch streams.
4. Precompiled kmod Filtering
On RHEL-based systems (Rocky, Alma), the nvidia-plugin for DNF can actively filter out driver versions that do not have a precompiled kernel module (kmod) matching your currently running kernel. If a driver version exists in the repo but hasn't been compiled for your specific kernel yet, the module list will hide it to prevent you from breaking your display on reboot.
Comparison Table: dnf module vs. dnf list
| Command | What it shows | Best for... |
|---|---|---|
dnf module list nvidia-driver |
Major branches (latest, 550, 470) | Switching between driver "generations." |
dnf list nvidia-driver --showduplicates |
Every specific version available | Pinning a specific, exact driver version. |
dnf module list --all |
Hidden and disabled streams | Finding "missing" legacy branches. |
Summary: How to see everything
If the module list feels incomplete, your first step should always be to reset the module and check standard packages. Running sudo dnf module reset nvidia-driver clears any "locked" streams that might be preventing other versions from appearing in your search results.
Keywords: dnf module list nvidia-driver incomplete, nvidia-driver missing streams, dnf modularity rhel 9, nvidia-driver latest-dkms missing, rockylinux nvidia driver list, dnf list showduplicates nvidia, nvidia cuda repo metadata error, fedora nvidia driver module.
