Hlavní navigace

Slax dnes vychází v nové verzi, je založen na Debianu a Fluxboxu

Petr Krčmář

Podle plánu vyšla nová verze distribuce Slax. Jde o přelomové vydání, které poprvé nepoužívá jako základ Slackware a KDE. Slax dnešním dnem přechází na Debian a jako prostředí volí Fluxbox.

Po pěti letech dnes vyšla nová verze linuxové distribuce Slax. Nejde jen o další evoluční vydání, ale vlastně o úplný restart celé distribuce, která byla od svého vzniku vždy spjata s distribucí Slackware a prostředím KDE. To se nyní po téměř 15 letech mění a nový Slax je založen na Debianu a rozhraní Fluxbox.

O změně začal Tomáš Matějíček uvažovat před třemi lety, kdy začal hledat náhradu za KDE. Obecně KDE (ani desktop, ani aplikace z KDE SC) už nesplňují moje požadavky na rychlý, jednoduchý a elegantní desktop. Je nejvyšší čas dát přednost něčemu rychlejšímu, menšímu a hezčímu, řekl nám. V té době ale ještě neuvažoval nad změnou podkladové distribuce ani neměl v hledáčku správce oken Fluxbox.

Bez Slackware a KDE

Na začátku roku 2016 se začalo hovořit o tom, že Slax by mohl ožít bez Slackware a bez KDE. Velká anketa ukázala, že víc než použitá distribuce a prostředí uživatele Slaxu zajímá modularita výsledku. Na preferovaném desktopovém prostředí se uživatelé neshodli. Dá se říci, že každý chtěl něco jiného a ať vyberu cokoliv, nikdy nebudou spokojení všichni. Takže jsem udělal rozhodnutí podle sebe a věřím, že je dobré, shrnul Tomáš Matějíček situaci kolem výběru desktopu pro Slax.

Výsledek vychází právě dnes, oznámen byl na začátku listopadu. Za výběrem distribuce nakonec stála snaha o co největší usnadnění vývoje Slaxu, protože do Slackware bylo potřeba vždy řadu věcí přidat, bojovat se závislostmi, kompilovat spoustu software i jaderných modulů. Tohle mě bavilo dřív, ale teď už ne, říká Tomáš.

Debian tedy umožnil řadu věcí zjednodušit, zároveň dává uživatelům do rukou mocný nástroj v podobě balíčkovacího systému apt a celého jeho rozsáhlého ekosystému. Uživatelé si tak mohou velmi snadno nainstalovat jakýkoliv software, který je dostupný v repozitářích Debianu. Díky perzistentnímu úložišti (například na flash disku) si tak může uživatel snadno základ doplnit dle svých požadavků a nosit vždy s sebou.

Změnilo se také verzování Slaxe, příští verze se budou číslovat podle verze Debianu, ze které vycházejí. Nový Slax je tak označen jako 9.2.1. Zajímavou novinkou je také 900kB ISO obraz, který bude distribuován společně s tradiční 200MB verzí. Malá varianta startuje zbytek systému z internetu, včetně linuxového jádra a initrd. Uživatel tak má výhodu v tom, že vždy dostane ze sítě nejnovější verzi Slaxu. Potřebuje ale dostatečně rychlé připojení k internetu, i když se nestahuje celý operační systém, ale jeho obraz je připojen na dálku a stahují se jen ty bloky, které jsou právě potřeba.

Co Slax nabízí proti Debianu?

Jakou přidanou hodnotu může Slax svým uživatelům poskytnout? Kromě možnosti nabootovat prostřednictvím Slaxu nejnovější minimalistický Debian, předchystaný a uhlazený do nejmenších detailů, se všemi jeho výhodami, přidává Slax standardně několik zajímavých věcí navíc.

Jednou z nich je nakopírování celého systému do paměti RAM. Stačí na bootovací obrazovce stisknout libovolnou klávesu před uplynutím čtyřvteřinového časovače a vybrat z nabídky možnost Copy to RAM. To sice mírně prodlouží start, ale na oplátku je takto výrazně zrychlen následný běh celého systému. Navíc je díky tomu možné po nastartování vysunout bootovací médium (CD nebo USB disk) a použít jej například na nastartování dalšího počítače.

Další přidanou hodnotou, kterou Slax přináší, je velmi jednoduché uložení provedených změn v případě, že uživatel bootuje ze zapisovatelného média, jako je USB nebo pevný disk. V bootovací nabídce stačí vybrat položku Keep changes persistent. Slax potom ukládá veškeré filesystémové změny na médium, ze kterého nastartoval, do adresáře /slax/changes. Vytvoří zde soubor changes.dat, který dynamicky roste.

Touto metodou se ukládají všechny změny, včetně nainstalovaných aplikací, smazaných souborů, zkrátka vše. Pokud by se uživatel rozhodl uložit provedené změny až po nabootování, má stále možnost, použití příkazu savechanges. Jako jediný parametr mu zadá cestu k souboru, který se má vytvořit. Výsledkem je soubor ve formátu squashfs (tedy přímo modul pro Slax).

V neposlední řadě je možné stáhnout z oficiálních stránek projektu minimalistické ISO s velikostí pod 1 MB. V něm se ukrývá IPXE firmware, který zajistí nakonfigurování síťové karty a stáhnutí nejaktuálnějšího jádra operačního systému z webu. Poté je Slax nastartován bez nutnosti stahování celého ISO obrazu – httpfs zajistí, že jsou stahovány jen ty bloky, ke kterým se aktuálně přistupuje. Funkční systém s grafickým UI si tak v průměru stáhne jen něco přes 30 MB dat. Toto asi nejvíce ocení uživatelé s velmi rychlým připojením k internetu.

Modularita zůstává

