Slackware Linux 15: oživení dinosaura po šesti letech

16. 2. 2022
Doba čtení: 9 minut

Sdílet

 Autor: BarrelsBottom, podle licence: CC BY-NC 3.0
Slackware brzy oslaví třicáté výročí vzniku. Nejstarší linuxová distribuce se má stále k světu a v patnácté verzi přináší spoustu nových vlastností. Přesto zůstává věrná svým základním principům.

Jedna z nejstarších linuxových distribucí (z těch „velkých“ skutečně nejstarší) si s novými verzemi dávala vždy načas, tentokrát to už skoro vypadalo, že odejde na smetiště dějin. Nestalo se tak a protože recenzí této distribuce na českých webech mnoho není, rozhodl jsem se jí přiblížit širšímu publiku.

Podobně jako u mých předchozích recenzí zde nenaleznete žádné hodnocení, po celkovém popisu s výčtem specifik a odlišností od jiných distribucí se pokusím nastínit uživatele, pro kterého je Slackware vhodný. Jestli a zda se mi to podaří, nechám na laskavém čtenáři.

V dnešní poněkud rychlé době existuje už jen minimum projektů, které vyvíjí jeden člověk či několik málo lidí. Neustále vylepšované linuxové distribuce známé obrovskými repozitáři balíčků vyžadují neustálou údržbu, ať již od komerční firmy nebo co největší komunity nadšenců. Slackware nemá ani jedno, ani druhé, proto je nutné dívat se na něj poněkud jinak.

Patrick Volkerding vytvořil tuto distribuci  už v roce 1993 a i když má po ruce nadšené pomocníky, hlavní slovo si stále ponechává. S přihlédnutím k situaci si vytyčil následující cíle:

  • princip KISS: udržuj věci jednoduché a hloupé, jednoduché věci fungují lépe
  • preference stability před aktuálností: dle pohledu autora, který se nebrání i novějším, ale dobře proklepnutým projektům
  • dlouhodobá podpora: není zde žádný konkrétní termín, některé verze jsou podporovány sedm, jiné třeba i devět let po svém uvedení
  • nezávislost na hlavním proudu: Slackware zatím stále nepoužívá systemd podobně jako např. Devuan a nevypadá to, že by se v dohledné době chystala změna

Jak vidno, i u nejnovější verze jsou tyto principy dodržovány, sám autor u oznámení uvádí: Zachovám si známý vzhled, ale udělám jej moderní. Nový Slack přichází s následujícími vylepšeními:

  • konečně přidává PAM a elogind, což je nutnost u mnohých dnešních balíčků, které vyžadují systemd
  • výchozí kódování máme nastaveno na UTF-8
  • jako alternativa k systému PulseAudio, který vyvolával vášnivé diskuze na fórech, byl přidán PipeWire
  • podpora jazyků Rust a Python 3; již delší dobu nepodporovaný Python 2 zůstává stále výchozí, což poněkud překvapí
  • nové balíčky a knihovny: QT5 místo QT4, i když dnes již existuje QT6 a samozřejmě KDE Plasma řady 5; aktuální XFCE, jádro 5.15 LTS s možností využití novějšího a podpora protokolu Wayland
  • místo letitého Sendmailu výchozí Postfix

Zřejmě poněkud úsměvné aktualizace pro uživatele běžnějších distribucí. Osobně jsem fanda všech novinek, i proto k běžné práci používám distribuci, která se mi mění doslova pod rukama. Mnohdy jsem narazil (prvotní problémy se systemd, minoritní změna jazyka Python způsobí nefunkčnost některých aplikací, nefunkční balíček nabízející GUI pro firewall) a jen díky skvělé wiki a rozsáhlé komunitě jsem alespoň zatím všechny problémy vyřešil.

Slackware je v tomto jiný, začínal jsem u verze 9.1 a např. dnešní instalátor vypadá téměř stejně jako před lety. Balíčkovací systém doznal jen minoritních změn (z formátu tgz na txz) a systémové utility rovněž. Když se nad tím na chvíli zamyslím, ta stará verze 9.1 by mi pro dnešní kancelářskou práci vlastně úplně stačila.

Stažení a instalace

Pojďme se však na systém podívat podrobněji, aby i uživatel, který se s ním nikdy nesetkal, věděl, jak Slackware uvnitř funguje. Distribuce nabízí ke stažení obrazy pro dnes již majoritní 64bitovou, ale stále i 32bitovou architekturu plus na externích webech máme k dispozici různé verze pro starší i moderní procesory ARM. Existují dvě hlavní větve Stable (aktuálně verze 15) a vývojová Current. Je možné stáhnout neoficiální ISO obrazy, vzhledem k opravdu veliké prodlevě mezi posledními dvěma vydáními představovala pro mnoho uživatelů téměř nutnost.

Dříve byly k mání též CD obrazy plus tzv. Source ISO se zdrojovými kódy, v době psaní článku vidím pouze DVD a ARM, je možné, že další budou přibývat (plus samozřejmě komunitní varianta pro instalaci ze sítě mini.iso a podobné úpravy).

