Blog (5)
Komentarze (1.6k)
Recenzje (1)
@GNUserWolna wersja Slackware

Wolna wersja Slackware

19.12.2017 17:20

Slackware zna chyba każdy pasjonat GNU/Linuksa. Najstarsza obecnie rozwijana dystrybucja, jedna z pierwszych jakie powstały. Moja ulubiona dystrybucja. Niestety ma jedną wadę; jest niewolna. Celem tego wpisu jest pokazanie jak uczynić Slackware wpełni wolnym systemem. Istnieją dwa sposoby aby to osiągnąć: pierwszy polega na użyciu iso od FreeSlack (którego sądząc po aktywności na IRC używa raptem kilka osób), drugi polega na usunięciu niewolnego oprogramowania manualnie i dodaniu wolnych zamienników. W tym wpisie skupię się na drugim z tych sposobów.

Instalacja

Większość niewolnych pakietów można wyeliminować już na etapie instalacji. Aby to zrobić musimy wybrać opcję "menu" lub "expert" przed instalacją pakietów.

Wybieranie "trybu" instalacji pakietów
Wybieranie "trybu" instalacji pakietów

Po tym etapie w naszym systemie znajdować się tylko te niewolne pakiety które są niezbędne do zbootowania systemu, czyli kernel-firmware, kernel-generic/huge i kernel-modules. Tymi czterema pakietami zajmiemy się już po instalacji.

Zmiana kernela na wolny

Będziemy potrzebowali trzech pakietów aby zmienić kernel na GNU Linuksa-libre: linux-libre-image, linux-libre-source (opcjonalne) i linux-libre-headers (również opcjonalne, ale przydatne przy kompilacji innych programów). Gotowe pakiety znajdziemy w repo FreeSlack'a. Jeśli jednak chcemy samodzielnie zbudować pakiety z kernelem, odsyłam do poradnika. Potrzebujemy jeszcze klucza publicznego aby zweryfikować pobrane pakiety.

Urok przeglądarki tekstowej :)
Urok przeglądarki tekstowej :)

Musimy jeszcze przed instalacją Linuksa-libre odinstalować zwykły kernel, choć nie jest to konieczne (opcja z dwoma kernelami jest możliwa), ułatwi to konfigurowanie LILO. Używamy do tego narzędzia removepkg wchodzącego w skład pakietu pkgtools czyli narzędzi do zarządzania pakietami w Slackware.

# removepkg kernel-huge
# removepkg kernel-generic
# removepkg kernel-firmware
# removepkg kernel-modules

Potem używamy narzędzia installpkg (również wchodzącego w skład pkgtools) do instalacji Linuksa-libre.

# installpkg linux-libre-image-4.4.14.gnu-x86_64-2.txz
# installpkg linux-libre-headers-4.4.14.gnu-noarch-2.txz
# installpkg linux-libre-source-4.4.14.gnu-noarch-2.txz

Teraz pozostaje nam wykonać komendę lilo, aby dodać nowy kernel do bootloadera. W tej chwili mamy w pełni wolny system.

Dodawanie nowego kernela do LILO
Dodawanie nowego kernela do LILO

Utrzymanie systemu wolnym

Wszystko fajnie tylko, że w repozytorium Slackware dalej znajdują się niewolne pakiety, które zostaną zainstalowane przy najbliższej aktualizacji (zakładam, że raczej każdy aktualizuje system który jest podpięty do sieci). Znów mamy dwie opcje, albo zmienić repozytoria na FreeSlack, albo dodać wszystkie niewolne pakiety do blacklisty slackpkg (od wersji 12.2 oficjalnie jest częścią dystrybucji).

Blacklista slackpkg
Blacklista slackpkg

Warto pamiętać aby nie wykonywać komendy slackpkg install-new bez wcześniejszego sprawdzenia czy nie zostały dodane żadne nowe niewolne pakiety (jeśli aktualizujemy do -current).

Brakujące pakiety

Niestety część tych niewolnych pakietów jakie usunęliśmy w tracie instalacji, jest niezbędna do codziennego użytku systemu. Ot, choćby taki Firefox czy Thunderbird. Sprawa jest bardzo podobna jak z kernelem, możemy użyć gotowego pakietu od FreeSlack lub zbudować sobie taki pakiet samemu. Na przykładzie IceCat'a pokażę jak taki pakiet zbudować. Najpierw potrzebne są pliki które pobierzemy ze strony SlackBuilds (największe repozytorium SlackBuild-ów tworzonych przez społeczność).

637004

Potrzebne są źródła IceCat'a oraz archiwum tar ze SlackBuild-em i innymi potrzebnymi rzeczami. Po pobraniu rozpakowujemy archiwum tar ze SlackBuild-em i przenosimy plik ze źródłami do katalogu w którym znajduje się SlackBuild. Potem uruchamiamy SlackBuild.

# ./icecat.SlackBuild

Kiedy skrypt skończy pracę, gotowy do instalacji pakiet będzie znajdował się w katalogu /tmp.

# cd /tmp
# installpkg icecat-52.1.0-x86_64-1-SBo.tgz

Takim oto sposobem mamy zainstalowaną przeglądarkę :)

IceCat na wolnym Slackware
IceCat na wolnym Slackware

Gratuluję, twój Slackware jest w 100% wolnym oprogramowaniem!

Wybrane dla Ciebie
Komentarze (148)