Stejně jako předchozí verze, i tato je plně modulární. Jednotlivé části systému je možné přidávat či odebírat za chodu prostřednictvím souborů s příponou .sb, které ukrývají souborový systém squashfs, nebo tyto soubory přidat na bootovací médium do adresáře /slax. Touto cestou jde například permanentně přidat do Slaxu soubor změn uložený příkazem  savechanges.

Rozhovor s autorem Slaxu

Proč ožívá Slax právě teď, a proč ses rozhodl právě pro Debian?

Začátkem roku jsem si pořizoval do garáže mining rig pro těžení kryptoměn (se 100 GPU) a potřeboval jsem operační systém, který budu na všech těch počítačích spouštět. Bootovat ze sítě mi přišlo ideální, a peníze ušetřené za harddisky jsem tak mohl investovat do vlastního času při přípravě distra, které bude bootovat z NASu. Kvůli ovladačům ke grafickým kartám jsem byl nucen použít do rigů Ubuntu, a zjistil jsem, že všechny mé znalosti a zkušenosti se Slackware jdou výborně uplatnit i na debianí distra, stačilo jen pár drobných změn v LiveKit skriptech. Tahle zkušenost asi stála za rozhodnutím použít nakonec Debian. Obecně vzato ale jsou nakonec všechny linuxové systémy stejné, je to prostě GNU a Linux. Liší se jenom v tom, který software uživateli nabídnou v základu a jak mu usnadňují jeho následnou správu.

Od října jsem měl pracovně celkem klidné období a tak mě napadlo, jen tak pro zábavu, zkusit Slax vzkřísit. Základ byl hotový snadno a zhruba měsíc trvalo doladit detaily.

Jak důležitou roli hrála anketa mezi uživateli, kterou jsi pořádal?

Vždycky jsem si myslel, že lidi, co používají Slax, potřebují Slackware. Někteří určitě ano, ale anketa ukázala, že většině uživatelů je to vcelku jedno. To bylo pro mě překvapivé zjištění, díky kterému jsem se odhodlal zkusit něco nového. Stejně tak z ankety, která měla nakonec přes 1700 respondentů, vyšlo najevo, že drtivá většina uživatelů (96,2 %) očekává ve Slaxu nachystaný především webový prohlížeč a ostatní aplikace je už tolik nezajímají. To potvrzuje moji dlouhodobou tezi, že všechno se dnes přesouvá na web. Díky apt navíc není potřeba cokoli dalšího uživatelům chystat.

Ve 200MB verzi Slaxu je výrazně méně desktopových aplikací. Je Debian náročnější?

Nejde ani tak o náročnost, jako spíš o filozofii, kterou jsem u Debianu pochopil po výměně několik emailů s jedním vývojářem, který má na starosti balíky v oficiálních repozitářích. Hlásil jsem „chybu“, že balík x11-xserver-utils (vlastní velikosti asi 100 KB) vynucuje závislost na CPP kompileru (asi 20 MB), a přitom ho běžně vůbec nepoužije. Bylo mi vysvětleno, že v určitých případech binárka xrdb z toho malého balíku potřebuje svoje konfigurační soubory prohnat přes preprocessor, což byl právě cpp, a proto byla k x11-xserver-utils přidána závislost na cpp. Tato politika je pro koncového uživatele jistě přínosná, dostane software se všemi dostupnými vlastnostmi, ovšem bohužel za tu cenu, že si do počítače zanese spoustu věcí zbytečně.

Věřím, že to samé, co poskytuje teď Slax ve svých 200 MB, by se dalo osekat o závislosti a překompilovat třeba na půlku. Mým cílem ale bylo zachovat pokud možno co nejvíc Debianu, protože čím víc se člověk odchýlí, tím víc má práce. Proto je Slax o něco větší, než by asi měl, ale při 200 MB je to asi jedno.

Co všechno jsi musel upravovat?

Především jsem musel přizpůsobit LiveKit skripty, aby lépe spolupracovaly se systemd. Změny jsou to celkem titěrné, ale nějaký čas zabralo přijít na to, co přesně systemd potřebuje. Například, pokud nechci aby systemd zabil při ukončování systému nějaký proces, protože jej potřebuji ukončit až později, musím ho přejmenovat tak, aby první písmeno bylo zavináč. Koho by to napadlo… Další úpravy se týkají vzhledu Fluxboxu, musel jsem si nakonfigurovat vlastní téma, a protože taskbar neumí ikonku na menu, musel jsem si pomoci asi dvaceti řádky ve zdrojových kódech a Fluxbox překompilovat. Pro výběr aplikací, pro odhlašovací obrazovku a pro power ikonku v systray je pak použit můj vlastní software, dokompilovaný zvlášť. Zbytek je čistý (a trochu promazaný) Debian.

Plánuješ pro Slax ještě nějaké overlaye nebo už vše necháš na balíčcích z Debianu?

Uvažoval jsem nad vrstvou, která by sloužila jako „cache“ pro skupiny balíků předchystaných do modulů, ale asi to realizovat nebudu. O vlastní repositář jsem se pokoušel už několikrát, a i když uživatelé do něj velmi ochotně přispívali, nikdy se nedostal ani na tisícinu toho, co je dostupné pro Debian. Takže každá taková snaha se ukazuje jako kontraproduktivní.

Už má Slax nějaký byznys model?

Docela se osvědčilo prodávání flashdisků se Slaxem, díky kterému se vrátila investice švýcarským firmám, které podpořily Slax před lety. Zvážím, jestli jej opět zavést, jeden kamarád se nabízel, že za mě bude odesílat zásilky. Samotnému se mi to dělat nechce, on to totiž není žádný med, denně čekat půl hodinu na poště.

Našli jste v článku chybu?