Kernel: Debian i Macbook Pro 11,3 (Retina, 15-inch, Mid 2014)

Posted on Thu 11 June 2020 in Wypociny • [2 min read]

Artykuł opisujący instalację i dopieszczanie Linuksa, a konkretniej: Debiana, na Apple Macbooku Pro (jak w tytule), mam od dawna w szufladzie i od czasu do czasu dopisuję w nim kolejne rozdziały. Czas na release...

Przedstawię go wspak bo wyszło tak. A poważnie, to po prostu dziś rano nastąpiło zwieńczenie dzieła czyli skompilował się własny kernel i pierwszą rzeczą, która naprawdę mnie zachwyciła, że w 6-letni laptop, wprawdzie z silną konfiguracją, wstąpiło nowe życie.

Jeszcze z czasów kiedy moją ukochaną dystrybucją był Slackware pamiętam, że posiadanie waniliowego czyli oryginalnego jajka było prawie hańbą. Po instalacji systemu pierwszą rzeczą była konfiguracja i kompilacja własnego kernela. Zabawa, w pierwszym rzędzie polegała na usunięciu wszystkich, zbędnych sterowników. Chodziło nie tylko o zmniejszenie pamięciożerności kernela ale i o prozaiczne skrócenie czasu kompilacji - zasada jest prosta: im mniej modułów tym mniej do kompilacji. Przy starszych maszynach miało to niebagatelne znaczenie, przecież dziś na moim i7 Turbo Boost do 3,7GHz jądro kompilowało się około 1,5 odcinka serialu "Daleko od szosy".

Kto dziś kompiluje jądro? Mam wrażenie, że niewiele osób. Bo i po co? Maszyny są na tyle mocne, że na jajku z dystrbucji ostro zasuwają, a używanie własnego kernela wiąże się z jedną, upierdliwą niedogodnością: koniec z automatycznym uaktualnianiem kernela.
DISCLAIMER: piszę to bazując na manualu Debiana, nie sprawdzałem jak jest naprawdę. Podejrzewam, że spokojnie można ten proces zautomatyzować ale z pewnością będzie to zupełnie coś innego niż uruchomienie: apt update ; apt dist-upgrade.

mkdir ~/kernel

Konfiguracja kernela to proces ŻMUDNY ale NIE TRUDNY, i można go sobie przynajmniej trochę ułatwić zaczynając od konfiguracji dostarczonej wraz z dystrybucją. Jest to o tyle dobry początek, że mamy konfigurację działającą na naszym sprzęcie, skoro na nim konfigurujemy to znaczy, że działa. :)

Konfiguracja aktualnie zainstalowanego kernela (czyli tego z paczki) w Debianie zapisana jest w pliku znajdującym się w folderze /boot, którego nazwa rozpoczyna się od słowa 'config' po którym występuje numer wersji i rodzaj architektury. W moim przypadku był to plik: /boot/config-4.19.0-8-amd64.

Skopiowałem go jako konfigurację startową:

cd ~/kernel ; cp /boot/config-4.19.0-8-amd64 ./linux-source-4.19/.config

Po coś dodałem ten firmware, chyba srało jakimiś błedami, do sprawdzenia:

http://ftp.debian.org/debian/pool/non-free/f/firmware-nonfree/firmware-misc-nonfree_20190717-2_all.deb

Adnotacja z 2026: wpis nigdy nie dokończony