pve-kernel-thunderx/README.md
2024-10-07 08:48:35 -04:00

2.8 KiB

Proxmox Thunderx kernels

Custom Linux kernels for Proxmox VE arm64 ThunderX (CN88xx) system based on Ubuntu linux

Available Versions

  1. Linux 5.15 -> branch:v5.15
  2. Linux 6.5 -> branch:v6.5
  3. Linux 6.8 -> master

Installation

add arm64 kernel repo.

curl https://ayakael.net/api/packages/forge/debian/repository.key -o /etc/apt/keyrings/forgejo-forge.asc
echo "deb [signed-by=/etc/apt/keyrings/forgejo-forge.asc] https://ayakael.net/api/packages/forge/debian bookworm main" | tee -a /etc/apt/sources.list.d/forgejo.list
apt update
apt search pve-kernel
apt install pve-kernel-xxxx

Building manually

You may also choose to manually build one of these kernels yourself.

Prerequisites

Make sure you have at least 10 GB of free space available and have the following packages installed:

apt install devscripts debhelper equivs git

Obtaining the source

Obtain the source code as follows:

git https://ayakael.net/forge/pve-kernel-thunderx
cd pve-kernel-thunderx

Then, select the branch of your likings (e.g. v5.15) and update the submodules:

git checkout master
git submodule update --init --depth=1 --recursive linux
git submodule update --init --recursive

Building

First, generate the Debian control file for your kernel by running the following in your command prompt:

debian/rules debian/control

Before we build, make sure you have installed the build dependencies:

sudo mk-build-deps -i

merge your confile,if your kernel config is /boot/config-5.10.167-edge,do

cat /boot/config-5.10.167-edge >> debian/config/config.pve

Invoking the following command will build the kernel and its associated packages:

debuild -ePVE* --jobs=auto -b -uc -us

The Makefile provides several environmental variables to control:

  1. PVE_KERNEL_CC
    The compiler to use for the kernel build.
  2. PVE_KERNEL_CFLAGS
    The compilation options to use for the kernel build. Use this variable to specify the optimization level or micro architecture to build for.

Kernel options may be controlled from debian/config/config.pve. To build with additional patches, you may add them to the debian/patches/pve directory and update the series file accordingly.

Removal

Use apt to remove individual kernel packages from your system. If you want to remove all packages from a particular kernel release, use the following command:

apt remove pve-kernel-6.8* pve-headers-6.8*

Contributing

Questions, suggestions and contributions are welcome and appreciated! You can contribute in various meaningful ways:

  • Report a bug by email dev@ayakael.net
  • Propose new patches and flavors for the project.
  • Contribute improvements to the documentation.
  • Provide feedback about how we can improve the project.