Upgraded to f36 workstation and now I have no GPU driver for NVIDIA

Apparently no way to downgrade to 35.
I have “legacy” NVIDIA card that, under f35 limped along with proprietary legacy driver 340xx.
I should never have upgraded to f36 because:

  1. cannot install the legacy drivers because they won’t build. Wrong gcc version and / or missing <stdarg.h> (I have seen both errors at different times. If I tell the installer to ignore the gcc version check and not to try to register with dkms, it still croaks in the build.
  2. nouveau does not support the GPU
  3. the new rpmfusion driver does not support the GPU

None of my 3 installed kernels will work; only one even lets me get a command-line login ; the others just hang with a black screen.

I was foolish enough to make an f36 live usb but not an f35 live usb before I started this upgrade. I rather wish I had seen a warning about the deprecation of the support for NVIDIA GPUs before I tried to upgrade f35->f36.

I would be eternally grateful if the fedora folks would find a solution for those of us with “legacy” drivers.

Does anyone know if f37 will fix any of this? If so, I could try to upgrade to f37 beta…

Any suggestions would be appreciated.

Hi @nhall,

I’m sorry about that.

The good thing is that it looks like the driver you need is packaged for F36 and F37 by the RPM Fusion folks:

There’s also a package called akmod-nvidia-390xx-390.147-3.fc36, but I don’t know if it’s a newer version of the driver you need or something different aimed for different chipsets.

To install akmod-nvidia-340xx you will need to add the RPM Fusion nonfree repository (Configuration - RPM Fusion) then proceed as usual, i.e. sudo dnf install akmod-nvidia-340xx.x86_64.

Regarding your kernels being broken, have you tried removing any reference to the drivers from the kernel parameters line from the boot menu? That might help you get back into your system so you can add the RPM Fusion repository, install the new drivers and generate a new kernel image.

Finally, this won’t help you with your current situation, but I encourage you to take a look at Fedora Silverblue (https://getfedora.org/), which among other nice features has a rollback mechanism that surely helps in dealing with this kind of breakage (it saved me a lot of pain and time already).


1 Like

I forgot to mention that in case editing the kernel line in your boot menu doesn’t work and you are effectively unable to get a shell, you can try booting from a live image and get root access on your system using systemd-nspawn (and possibly with chroot too): https://opensource.com/article/18/11/systemd-nspawn-system-recovery

Thank you for your very quick reply! The rpmfusion driver doesn’t support my GPU. It tells me that I need to use the NVIDIA legacy driver 340xx, which doesn’t compile. With various tricks and symlinks I have managed to trick it to getting farther along in the build but now the gcc warnings-treated-as-errors are so numerous and, when I look at them, not the sort of thing one can fudge, so I have given up trying to get the legacy driver to compile for this kernel.

Also, my boot line only blacklists nouveau (with good reason, given my GPU).

I did not now how to use my filesystem if I booted from a live CD or USB, so thanks so much for that beta. Perhaps with that I can get to the point of trying silverblue.

Thanks again.

I do not have the older card so cannot report first hand the results.
However, you do not need to compile the driver manually, as is the case with all packages from rpmfusion.

You should be able to simply install the package that was properly built for fedora 36

as seen in the link provided by Martin in post 2 above. You can see that it was last updated in October to support the 340 driver on fedora 36.

That would be installed with sudo dnf install akmod-nvidia-340xx as long as you have the rpmfusion repos enabled (remove any drivers installed from other sources first.)
The akmod package takes care of compiling the driver for you to suit the kernels installed.

If your GPU requires the 340 driver then the comment about the 390 driver should be ignored. There seem to be 4 different drivers available at rpmfusion depending upon the age of the GPU in question.
340xx is for the oldest.
390xx is next.
470xx is the last that does not support wayland
520 is the newest and supports most of the currently used GPUs.

Each of the older drivers is for the specific generation of GPUs for which developed and does not support newer chipsets.

Yes, sorry about the confusion. The rpm-fusion drivers don’t support my GPU - they tell me to install the NVIDIA legacy driver, which has to be compiled, and fails.
I finally bit the bullet and installed from scratch (rather than update) at some expense for me but I had no choice.
I guess that means this topic could be closed, however that works… Thank you so much for your help.

1 Like