How to test kernels in -proposed¶
Ubuntu kernels are uploaded to the -proposed pocket for testing before being published to -updates and -security. You can install these prerelease kernels to use and test them sooner, but you must opt in to package from -proposed as they are not enabled by default.
This document is based on EnableProposed from the Ubuntu Wiki.
Adding the -proposed pocket to software sources¶
To install packages from -proposed, you can enable it via the GUI or CLI.
GUI¶
Open “Software & Updates”.
Navigate to the “Developer Options” tab.
Enable the option that says “Pre-released updates (<series>-proposed)”.
CLI¶
Add "<series>-proposed" to the Suites:
line in the
/etc/apt/sources.list.d/ubuntu.sources
file.
Types: deb
URIs: http://archive.ubuntu.com/ubuntu
Suites: noble noble-updates noble-backports noble-proposed
Components: main universe restricted multiverse
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
If not, add this line for your Ubuntu release in
/etc/apt/sources.list
or another file in
/etc/apt/sources.list.d/
(for x86):
deb http://archive.ubuntu.com/ubuntu/ <series>-proposed restricted main multiverse universe
Or, if you’re architecture is not x86:
deb http://ports.ubuntu.com/ubuntu-ports <series>-proposed restricted main multiverse universe
Install the pre-release kernel¶
First, update the sources cache if you haven’t already:
$ sudo apt update
Now you can install the kernel as normal. If the kernel in -proposed has the highest version of any pocket, you can install it with:
$ sudo apt install linux-<flavour>
If you want a specific (earlier) version, you may have to specify the version:
$ sudo apt install linux-<flavour>=<version>
After installing, reboot your machine or VM. After booting up again, verify the correct kernel is loaded with:
$ uname -r
This should print the correct version and flavour.
Testing the kernel¶
With the new kernel installed, you can begin testing.
If you do not have your own test suite and would like an example workload, the built-in Linux selftests are a good starting point. To run these, you need to compile the tests in the kernel source.
$ sudo apt source linux-image-unsigned-$(uname -r)
Now you can build and run the selftests from the extracted source:
$ cd <source dir>
$ sudo make -C tools/testing/selftets run_tests
Of course, this is one of many ways you can test a running kernel. Here are some other examples of pre-existing testing projects:
What to do if a regression is found¶
File a bug report in Launchpad¶
On your system with the kernel installed, you can use the “ubuntu-bug” tool in the terminal:
$ ubuntu-bug
Or you can file a bug manually online: https://bugs.launchpad.net/ubuntu/+filebug.
Make sure to target your kernel source package and Ubuntu series.
More information about bug reporting can be found on Ubuntu’s ReportingBugs documentation.