Hlavní navigace

(Téměř) rok na Silverblue: Fedora s úplně hladkými aktualizacemi

Jiří Eischmann

Minulý rok jsem si na domácí notebook nainstaloval Fedora Silverblue. Tenkrát to byla hodně čerstvá zkušenost. Samotné Silverblue se za tu dobu taky hodně posunulo. Jak se tedy mi funguje na neměnném systému s odstupem roku?

Doba čtení: 5 minut

Sdílet

Když jsem minulý rok Silverblue nainstaloval, hned jsem přešel na Rawhide, který jsem měl na notebooku i před tím. Mít možnost vrátit se ke stavu před aktualizací se u Rawhidu, kde se občas něco rozbije, opravdu hodí. Nicméně musí vám spolehlivě fungovat aspoň OSTree, což minulý rok v Rawhidu úplně pravidlem nebylo.

Od určitého snapshotu jsem nebyl schopný aktualizovat, takže jsem si musel držet poslední snapshot, kde to fungovalo, a do něj vždycky nabootovat, stáhnout poslední verzi systému a do ní rebootovat. To mě pomalu přestávalo bavit, a když jsem se tomu snažil přijít na kloub, smazal jsem si omylem ten poslední snapshot s fungujícími aktualizacemi a ocitl se v pasti. To mě konečně donutilo k reinstalaci.

V poslední době nemám doma moc čas experimentovat a notebook prostě jenom používám, takže jsem se nainstaloval Silverblue založené na stabilní Fedoře. A to od té doby prostě funguje.

Hladké aktualizace

Co je na Silverblue naprosto skvělé, jsou aktualizace. rpm-ostree vám na pozadí stáhne novou verzi a GNOME Software vám jenom oznámí, že máte k dispozici aktualizovanou verzi systému a měli byste rebootovat. Ne, že by aktualizace v „balíčkových“ systémech byly složité, ale vyžaduje to nějakou akci uživatele. Většina BFU, kterým jsem Fedoru nainstaloval, neaktualizuje, i když jim to GNOME Software připomíná. A já nemám odvahu jim to pouštět automaticky, protože to prostě není bezpečné. Musím to tak dělat ručně, když se k jejich počítači dostanu, což je klidně jenom jednou za několik měsíců.

Ještě jednodušší jsou aktualizace aplikací. Silverblue se u nich dost blíží tomu, co známe z Androidu. Všechny aplikace mám ve Flatpaku, aktualizují se zcela nezávisle na systému a pokud si nastavíte automatické aktualizace, tak vám GNOME Software hlídá nové verze, stahuje je a na pozadí rovnou aplikuje. Dostanete jen upozornění, že byla aplikace aktualizovaná. Na rozdíl od balíčků nejsou běžící aplikace nijak dotčeny, protože jim Flatpak nemění za běhu soubory. Aplikaci stačí zavřít a znovu otevřít a máte novou verzi.


Upgrade systému v případě Silverblue vlastně není nic jiného než aktualizace. Technicky je rozdíl v tom, že se přepnete do jiné větve repozitáře OSTree, a ne, že jen poskočíte o jeden commit v té stávající, ale ve výsledku to je jenom stažení dalšího snapshotu a nabootování do něj. Jediný čas, který vám to vezme, je reboot počítače. A když vám nová verze systému z nějakého důvodu nevyhovuje, můžete se dalším rebootem vrátit k předchozí.


Jedním z velkých problémů Silverblue v minulém roce bylo pomalé stahování aktualizací z OSTree serveru. Nebyl totiž nijak zrcadlený a jak rostla popularita Silverblue, rychlosti padaly dolů až třeba na 10–15 kbps. Ne, že by to až tak vadilo. Pokud člověk spoléhal na automatické stahování, nemusel to příliš řešit, protože se to stahovalo na pozadí a bylo vcelku jedno, jestli to trvalo 10 minut nebo 5 hodin. Pokud ale člověk chtěl z nějakého důvodu aktualizovat hned, bylo to dost otravné. Dnes už takový problém Silverblue nemá. Fedora Project zapracoval na lepší konektivitě a rychlosti jsou dnes v jiných řádech.

