Linux, as distributed by Linus Torvalds et al, contains non-Free Software, i.e., software that does not respect your essential freedoms, and it induces you to install additional non-Free Software that it doesn't contain.
GNU Linux-libre is a project to maintain and publish 100% Free versions of Linux, removing the offending portions.
RPM Freedom
RPM Freedom is a sub-project to provide RPM packages of GNU Linux-libre for x86_64 (64-bit), ARM AArch64 (64-bit, little-endian for ARMv8), PowerPC64le (64-bit, little-endian for POWER8 or newer) and s390x (64-bit for zEC12).
If you need .debs of Linux-libre packaged for APT see the Freesh page.
How To Use
To use this repository, first determine which kernel series you want to follow.
If you want the latest kernel version, such as for use with Fedora or CentOS Stream for any other scenario where you want the latest version:
sudo dnf config-manager --add-repo https://linux-libre.fsfla.org/pub/linux-libre/rpmfreedom/latest.repo
If you want to use a long-term support (LTS) kernel for Red Hat Enterprise GNU/Linux (REHGL) 9 and derivatives such as Alma or Rocky GNU/Linux, etc:
sudo dnf config-manager --add-repo https://linux-libre.fsfla.org/pub/linux-libre/rpmfreedom/rhegl9.repo
If you want to use a long-term support (LTS) kernel for Red Hat Enterprise GNU/Linux (REHGL) 8 and derivatives such as Alma or Rocky GNU/Linux, etc:
sudo dnf config-manager --add-repo https://linux-libre.fsfla.org/pub/linux-libre/rpmfreedom/rhegl8.repo
Once this is done, proceed to update your system:
sudo dnf upgrade
Make sure that you see the fingerprint:
F611 A908 FFA1 65C6 9958 4ED4 9D0D B31B 545A 3198
As long as the fingerprint matches, continue.
In some very specific cases you may also want to install the kernel headers, like if you're building out of tree kernel modules. In such cases, you can also install the corresponding kernel-headers package.
Once the kernel is installed check the default kernel:
sudo grubby --default-kernel
If you don't see that the default kernel has gnu
in the version
number change it to boot Linux-libre by default:
sudo grubby --info=ALL | grep -E "^kernel|^index"
Look for a line with kernel=
that has the appropriate -gnu
in the
version number and then look for the index number that's just above
it. near it. For example:
index=0
kernel="/boot/vmlinuz-6.0.2-gnu"
Then run:
sudo grubby --set-default 0
Making sure to adjust the number 0
there to whatever index number
you found.
Confirm that the default kernel has changed by re-running:
sudo grubby --default-kernel
It should list the appropriate -gnu
kernel version. If so, then
restart your computer.
Once the computer restarts you may run uname -r
to confirm that the
appropriate kernel has started.
Have questions? Need help? Please write to the mailing
list or
visit #gnu-linux-libre
on irc.libera.chat
.
Sources
GNU Linux-libre is free software, licensed under the terms of the GNU General Public License version 2, as published by the Free Software Foundation. You should read the license so that you know your rights to run, study, and modify the software, as well as your obligations should you redistribute the software to others.
You may download the tarball containing the complete and corresponding source code, kernel configuration files, and the instructions to compile and install the kernel from https://linux-libre.fsfla.org/pub/linux-libre/rpmfreedom/.
Have questions? Need help? Please write to the mailing
list or
visit #gnu-linux-libre
on irc.libera.chat
.
Be Free!
Page text is copyright © Jason Self. You can redistribute and/or modify this text under terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. Please copy and share.
As a special exception, you may distribute this work without including the copy of the GPL that would normally be required as long as you keep intact all notices stating that this license and special exception apply, and include a URI or hyperlink to a public copy of the GPL. If you modify this work, you may extend this exception to your version of the work, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version.