Nejen instalaci popisuje wiki projektu, případně starší, ale stále platný Slackware book project. V současné době neexistuje grafický instalátor, pouze textový, ten však využívá (podobně jako mnohé systémové utility) příjemnou TUI knihovnu ncurses. Aktuální informace jsou většinou právě na wiki, nejdůležitější je asi výběr balíčků, které jsou tradičně rozděleny do skupin podobně jako v prvních verzích projektu. Po dokončení instalace a restartu se na uživatele usměje příkazová řádka a začíná ta pravá manuální práce.

Prvotní nastavení

Instalátor nenabízí vytvoření běžného uživatele, distribuce však obsahuje příjemný textový skript adduser, který správce provede. Ani často používané sudo nefunguje bez manuálního nastavení. Spouštět pracovní stanici ručně pomocí příkazu startx brzy omrzí, zde musím mít na paměti, že Slackware stále používá init skripty.

Příjemná je aplikace pro výběr správce grafického prostředí xwmconfig. Nesmím zapomenout na velmi užitečnou utilitu pkgtool, které slouží k centrálnímu nastavení systému – kromě voleb, které byly k dispozici již při instalaci, také např. ke správě balíčků. V tuto chvíli mám k dispozici plně funkční systém, pojďme se vrhnout na další díl skládačky.


Balíčkovací systém

Balíčkovací systém vyvolává dodnes vášnivé diskuze uživatelů, neboť neřeší závislosti. Autor se tak rozhodl a má svůj důvod, takže se nedá nic dělat a člověk se se situací musí smířit. Oficiální balíčky distribuce ve formátu txz (dříve tgz) je možné instalovat pomocí výše popsané utility pkgtool nebo přímo pro tuto činnost vyvinutým nástrojem slackpkg, který je nutno prvotně nastavit např. dle wiki.

Nesmím zapomenout uvést možnost lokální instalace pomocí aplikace installpkg. Binárních balíčků je k dispozici jen omezené množství (jsou však perfektně otestované a mnoho let podporované), takže se alespoň na pracovní stanici bez externích zdrojů neobejdeme.


V dřívějších dobách bylo možné využít server linuxpackages.net, který nabízel opravdu rozsáhlou databázi, dnes doporučuji (včetně užitečných informací) následující zdroje:

  • Alien, nabízející obrovské množství aktuálních užitečných informací a návodů, balíčků i snadno upravitelných živých distribucí
  • Raharjo, též zajímavé informace plus balíčky pro grafická prostředí MATE a Cinnamon
  • Slackware pkgs, velmi užitečný rozcestník

Pro Slackware existuje velmi zajímavý projekt balíčků vytvářených ze zdrojových kódů s názvem Slackbuilds (uživatelům distribuce Arch jistě podvědomé při práci s PKGBUILD). Jedná se o rozcestník s obrovským množstvím předpisů, na základě nichž lze instalovat aplikace ze zdrojových kódů. Vynikající počin, doplácí však na menší množství přispěvatelů. Najdeme v něm mnohdy neaktuální balíčky, v době psaní této recenze ještě také nejsou k dispozici Slackbuildy pro aktuální verzi distribuce.


Standardní utility dodávané s distribucí neumí s externími repozitáři pracovat, proto vzniklo několik projektů, které mají správu balíčků usnadnit:

  • Slackpkg+, který dokáže pracovat s oficiálními i externími repozitáři
  • Sbopkg, představující nadstavbu nad Slackbuildy
  • Slpkg, v Pythonu napsaný nástroj s mnoha nastaveními řešící i závislosti mezi balíčky, doufám, že se bude stále aktivně vyvíjet tak jako doposud. V současné době mi přijde jako ideální komplexní správce balíčků.

Jak vidno, u balíčků je nutná alespoň minimální manuální správa (což rozhodně nemusí být na škodu), autorův pohled společně s menším počtem přispěvatelů je vidět. Pokud však uživatel překousne, že nemá k dispozici komfort správců typu deb/rpm/pacman (případně po něm ani netouží), plně funkční systém není tak pracné připravit.

Výsledný systém a klony

Nyní již máme systém připraven k běžnému použití. Prostředí KDE nabízí velikou spoustu aplikací pro denní použití, XFCE též mnohým uživatelům dostačuje a kdo má zájem, může vyzkoušet třeba odlehčený WindowMaker.

Slackware v základu nenabízí žádnou utilitu pro nastavení firewallu, osobně využívám UFW ze Slackbuildů, velmi slibně vypadá i TUI aplikace vyvíjená Alienem. Nastavení češtiny je v moderních grafických manažerech bezproblémové, pokud by čtenář potřeboval z jakéhokoliv důvodu plně lokalizovat i konzoli včetně tzv. mrtvých znaků, má možnost.

