Debian and Ubuntu/Mint kernel with Apple T2 patches built-in. This repo will try to keep up with kernel new releases.
This project is closely inspired by mikeeq/mbp-fedora-kernel and marcosfad/mbp-ubuntu-kernel. Thank you @mikeeq and @marcosfad for the scripts and setup.
Special thanks to @Redecorating for the CI.
If this repo helped you in any way, consider inviting a coffee to the people in the credits (links given here).
Firstly add the t2-ubuntu-repo apt repo. You need to follow these steps to add it:
-
Identify your release codename. It is:
a)
jammyfor Ubuntu 22.04b)
noblefor Ubuntu 24.04c)
pluckyfor Ubuntu 25.04d)
questingfor Ubuntu 25.10e)
bookwormfor Debian 12f)
trixiefor Debian 13g)
testingfor Debian testingYou can also run
lsb_release -ato identify your codename. -
Run the following (taking
nobleas the example, just replace it with your release codename in the first line):
CODENAME=noble curl -s --compressed "https://adityagarg8.github.io/t2-ubuntu-repo/KEY.gpg" | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/t2-ubuntu-repo.gpg >/dev/null sudo curl -s --compressed -o /etc/apt/sources.list.d/t2.list "https://adityagarg8.github.io/t2-ubuntu-repo/t2.list" echo "deb [signed-by=/etc/apt/trusted.gpg.d/t2-ubuntu-repo.gpg] https://github.com/AdityaGarg8/t2-ubuntu-repo/releases/download/${CODENAME} ./" | sudo tee -a /etc/apt/sources.list.d/t2.list sudo apt update
Currently, 2 types of kernel variants are available. You can use anyone as per your choice:
-
Mainline kernels:
If you want to install Mainline kernels, install
linux-t2package:sudo apt install linux-t2
-
LTS kernels:
If you want to install LTS kernels, install
linux-t2-ltspackage:sudo apt install linux-t2-lts
-
Mainline Xanmod kernels:
If you want to install Mainline Xanmod kernels, install
linux-t2-xanmodpackage:sudo apt install linux-t2-xanmod
-
LTS Xanmod kernels:
If you want to install LTS Xanmod kernels, install
linux-t2-xanmod-ltspackage:sudo apt install linux-t2-xanmod-lts
Now, whenever a new kernel is released, you can use Software updater or run sudo apt upgrade to get it.
If you want to change the kernel variant, say from Mainline to LTS, first install the package of the kernel, and then remove the current kernel. Eg, if you wanna switch to LTS from Mainline, run:
sudo apt install linux-t2-lts sudo apt remove linux-headers-$(uname -r) linux-image-$(uname -r)
Simply replace linux-t2-lts in the above command with the kernel variant you want to use.
Download the .deb packages of linux-headers and linux-image of the kernel you wish to install from the releases section.
Install linux-headers first and then linux-image using apt and restart your Mac. In case you do not know how to do so, follow the instructions given below. Else you are good to go.
On terminal, type sudo apt install and then drag and drop the linux-headers file to the terminal and press enter/return key.
Do the similar process for linux-images package.
Restart your Mac.
Clone the repo using
git clone https://github.com/t2linux/T2-Debian-and-Ubuntu-Kernel
Open a terminal window and run
cd T2-Debian-and-Ubuntu-Kernel
sudo ./build.shThe kernel shall take around an hour to compile. After that you shall find three .deb packages in /root/work.
Install the linux-headers package first using apt. In case you do not know how to do so, follow the instructions described in the above The easy way section. Similarly install the linux-image package too.
Restart your Mac.
You may then delete the /root/work directory using sudo rm -r /root/work to free up space.
- Discord: https://discord.gg/Uw56rqW
- WiFi firmware:
- blog
Installing Fedora 31 on a 2018 Mac mini: https://linuxwit.ch/blog/2020/01/installing-fedora-on-mac-mini/ - iwd:
- https://wiki.ubuntu.com/KernelTeam/GitKernelBuild
- https://help.ubuntu.com/community/Repositories/Personal
- https://medium.com/sqooba/create-your-own-custom-and-authenticated-apt-repository-1e4a4cf0b864
- https://help.ubuntu.com/community/Kernel/Compile
- https://wiki.ubuntu.com/Kernel/BuildYourOwnKernel
- https://www.linux.com/training-tutorials/kernel-newbie-corner-building-and-running-new-kernel/
- https://wiki.ubuntu.com/KernelTeam/KernelMaintenance
- @Redecorating - thanks for editing the scripts and CI for Ubuntu
- @fishpm-anu - thanks for the kernel upgrade script
- @marcosfad - thanks for the original script for Ubuntu
- @MCMrARM - thanks for all RE work
- @ozbenh - thanks for submitting NVME patch
- @roadrunner2 - thanks for SPI (touchbar) driver
- @aunali1 - thanks for ArchLinux Kernel CI and active support
- @jamlam - thanks for providing the Correlium wifi patch
- @ppaulweber - thanks for keyboard and Macbook Air patches
- @mikeeq - thanks for the fedora kernel project and compilation scripts