Dnf does not show all versions available on a repo

I have discovered an issue that I can only assume is something to do with dnf, because what used to work, no longer seems to…

Let me explain… I have an offline copy of the nvidia cuda repo (Index of /compute/cuda/repos/rhel9/x86_64), which I could query for all available packages using dnf in the manner:

dnf list available kmod-nvidia* --showduplicates

… and I used to see all the versions in the repo. Now, I only see two!

I’ve reposync’d the entire repo down to a local host and run createrepo, with the same results.

I’ve also tried:

dnf --repofrompath test,https://developer.download.nvidia.com/compute/cuda/repos/rhel9/x86_64/ search kmod-nvidia* --showduplicates

… but this does not help.

Has something changed?

Thanks, Steve

dnf list available 'kmod-nvidia*' --showduplicates

2 Likes

Also, do you have any package version exclusions in your DNF config? An excluded package version will be ignored by all dnf operations, including list.

dnf list available 'kmod-nvidia*' --showduplicates

… still only shows two packages/versions :confused:

Seems to work for me.

┌─🎩 lurcher ~
├─
└─➜ dnf list available 'kmod-nvidia*' --showduplicates                     ⏱️ 11s 14:54 Mon 19-Jan
Updating and loading repositories:
Repositories loaded.
Installed packages
kmod-nvidia-6.17.11-300.fc43.x86_64.x86_64 3:580.105.08-1.fc43  @commandline
kmod-nvidia-6.17.12-300.fc43.x86_64.x86_64 3:580.119.02-1.fc43  @commandline
kmod-nvidia-6.18.3-200.fc43.x86_64.x86_64  3:580.119.02-1.fc43  @commandline
kmod-nvidia-6.18.4-200.fc43.x86_64.x86_64  3:580.119.02-1.fc43  @commandline
kmod-nvidia-6.18.5-200.fc43.x86_64.x86_64  3:580.119.02-1.fc43  @commandline

Available packages
kmod-nvidia.x86_64                         3:580.95.05-1.fc43   rpmfusion-nonfree
kmod-nvidia.x86_64                         3:580.119.02-1.fc43  rpmfusion-nonfree-nvidia-driver
kmod-nvidia.x86_64                         3:580.119.02-1.fc43  rpmfusion-nonfree-updates
kmod-nvidia-390xx.x86_64                   3:390.157-22.fc43    rpmfusion-nonfree
kmod-nvidia-470xx.x86_64                   3:470.256.02-12.fc43 rpmfusion-nonfree
kmod-nvidia-470xx.x86_64                   3:470.256.02-13.fc43 rpmfusion-nonfree-updates

I have no exclusions

Side note: in dnf5 it should be --available. The command as written says “list packages whose exact name is ‘available’ or whose name matches ‘kmod-nvidia*’”

But that isn’t the problem here, since you’re specifying neither --available nor --installed, the implicit default is --all.

1 Like

I’ll have to confess, I’m using RHEL and dnf 4.14.0, but that should work, surely?

There are 63 versions of the rpm on the repo - how come it only lists two?

Tried dnf list available 'kmod-nvidia*' --showduplicates on 2 systems. One that does have an Nvidia DGPU gives a single package, the other shows:


Updating and loading repositories:
 Fedora 43 - x86_64 - Updates                100% |  44.0 KiB/s |  26.7 KiB |  00m01s
Repositories loaded.
Available packages
kmod-nvidia.x86_64       3:580.95.05-1.fc43   rpmfusion-nonfree
kmod-nvidia.x86_64       3:580.119.02-1.fc43  rpmfusion-nonfree-updates
kmod-nvidia-390xx.x86_64 3:390.157-22.fc43    rpmfusion-nonfree
kmod-nvidia-470xx.x86_64 3:470.256.02-12.fc43 rpmfusion-nonfree
kmod-nvidia-470xx.x86_64 3:470.256.02-13.fc43 rpmfusion-nonfree-updates

As far as I can tell, it should. (The docs suggest that --available rather than available is the right switch in DNF4 too, but again this won’t be the cause of your expected packages being excluded.)

Unfortunately it’s difficult on a Fedora forum to answer your original question “Has something changed?” with respect to RHEL. Fedora has moved on substantially from the versions you are working with, so we don’t have a great handle on what might have recently changed on your system.

It would he helpful to show the exact output from the command.

Certainly:

$ dnf list --all 'kmod-nvidia*' --showduplicates
Not root, Subscription Management repositories not updated
Last metadata expiration check: 0:36:15 ago on Mon 19 Jan 2026 14:37:40 GMT.
Available Packages
kmod-nvidia-open-dkms.noarch     3:590.44.01-1.el9     cuda-rhel9-x86_64
kmod-nvidia-open-dkms.noarch     3:590.48.01-1.el9      cuda-rhel9-x86_64

You have said you are using RHEL and that output shows the cuda-rhel9-x86_64 repo.
Fedora does not use that repo and the versions you are showing are way behind what we see for fedora from the rpmfusion-nonfree repos. I don’t think anyone using fedora exclusively will be able to assist.

1 Like

Maybe you have to look at the modules:
dnf --disablerepo=* --repofrompath test,https://developer.download.nvidia.com/compute/cuda/repos/rhel9/x86_64/ module list nvidia-driver

Hi Joe, Thanks, that gives me 55 rows. I’m still waiting for a colleague to remind me how we listed the kmod-nvidia kernels. I forgot. Old age catching up with me.

Steve

Just an update on this, in case any of you are curious, plus I hate forum threads that just peter out with no obvious solution…

To clarify the situation, I have three geographically distributed repositories, let’s call them Tom, Dick and Harry. I download updates to Tom, then they are rsync’d to Dick and Harry.

  • I deleted repodata on Tom, ran createrepo, did a search and I only get 19 hits on kmod-nvidia
  • I deleted repodata on Dick, ran createrepo, did a search and I get 361 hits on kmod-nvidia!
  • I deleted repodata on Harry, ran createrepo, did a search and I get 361 hits on kmod-nvidia!

By way of a test I rsync’d back from Dick to Tom and I still only get 19 hits on kmod-nvidia.

Obviously there’s something different on Tom, but as yet I have not found what!

1 Like

This sounds like you sync the data but not the metadata:
dnf5: DNF5 Package Management Utility | Man Page | System Administration | dnf5 | ManKier

It may be worth setting as a persistent repo specific option:
dnf5.conf: DNF5 Configuration Reference | Man Page | File Formats | dnf5 | ManKier

A said @grumpey earlier, this is probably related to the modules.

The rhel9 cuda repo uses intensively modularity.

I bet that Dick and Harry use a different module stream for nvidia-driver than Tom.

What gives: dnf module list nvidia-driver on all of them (limit to the [e] lines).

Or cat /etc/dnf/modules.d/nvidia-driver.module

Note that: WARNING: modularity is deprecated, and functionality will be removed in a future release of DNF5.

Ah, @francismontagnac, you might have hit on something.

When I type:

dnf module list nvidia-driver

..on Dick and Harry, I get:

Error: No matching Modules to list

… whereas on Tom I get 49 results!

I have nothing in /etc/dnf/modules.d. Should I?
How do I remove the drivers? I’m not sure how/why they are on there - I did not build Tom.

Thanks, Steve

As @vgaetera suggested, the metadata may be not up to date.
Try thus: dnf --refresh module list nvidia-driver

Verify also the enabled repo on both with: dnf repolist

Not necessarily: depend if you want a specific version of nvidia-driver

module list does not list installed package. Nothing to remove.