Ubuntu
Obtain kernel sources
linux-signed (primary kernel source package)
- Binary package: https://packages.ubuntu.com/noble/linux-image-6.8.0-101-generic
- Source package: https://packages.ubuntu.com/source/noble/linux-signed
- Launchpad repository: https://code.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/noble
https://packages.ubuntu.com/noble/linux-image-6.8.0-101-generic leads us to the source package https://packages.ubuntu.com/source/noble/linux-signed, which corresponds to the https://code.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/noble Launchpad repository.
packages.ubuntu.com lists all binary packages built from a source package, so you could find the latest version on https://packages.ubuntu.com/source/noble/linux-signed.
According to https://wiki.ubuntu.com/Kernel/Dev/KernelGitGuide, it’s recommended to download the upstream kernel tree first and use it as a reference:
git clone https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux
git clone --reference linux https://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/noblelinux-signed-azure (Azure-flavored variant)
This variant uses different image names and its source repository is under a different team:
- Binary package: https://packages.ubuntu.com/noble/linux-image-6.8.0-1046-azure
- Source package: https://packages.ubuntu.com/source/noble/linux-signed-azure
- Launchpad repository: https://code.launchpad.net/~canonical-kernel/ubuntu/+source/linux-azure/+git/noble
Customize kernel config
In the Launchpad repository, modify debian.master/config/annotations to customize kernel config. For variants, modify the annotations file in their debian.* directory respectively.
Debian
Obtain kernel sources
https://packages.debian.org/trixie/linux-image-6.12.31-amd64 leads us to the source package https://packages.debian.org/source/trixie/linux-signed-amd64, which corresponds to https://salsa.debian.org/kernel-team/linux according to https://kernel-team.pages.debian.net/kernel-handbook/ch-common-tasks.html#s-common-official-vcs.
Customize kernel config
In the git repository, modify debian/config/amd64/config to customize kernel config. For the cloud variant, modify debian/config/config.cloud instead.
openEuler
Obtain kernel sources
Clone https://atomgit.com/openeuler/kernel to obtain kernel sources and https://atomgit.com/src-openeuler/kernel for packaging.
For openeuler/kernel, OLK-* are stable branches and openEuler-* are innovation branches. As of March 2026, the latter is only used during the early development phase of each innovation release.
For src-openeuler/kernel, only use the openEuler-* branches.
Customize kernel config
In the kernel source repository, modify arch/x86/configs/openeuler_defconfig to customize kernel config. For alternative architectures, check the _host_cpu to Arch mapping rule from kernel.spec, e.g. https://atomgit.com/src-openeuler/kernel/blob/openEuler-24.03-LTS-SP2/kernel.spec.
%global Arch $(echo %{_host_cpu} | sed -e s/i.86/x86/ -e s/x86_64/x86/ -e s/aarch64.*/arm64/ -e s/riscv.*/riscv/ -e s/powerpc64le/powerpc/ -e s/loongarch64/loongarch/)