Gå till innehåll

Utveckla eller avlusa kärnan

Sidan är pågående arbete.

KDE Linux tillhandahåller en komplett, förinställd kärnutvecklingsmiljö direkt. Inga ytterligare paket, behållare, virtuella maskiner eller chroot krävs. Kärnutveckling följer vanliga uppströms Linux-arbetsflöden, med ett litet antal integrationssteg specifika för KDE Linux som förklaras nedan.

Uppströms dokumentation

Kärnutveckling av KDE Linux följer uppströms Linux-metoder. Innan du fortsätter rekommenderas det starkt att du bekantar dig med den officiella Linux-kärndokumentationen:

Dokumenten beskriver utvecklingsprocessen, kodningsstilen, byggsystemet och (valfritt) Rust-stödet som används av kärnan.

Förutsättningar

KDE Linux använder ett skrivskyddat /usr filsystem. Alla anpassade kärnor, kärnmoduler eller relaterade artefakter måste installeras via skrivbar överlagring.

Innan du fortsätter måste du anpassa ett systemd-systemtillägg (sysext) för att tillåta att innehållet i /usr överskrids.

Steget är obligatoriskt. Alla kärnavbildningar och moduler som byggts i den här handledningen installeras i sysext och sammanfogas sedan med det befintliga systemet.

Checka ut Linux-kärnan

Checka ut Linux uppströms kärnarkiv med Git:

git clone https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
cd linux

Du kan också checka ut en specifik stabil eller utvecklingsgren om det behövs.

Konfigurering av kärnan

Du kan börja från standardinställningen för arkitekturen:

make defconfig

För att anpassa inställningen, använd ett av standardgränssnitten för kärninställning:

make menuconfig
make nconfig
make xconfig

Alla inställningssteg är identiska med utveckling av uppströms Linux-kärnan.

Bygga kärnan

Bygg kärnan med det vanliga byggsystemet:

make -j$(nproc)

Det skapar kärnavbilden och modulerna i byggträdet.

Installera i sysext

Installera kärnmodulerna i sysext-överlagringen:

make INSTALL_MOD_PATH="$HOME/kde/usr" modules_install

Bestäm kärnans version och installera kärnavbilden:

version=$(make -s kernelrelease)
install -Dm644 "$(make -s image_name)" \
  "$HOME/kde/usr/lib/modules/$version/vmlinuz"

Uppdatera systemtillägget i systemd så att systemet ser den nya kärnan och modulerna:

run0 systemd-sysext refresh --always-refresh=yes

Bygga om EFI-avbilder

Efter att du har installerat kärnan i sysext, återskapa EFI-artefakterna baserat på det uppdaterade innehållet i /usr:

run0 /usr/lib/rebuild-efi

Steget genererar en ny enhetlig kärnavbild (UKI).

Installera den enhetliga kärnavbilden

Installera genererad UKI i EFI-systempartitionen:

run0 cp kde-linux.efi /boot/EFI/Linux/

Den nya kärnan visas som en post utan version i systemd-boot och kan väljas vid nästa start.


Artikel bidragen av med licens CC-BY-4.0.