Aplikace ve Flatpaku

Co se týče aplikační výbavy, tak téměř výhradně závisím na Flathubu, kde je dnes skoro 600 aplikací a popravdě si nemůžu vzpomenout, že by mi něco chybělo. Trochu mi chybí stabilní Firefox, na jehož flatpaku Mozilla pořád pracuje, a já tak musím pořád používat Firefox DE z našeho testovacího repa. I takový Steam ve Flatpaku mi funguje výborně a díky Protonu si můžu zahrát i řadu her původně pro Windows.


Pomalu ale jistě se rozjíždí i repozitář s flatpaky z Fedory. Momentálně se v něm nachází přibližně 25 aplikací. Jeho výhodou je, že bude v budoucnu v Silverblue přednastavený a že v něm člověk dostane stejné záruky jako u repozitářů s balíčky Fedory, protože flatpaky v něm jsou skládané z balíčků ve Fedoře. Je v něm k dispozici už i stabilní Firefox, ač zatím v trochu surové podobě – není lokalizovaný a nejdou do něj jednoduše nainstalovat kodeky.

Až repozitář s flatpaky plnohodnotně pokryje všechny výchozí aplikace, plánuje se odstranění zbylých aplikací z obrazu systému, na kterém zůstanou jen systémové nástroje (Disky, Sledování systému…) a aplikace, u kterých dává smysl, aby byly součástí systému (správce souborů Nautilus). Třeba Firefox bude v Silverblue předinstalovaný, ale ne jako součást systému, ale v podobě odinstalovatelného flatpaku.

Co ještě drhne

Jediná věc, u které jsem v Silverblue zatím tvrdě narazil, je podpora domácí tiskárny od HP, která vyžaduje stažení proprietárního firmwaru. Ten se stahuje do cesty, která není v Silverblue zapisovatelná, a nastavení tiskárny tudíž selže. Mysleli jsme si, že to vyřešíme patchem hplip, ale způsob, jakým to hplip dělá, je dost zvláštní. Stahuje totiž binární blob ze serverů HP a až ten dělá samotné stahování.

Další věcí, která ještě nefunguje tak optimálně, jak bych si představoval, je Toolbox, což je nástroj nad Podmanem, který vám vytvoří kontejner, v kterém máte standardní Fedoru s balíčky. Připojí vám to tam automaticky /home z hosta, připojí se to k zobrazovacímu serveru, takže si tam můžete instalovat i desktopové aplikace, které třeba nejsou pro Flatpak. Problém je, že Podman se pořád dost mění, což rozbíjí kompatibilitu s Toolboxem. S tímto budeme ještě muset něco udělat, aby to bylo připravené na prime time. Zatím se jedná pouze o sadu shell skriptů, které parsují konzolový výstup Podmanu. Plánuje se přepsání do Go a používání API Podmanu. Testy s Toolboxem by také měly přibýt do CI Podmanu.

Jinak ale musím po roce používání konstatovat, že Silverblue je zatím to nejvíc „just works“ distro, jaké jsem zkoušel (snad s výjimkou Endless OS, který ale cílí na úplně jinou skupinu uživatelů, než jsem já). Upgrady jsou extrémně snadné a rychlé, aktualizace fungují téměř kompletně automaticky, aplikace si žijí svým životem a nejsou ovlivněné změnami v systému atd.

Chtěli bychom časem nahradit tradiční Fedora Workstation právě Silverblue na pozici výchozí desktopové varianty Fedory. Já ale zvažuji, že jej budu instalovat na počítače běžných uživatelů kolem mě už nyní.

(Původně napsáno pro Sešívaný blog.)