Installing Kernel from Koji

JetStream Versio F36 Last review: 2022-01-08
A quick guide on installing a kernel from the Koji repository.

Koji is the build system Fedora developers use to build software for inclusion into Fedora. If there is a need to install a kernel that is not currently available in the Fedora repositories, these can be obtained from the Koji repository.

Check Koji (Fedora build system) for archived builds

Check the Koji archive for the historical builds. It is possible to use different searches or expressions to help narrow down on a specific kernel build. Once the specific kernel has been identified, there are several ways to download and install it.

Download using the browser and install

One way is to download the identified packages using the browser and installing them.

Download the following package rpms for a specific kernel version into a directory (best to create a new directory and just have the downloaded rpms in it.:

kernel-<version>.<release>.<arch>.rpm
kernel-core-<version>.<release>.<arch>.rpm
kernel-modules-<version>.<release>.<arch>.rpm

then, open a command prompt and change to this directory. Execute the command to install the kernel:

sudo dnf install *

Download and install a kernel using the koji client

Install the koji client

The koji client makes the process of installing a specific kernel much easier from the command line. Use this command to install the client:

$ sudo dnf install koji

Download and install the kernel

Below is a one-line command that creates a new unique temporary directory, downloads kernel RPMs to it and installs them. This assumes we are working with the x86_64 architecture.

cd $(mktemp -d) \
  && koji download-build --arch=x86_64 --arch=noarch kernel-n.nn.nn-nnn.fcnn \
  && rm *debug*.rpm *uki*.rpm \
  && sudo dnf install *

This eliminates the need to clean up after installation and the risk of installing unwanted rpms accidentally.

The following part of the above command downloads the kernel and its dependencies for the given architecture and kernel version.

koji download-build --arch=[arch] kernel-<version>.<release>

where [arch] indicates the architecture i.e. x86_64

Additional Steps:

The following additional steps are often useful:

  • Set the default boot option - so this boots automatically subsequently

  • Add a versionlock to ensure this version is not deleted when kernel updates are installed