Install Linux Kernel Mainline on Ubuntu Linux (Zabbly)

The Zabbly Kernel brings mainline Linux kernels to Ubuntu systems without extensive modifications. Unlike performance-focused kernels such as XanMod that apply custom patches and scheduler tweaks, Zabbly packages upstream stable kernel releases with minimal changes, maintaining Ubuntu-compatible configurations while tracking mainline kernel development closely. This approach delivers bleeding-edge hardware support, the latest kernel features, and upstream performance improvements as they land in mainline releases.

This guide covers adding the Zabbly repository to Ubuntu, installing mainline kernel packages, verifying the installation, and rolling back to Ubuntu’s default kernel when needed. You’ll learn the complete process from repository setup to kernel verification with clear rollback instructions for running the latest upstream kernel on Ubuntu. These steps install the Linux kernel mainline build on Ubuntu using Zabbly-maintained packages.

Zabbly officially supports these kernel builds on Ubuntu 22.04 LTS (Jammy) and Ubuntu 24.04 LTS (Noble) only, as documented on the project’s GitHub page. If you run any other Ubuntu release, stay on the stock kernel or switch to a supported LTS version before following this guide.

Choose Your Ubuntu Kernel Option

Ubuntu offers multiple kernel options beyond the default GA kernel, each targeting different use cases. Understanding the differences helps you select the kernel that matches your hardware requirements, performance goals, and stability needs.

Kernel OptionPrimary FocusBest ForTrade-offs
HWE KernelHardware enablement and LTS supportDesktop systems, recent hardware on LTS releases, balanced stability with newer driversSlightly more frequent updates than GA kernel, still conservative compared to performance kernels
Zabbly KernelMainline upstream tracking with minimal patchesBleeding-edge hardware support, kernel developers, testing upstream features before Ubuntu integrationRapid update cycle, less testing than Ubuntu kernels, potential instability
XanMod KernelPerformance optimization and gamingGaming rigs, multimedia workstations, AMD Ryzen/Intel latest-gen CPUs, Wine/Proton usersCustom patches may conflict with some hardware, Secure Boot unsupported
Liquorix KernelDesktop responsiveness and low latencyAudio production, real-time applications, desktop users prioritizing responsiveness over server stabilityOptimized for desktop workloads only, Secure Boot unsupported, limited to x86_64

The HWE kernel strikes a balance between stability and hardware support, making it ideal for desktop LTS installations that need newer drivers without full distribution upgrades. Zabbly tracks mainline kernel development with minimal modifications, delivering upstream features and hardware support as they land in stable releases. XanMod applies extensive performance patches targeting gaming and high-performance computing, while Liquorix focuses on desktop responsiveness and multimedia workloads with low-latency optimizations.

Production servers should favor Ubuntu’s default GA kernel or the HWE kernel for tested stability and enterprise support. Performance-focused kernels like XanMod and Liquorix trade thorough testing for cutting-edge optimizations, making them better suited for workstations, development machines, and non-critical systems where you can tolerate occasional instability in exchange for performance gains.

When to Use Zabbly Mainline Kernel

The Zabbly mainline kernel suits specific use cases where Ubuntu’s default kernel falls short. Consider Zabbly when you need bleeding-edge hardware support for recently released CPUs, GPUs, or storage controllers that require newer kernel versions unavailable in Ubuntu’s standard repositories. Developers testing upstream kernel features before they land in stable Ubuntu releases, performance enthusiasts seeking the latest mainline scheduler improvements, or users running containerization workloads that benefit from recent kernel advancements all gain value from Zabbly’s mainline kernel packages.

However, production servers requiring maximum stability should stick with Ubuntu’s default kernel, which receives thorough testing and enterprise support. Users unfamiliar with GRUB bootloader configuration or kernel troubleshooting may find rollback procedures challenging. The mainline kernel moves quickly with upstream development, so test Zabbly in virtual machines or non-critical systems first before deploying to production environments.

Add Zabbly Kernel Repository to Ubuntu

Update Ubuntu System Packages

Before adding the repository, update your Ubuntu system to ensure existing packages are current:

sudo apt update && sudo apt upgrade

Install Repository Dependencies

Next, install packages required for managing repositories and GPG keys:

sudo apt install lsb-release software-properties-common apt-transport-https ca-certificates curl -y

