Kmodgenca is silent unless it is creating the key for the first time. If the key already exists “kmodgenca -a” is silent. The key is overwritten only when using --force (or -f) To see what happens use kmodgenca -h
Doing a new install of fedora, then installing the nvidia driver will automatically install akmods and build the driver, but the new driver at that point is not signed because no key exists. To create the key requires either a reboot or running kmodgenca. If the driver is not signed, it will not load with secure boot enabled even if the key has been imported into bios.
The only way to ensure that the driver is signed when it is first installed is to install akmods first, then run kmodgenca or reboot before installing the driver.
To sign the driver modules after the key has been newly generated requires that the user run sudo akmods --rebuild --force which will rebuild the driver and reinstall the now signed driver. A reboot after that should load the driver.
@saraneth
Lets not continue the wasted cycle of reinstalling fedora then reinstalling the driver then reimporting the key, all of which is wasted effort and may lead to problems with the number of keys stored in bios.
Lets work with what you have right now. I understand that is Fedora 44 newly installed, the nvidia driver installed, and a reboot giving you a black screen.
What I am unsure of is whether you have upgraded fedora from the initial installation or not?
Lets bypass the black screen first.
-
From the boot menu – edit the kernel command line for the kernel being booted by pressing the e key to display the commands, then on the line that begins with linux move to the end of that line and add 3 to that line, then continue booting according to the prompt at the bottom of the screen. ctrlx
This should bring you to a text login screen where you log in.
-
update the system fully with sudo dnf upgrade --refresh and reboot. This may or may not give the black screen, and if it does not then you are done. If it does then continue by repeating step 1 then continue with step 3 below.
-
Now run modinfo -l nvidia && modinfo -F version nvidia and tell us exactly what the response is to those commands (the note below gives the expected response).
-
Run mokutil --sb-state and tell us exactly what the response is.
-
Run sudo akmods --rebuild --force and let us know if there are any error messages.
-
Run sudo mokutil --test-key /etc/pki/akmods/certs/public_key.der
It should return /etc/pki/akmods/certs/public_key.der is already enrolled
If the results of 4 is enabled and the result of 6 is not as expected then the key will need to be enrolled before rebooting.
Step 3 should be able to provide this
$ modinfo -l nvidia && modinfo -F version nvidia
Dual MIT/GPL
595.71.05
Any errors in steps 1-6 above should be fixed before rebooting.
- reboot
If rebooting still gives the black screen then you can try the earlier suggestions of editing the linux kernel command line as noted above and one at a time try
a. remove rhgb quiet
b. add nomodeset
c. remove rd.driver.blacklist=nouveau,nova_core modprobe.blacklist=nouveau,nova_core
If there is still no progress and the black screen persists then let us know and we will dig deeper. DO NOT REINSTALL FEDORA. That totally defeats the troubleshooting.