Vývoj jadra
Táto stránka sa stále pripravuje.
KDE Linux poskytuje úplné, predkonfigurované vývojové prostredie pre jadro hneď po inštalácii. Žiadne ďalšie balíky, kontajnery, virtuálne stroje ani chroots nie sú potrebné. Vývoj jadra sa riadi štandardnými upstream Linux pracovnými postupmi s malým počtom integračných krokov špecifických pre KDE Linux vysvetlených nižšie.
Upstream dokumentácia
Vývoj jadra v KDE Linux sa riadi upstream Linux praktikami. Pred pokračovaním sa dôrazne odporúča oboznámiť sa s oficiálnou dokumentáciou jadra Linux:
- https://docs.kernel.org/
- https://docs.kernel.org/process/
- https://docs.kernel.org/kbuild/
- https://docs.kernel.org/rust/
Tieto dokumenty popisujú vývojový proces, štýl písania kódu, zostavovací systém a (voliteľne) podporu Rust používanú jadrom.
Predpoklady
KDE Linux používa súborový systém /usr iba na čítanie. Akékoľvek vlastné jadro, moduly jadra alebo súvisiace artefakty musia byť nainštalované cez zapisovateľný overlay.
Pred pokračovaním musíte nastaviť systemd system extension (sysext), aby ste umožnili prepísanie obsahu v /usr.
Tento krok je povinný. Všetky obrazy jadra a moduly zostavené v tejto príručke sa inštalujú do sysext a potom sa zlúčia do živého systému.
Klonovanie jadra Linuxu
Klonujte upstream repozitár jadra Linuxu pomocou Gitu:
git clone https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git cd linux
Ak je to potrebné, môžete tiež klonovať konkrétnu stabilnú alebo vývojovú vetvu.
Konfigurácia jadra
Môžete začať s predvolenou konfiguráciou pre vašu architektúru:
make defconfig
Na prispôsobenie konfigurácie použite jedno zo štandardných rozhraní konfigurácie jadra:
make menuconfig make nconfig make xconfig
Všetky konfiguračné kroky sú zhodné s upstream vývojom jadra Linuxu.
Zostavenie jadra
Zostavte jadro pomocou štandardného zostavovacieho systému:
make -j$(nproc)
Tým sa vytvorí obraz jadra a moduly v zostavovacom strome.
Inštalácia do sysext
Nainštalujte moduly jadra do sysext overlay:
make INSTALL_MOD_PATH="$HOME/kde/usr" modules_install
Zistite verziu jadra a nainštalujte obraz jadra:
version=$(make -s kernelrelease) install -Dm644 "$(make -s image_name)" \ "$HOME/kde/usr/lib/modules/$version/vmlinuz"
Obnovte systemd system extension, aby systém videl nové jadro a moduly:
run0 systemd-sysext refresh
Opätovné zostavenie obrazov EFI
Po nainštalovaní jadra do sysext znovu zostavte EFI artefakty na základe aktualizovaného obsahu /usr:
run0 /usr/lib/rebuild-efi
Tento krok vygeneruje nový Unified Kernel Image (UKI).
Inštalácia Unified Kernel Image
Nainštalujte vygenerovaný UKI do EFI systémovej partície:
run0 cp kde-linux.efi /boot/EFI/Linux/
Nové jadro sa zobrazí ako neverzovaná položka v systemd-boot a možno ho vybrať pri ďalšom štarte.
Článok napísal Andrew Gigena pod licenciou CC-BY-4.0.