Import Zabbly GPG Key

Import the Zabbly GPG key to authenticate packages from the repository:

curl -fSsL https://pkgs.zabbly.com/key.asc | gpg --dearmor | sudo tee /usr/share/keyrings/linux-zabbly.gpg > /dev/null

Configure Zabbly Repository

Add the Zabbly repository using the modern DEB822 format. This command detects your Ubuntu codename and creates the repository configuration:

codename=$(lsb_release -sc) && sudo tee /etc/apt/sources.list.d/linux-zabbly.sources <<EOF
Types: deb
URIs: https://pkgs.zabbly.com/kernel/stable
Suites: $codename
Components: main
Architectures: amd64
Signed-By: /usr/share/keyrings/linux-zabbly.gpg
EOF

Ubuntu 22.04 LTS and newer releases fully support the modern DEB822 .sources format even though legacy .list files remain the default output for some tools. Canonical is migrating documentation and tooling toward .sources, so using this format today keeps your repository configuration aligned with Ubuntu 24.04 LTS and future LTS releases.

Install Zabbly Mainline Kernel on Ubuntu

Refresh APT Package Index

After adding the repository, refresh your APT package index to recognize the new packages:

sudo apt update

Install Zabbly Mainline Kernel Package

Install the Zabbly mainline kernel metapackage, which automatically tracks the latest upstream stable kernel version:

sudo apt install linux-zabbly

Reboot System

Restart your system to boot into the newly installed kernel:

sudo reboot

Verify Kernel Installation

Check Running Kernel Version

After rebooting, verify your system is running the Zabbly mainline kernel:

uname -r

The output shows your current kernel version. Zabbly mainline kernels include “-zabbly” in the version string, typically reflecting recent upstream stable releases. For a detailed system overview including kernel information, optionally install and run neofetch.

sudo apt install neofetch && neofetch

Common Issues and Solutions

System Won’t Boot After Mainline Kernel Installation

If your system fails to boot with the Zabbly mainline kernel, reboot and access the GRUB menu by holding Shift during startup (or Esc on some systems). Select “Advanced options for Ubuntu” and choose your previous kernel version from the list. Once booted, remove the Zabbly mainline kernel using the removal instructions below.

Zabbly Mainline Kernel Not Appearing in GRUB

If the new mainline kernel doesn’t appear in your boot menu, update GRUB configuration manually:

sudo update-grub

Then reboot and verify the Zabbly mainline kernel appears in the advanced options menu.

Module Signing Issues with Secure Boot

Systems with Secure Boot enabled may encounter module loading issues. The Zabbly mainline kernel signs modules for Secure Boot compatibility, but if you experience problems, temporarily disable Secure Boot in your BIOS/UEFI settings or check dmesg for signature verification errors:

sudo dmesg | grep -i "signature"

Restore Ubuntu Default Kernel

Remove Zabbly Mainline Kernel Packages

To remove the Zabbly mainline kernel from your Ubuntu system, run:

sudo apt remove 'linux-zabbly.*' 'linux-headers-.*-zabbly.*' 'linux-image-.*-zabbly.*'

This removes the Zabbly mainline kernel metapackage, headers, and image files. Next, clean up orphaned dependencies:

sudo apt autoremove

Remove Zabbly Repository

To completely remove the Zabbly repository configuration:

sudo rm /etc/apt/sources.list.d/linux-zabbly.sources

Then refresh your APT index:

sudo apt update

Reinstall Ubuntu Default Kernel

If GRUB shows only Zabbly mainline kernel versions, reinstall Ubuntu’s default kernel:

sudo apt install --reinstall linux-image-generic

Reboot System

After removing the Zabbly mainline kernel, restart your system:

sudo reboot

Verify Kernel Removal

Finally, confirm your system is running Ubuntu’s default kernel:

uname -r

Conclusion

The Zabbly Kernel brings mainline Linux kernels to Ubuntu systems with minimal modifications, delivering upstream stable releases adapted for Ubuntu configurations. The installation process covers repository setup with DEB822 format, GPG key authentication, mainline kernel package installation, and complete rollback procedures. Your Ubuntu system now runs the latest upstream kernel with improved hardware support and access to bleeding-edge mainline features while maintaining compatibility with Ubuntu’s kernel configuration standards.

Leave a Comment