Je však nastavení stále příliš složité? Existují projekty mající za cíl nejrůznější činnosti zjednodušit, osobně mám zkušenost s distribucemi:

  • Zenwalk a jeho správcem balíčků netpkg, dnes se snaží využívat moderní flatpaky
  • Absolute s poněkud archaickým vzhledem a snahou minimalizovat využití systémových prostředků
  • Salix se svými grafickými utilitami nahrazující tradiční TUI
  • Slackel nabízející uživatelsky co nejpříjemněji použitelný systém včetně větve current
  • Freenix, který se podobně jako např. projekty Trisquel nebo Parabola snaží nabídnout zcela svobodný systém bez uzavřeného kódu
  • Wifislax zaměřující se na penetrační testování
  • Superb mini server představující projekt umožňující co nejméně bolestné nasazení serveru s využitím nástroje Webmin, dnes již nevyvíjený, doufám, že zcela neupadne v zapomnění

Pro koho se hodí?

Pomalu se blížíme k závěru dnešní recenze. Pro jakou skupinu uživatelů je tedy Slackware vhodný? Pokusím se odpovědět na příkladech kancelářské, domácí, vývojářské stanice a serveru:

1. Kancelářská stanice pro živnostníka a domácí výuku

Zjistil jsem, že mi jako drobnému živnostníkovi zcela dostačuje kancelářský balík LibreOffice (dopisy, evidence, faktury, úprava dokumentů PDF, jednoduchá databáze). Tuto aplikaci je sice nutné nainstalovat z externích repozitářů, je však udržována jedním z hlavních přispěvatelů.


Pokud jsou děti doma na distanční výuce, potřebuji MS Teams (obsažen ve slackbuildech) a možnost číst e-maily (webový prohlížeč nebo např. Thunderbird). Vypadá to, že malí podnikatelé budou od příštího roku muset povinně využívat datovou schránku, pro Slackware zatím neexistuje balíček aplikace Datovka, tu bych musel nainstalovat ručně, případně sám či s pomocí komunity slackbuild vytvořit. Za mě v pořádku, zvláště v případě, vlastním-li starší méně výkonný počítač (kde samozřejmě mohu využít např. Debian).

2. Pracovní stanice pro vývojáře

Nadšenci do světa C, C++ a dnes také Rustu si se Slackwarem (a samozřejmě nejen s ním) budou jistě rozumět. Kompletní prostředí KDE bude autor udržovat celou dobu životnosti distribuce, takže např. využití jeho vývojových nástrojů může představovat velmi stabilní prostředí. Python též vypadá bezproblémově, škoda, že trojková verze není výchozí, autor však má určitě svůj důvod. Další vývojové nástroje a IDE je nutné řešit balíčky třetích stran, které nejsou mnohdy aktuální, takže zde je ruční sestavení nutnost (a pro někoho možná i výhoda).


Osobně se zajímám o programovací jazyky Ada a Java, u této distribuce bych musel vše instalovat ze zdrojových kódů a sám udržovat. Zde mi asi nejvíce vstříc vychází Arch, vynikající wiki, uživatelské repozitáře udržované fandy do Ady (gnat, alire, ada language server) a oficiálně podporovaná Java (více verzí plus uživatelské repozitáře např. zajímavého projektu GraalVM) jsou pro mě důvodem, proč Arch nemám důvod opouštět.

3. Pracovní stanice pro hračičky

Zde mohu Slackware jen a jen doporučit, existují uživatelé, kteří pracují pouze v příkazové řádce a mají možnost si vše sami nastavit. Aktuální verze nabízí i kompletní překlad celé distribuce ze zdrojových kódů, který byl autorem a skalními uživateli doveden do stavu, kdy by mělo projít konečně vše bez chyb (přiznám se, že tuto možnost jsem nezkoušel, můj stroj zrovna nepřekypuje výkonem).

4. Server

Nasazení Slackware jako serveru může znít zvláštně, ve své předchozí praxi jsem se však setkal se společnostmi, které jej v produkci používaly k všeobecné spokojenosti. Je-li to jen trochu možné, doporučuji používat pouze oficiální balíčky distribuce a co nejméně externí repozitáře.


Oficiální wiki neobsahuje bližší informace, takže je nutné studovat, pochopit a poctivě otestovat návody z externích zdrojů. Autor se snaží zdrojové kódy aplikací co nejméně měnit a poskytnout je „tak jak jsou“, což je vzhledem k omezeným zdrojům pochopitelné. Osobně bych však kromě domácího/SOHO sektoru pro server zvolil jinou distribuci s oficiální dokumentací a možností placené podpory.

bitcoin_skoleni

Závěrem mi nezbývá, než vyjádřit vděčnost za to, že ochotní lidé tráví svůj čas tím, co je baví a své výsledky zdarma nabízejí ostatním. Pokud čtenáře Slackware alespoň trochu oslovil, neváhejte jej alespoň vyzkoušet, mezi linuxovými distribucemi má jistě své stálé místo. Osobně jej používám na starším 32bitovém stroji, který je již velmi letitý, ale plně funkční (i aktuální řada stále podporuje procesory starší než Pentium III), na zvážení je i nasazení v prostředí oblíbených jednodeskových počítačů Raspberry Pi.

(Autorem obrázků je Luděk Šťastný.)

Autor článku

Zajímá se jak o obor IT (Linux, informační systémy, programování), tak o jízdu na koních a pořádání dětských táborů plus vše s těmito činnostmi souvisejícími. Kombinace práce hlavou a rukama mu prostě sedla.