This section serves as a summary of the repositories located at https://negativo17.org/ to save the reader the trouble of sifting through the blog posts.
The source RPMs, repos and other files can be found here.
Negativo17 is NOT compatible with RPMFusion and has a much more limited selection of packages, but follows a different packaging philosophy.
dnf config-manager --add-repo=http://negativo17.org/repos/fedora-multimedia.repo
This is incompatible with and not a replacement for RPMFusion. However, the epoch is set to override RPMFusion packages whenever possible.
Packages of interest:
- Nvidia drivers
The multimedia repo contains the Nvidia packages. Before using it, make sure you remove all previous Nvidia packages (i.e, from RPMFusion):
sudo dnf remove \*nvidia\*
Packages of interest:
i686 versions when you need 32-bit (i.e, Wine).
You need to also explicitly install
kernel-devel to avoid pulling in the debug package.
dkms status. If the output is empty, then you’ll need to manually run the build and install:
dkms add nvidia/<version> dkms build nvidia/<version> dkms install nvidia/<version>
<version> is something like
390.25. You may prefer to do this before rebooting. In that case, append the
-k switch and specify
the kernel version.
If you receive an error like the following:
Error! Could not locate dkms.conf file
You will need to remove the previous driver version you have installed. i.e, if you previously had 415.18 installed and upgraded to 415.22, then remove the 415.18 directory.
rm -r /var/lib/dkms/nvidia/415.18
Suspend doesn’t work¶
If your computer immediately wakes up upon suspending and you see an error message like the following:
PreserveVideoMemoryAllocations module parameter is set. System Power Management attempted without driver procfs suspend interface. Please refer to the 'Configuring Power Management Support' section in the driver README.
Then you need to enable the systemd services for Nvidia:
systemctl enable nvidia-suspend.service systemctl enable nvidia-resume.service
See the Nvidia forums for more details.
Module doesn’t load upon upgrade to Fedora 35¶
It is unclear why this is happening, however the following workaround works:
grubby --update-kernel=ALL --args "modprobe.blacklist=nouveau"
Automatically signing modules for secure boot¶
For RPMFusion this is fixed in Fedora 36, the manual instructions are still required for negativo17.
Neither negativo nor rpmfusion automatically sign the kernel modules. This is because it requires manual intervention by the user where a key has to be created and enrolled into MOK. After that, you can use a script that will sign the modules after they are built automatically. See akmod-sign-modules for akmods. There is a DKMS version available on the Internet. Note that it does not appear to work unless you run it manually. That is:
systemctl start akmods@$(uname -r) systemctl status akmods@$(uname -r)
There is a COPR for changes slated to appear in Fedora 36. Namely akmods-secureboot and kmodtool-secureboot by egeretto. Either generate the key using the provided akmods-keygen service file or by following the RedHat guide.
There are a few ways to verify that you enrolled your key correctly.
mokutil --list-enrolled mokutil --test-key /etc/pki/akmods/certs/public_key.der