Fedora Silverblue im Praxistest

Ich liebe LTS-Distributionen, aber diese bewahren einen leider nicht vor defekten SSDs im Notebook. Da ich keine Vollsicherung der Systeme mache, sondern nur Datenbackups mit Borg, musste ich mein System nach dem Austauschen der SSD komplett neu einrichten. Zeit also für ein Experiment mit Fedora Silverblue.

Eigentlich ist Fedora nichts für mich. Zu schnell entwickelt, zu viele Updates. Ich bin aber bekanntermaßen ein großer Freund der aktuellen Entwicklung rund um systemd und halte den Schritt zu unveränderbaren Distributionen mit Flatpaks als Installationsmethode für Anwendungen für einen wichtigen Meilenstein, um Linux weiterhin attraktiv zu halten. Mit diesem Interesse bin ich nicht alleine, sondern es nutzen sukzessive mehr Leute Distributionen wie Silverblue. Durch die Architektur des Systems sollten halbjährliche Upgrades zudem kein Problem mehr darstellen, weil einfach per Rebase eine neue Basis unter die eigenen Apps und Konfigurationen gelegt wird. Keine aufwendigen Upgradeprozeduren mit Pakettransitionen und Nacharbeiten. Zeit also das nicht mehr nur in der virtuellen Maschine, sondern auch auf dem produktiven System zu testen.

Warum Fedora Silverblue?

Fedora Silverblue bietet hier die am weitesten ausgereifte Variante eines unveränderbaren Linux-Systems. Daneben gibt es noch die Variante mit KDE Plasma, genannte Fedora Kinoite sowie Endless OS als debian-basierten Ansatz. Alle anderen Distributionen, die stärker auf Flatpak setzen, wie z.B. elementary OS, tun dies noch nicht konsequent, sondern kombinieren eine klassische Paketverwaltung mit dem Flatpak-Ansatz. SUSE entwickelt mit ALP eine vergleichbare Lösung, aber diese steckt momentan noch in den Kinderschuhen und wird voraussichtlich erst 2024 für Endanwender zur Verfügung stehen.

Nach reiflicher Überlegung habe ich mich zudem entschieden, direkt Fedora Silverblue, also die GNOME-Variante, zu testen und nicht Kinoite. Dahinter stecken verschiedene Überlegungen. KDE hat in den letzten 10 Jahren einen Weg der immer stärkeren Aufsplitterung der Bibliotheken und Umsetzung von zig Frameworks gewählt. KDE Frameworks, Akonadi, Nepomuk/Baloo, Phonon etc. pp. Meiner Ansicht nach ist das im Angesicht der aktuellen Entwicklung eine Sackgasse, weil beispielsweise das Flatpak Kontact alle KDEPIM-Anwendungen und Akonadi bündeln muss. GNOME ist einen anderen Weg gegangen – wohl auch, weil die GNOME-Entwickler besser mit den Treibern der Entwicklung im Red Hat-Umfeld vernetzt sind – und ermöglicht einen stimmigeren Einsatz von Basis-System und Flatpak-Ökosystem. Abgesehen davon hadere ich schon länger mit der KDE-Entwicklung und wollte GNOME mal wieder eine Chance geben.

Eine solche Umstellung ist für mich nicht schwer. Schon seit vielen Jahren mache ich mich nicht von einzelnen Anwendungen abhängig, sondern von Standards und Protokollen. IMAP, CalDAV, CardDAV für PIM, WebDAV für Dateien, KBX-Datei für Passwörter, die Google API für mein FreshRSS, einen Borg-Client für Backups etc. pp. Welche Client-Anwendungen diese Protokolle implementieren, ist mir da eher egal. Dazu kommen noch einige proprietäre Programme wie SoftMaker Office oder moneyplex und Open Source-Standards wie Firefox oder Zotero. Diese nutze ich unter jedem System und jener Desktopumgebung.

Funktionsweise von Fedora Silverblue

Fedora Silverblue bricht mit dem hergebrachten Ansatz, wie Linux-Distributionen funktionieren. Die Basis bilden zwar immer noch die Pakete im Fedora Repositorium, aber diese kommen auf unterschiedlichen Wegen in das System.

Anstelle DNF kommt rpm-ostree zum Einsatz. Das Basissystem besteht nicht mehr aus einer Vielzahl einzelner Pakete, die nacheinander installiert werden, sondern aus einem Image (das natürlich weiter aus Paketen besteht und sich unterscheidet, je nachdem, ob man die Variante Silverblue, Kinoite oder Vauxite nutzt). Dieses kann zur Laufzeit nicht verändert werden und wird lediglich eingehängt. Aktualisierungen des Basissystems erfordern einen Neustart, wodurch man faktisch in ein neues Image bootet. Dadurch kann bei Fehlern jederzeit der vorherige Zustand wiederhergestellt werden. Dieses Basisimage ist sehr reduziert und beinhaltet nur das Linux-Basissystem und einen schlanken GNOME-Desktop.

Anwendungen sollen als Flatpaks installiert werden. Einige sind schon vorinstalliert und Fedora bietet eine eigene Flatpak-Quelle an. Das hat viel Kritik hervorgerufen, weil eine Idee von Flatpaks eigentlich der zentrale Bezug über Flathub ist und es eben keine distributionsspezifischen Angebote geben sollte. Fedora glaubt dies aus patentrechtlichen Gründen, Open Source-Prinzipien und Gründen der Qualitätssicherung trotzdem tun zu müssen. Der Ausgang dieser Diskussion ist aber meines Erachtens noch offen. Flathub lässt sich natürlich sehr einfach einbinden und bietet Zugang zu einem riesigen Pool an Software. Das Projekt wird von seinen Machern zurecht als gewaltiger Erfolg betrachtet.

Nicht jede Anwendung kann als Flatpak installiert werden. Manche Anbieter wie z. B. Matrica oder SoftMaker bieten ihre Software leider noch nicht als Flatpak, andere Sachen wie z.B. Bibliotheken werden sich so nie installieren lassen. Dafür gibt es zwei Möglichkeiten. Die erste Möglichkeit ist eine Installation via rpm-ostree in einen eigenen Layer außerhalb des System-Images. Das nutze ich beispielsweise für GTK2, das ich für moneyplex benötige oder für SoftMaker Office. Für Kommandozeilenwerkzeuge bietet Fedora das Werkzeug Toolbox an, das containerbasierte eine Umgebung für DNF bereitstellt.

Wie sieht das System nun aus?

Das Basissystem ist sehr schlank geraten. Es umfasst circa 1200 Pakete. Puristen stören sich sicherlich daran, dass nicht benötige Firmware oder Sprachpakete nicht deinstalliert werden können. Ich halte das für eine Spielerei, die letztlich nur wenige MB spart und vor allem einen gefühlten Mehrwert bringt, weil man sich dann einreden kann, dass man sein System individuell angepasst hat. Letztlich hat sich Linux in den vergangenen Jahren stark homogenisiert und ob man nun so ein Image installiert oder sein System mit Arch oder Debian individuell aufbaut: 80% der Pakete werden identisch sein.

Ergänzend zu diesem Basissystem habe ich folgende Pakete via rpm-ostree installiert:

firewall-config
gnome-tweaks
softmaker-office-2021
gtk2
gnome-shell-extension-dash-to-dock
gnome-shell-extension-just-perfection
gnome-shell-extension-user-theme
gnome-shell-theme-flat-remix

Die GNOME-Shell Extensions hätte ich auch im Userspace via GNOME Erweiterungen installieren können, aber bevorzuge hier die auf die jeweilige GNOME-Version in Fedora abgestimmt Variante.

Zusätzlich kommen folgende Flatpaks hinzu:

Name                                      Anwendungskennung                        Version      Zweig           Ursprung    Installation
PDF Arranger                              com.github.jeromerobert.pdfarranger      1.9.2        stable          flathub     system
Flatseal                                  com.github.tchx84.Flatseal               1.8.1        stable          fedora      system
NewsFlash                                 com.gitlab.newsflash                     2.2.4        stable          flathub     system
Erweiterungs-Manager                      com.mattjakeman.ExtensionManager         0.4.0        stable          flathub     system
Metadaten-Reiniger                        fr.romainvigier.MetadataCleaner          2.5.0        stable          flathub     system
Fedora Platform                           org.fedoraproject.Platform               37           f37             fedora      system
FileZilla                                 org.filezillaproject.Filezilla           3.63.2       stable          flathub     system
YOGA Image Optimizer                      org.flozz.yoga-image-optimizer           1.2.2        stable          flathub     system
Freedesktop Platform                      org.freedesktop.Platform                 22.08.9      22.08           flathub     system
Mesa                                      org.freedesktop.Platform.GL.default      22.3.5       22.08           flathub     system
Mesa (Extra)                              org.freedesktop.Platform.GL.default      22.3.5       22.08-extra     flathub     system
Intel                                     org.freedesktop.Platform.VAAPI.Intel                  22.08           flathub     system
ffmpeg-full                               org.freedesktop.Platform.ffmpeg-full                  22.08           flathub     system
openh264                                  org.freedesktop.Platform.openh264        2.1.0        2.2.0           flathub     system
GNU Image Manipulation Program            org.gimp.GIMP                            2.10.32      stable          fedora      system
Boxen                                     org.gnome.Boxes                          43.1         stable          flathub     system
GNOME Boxes Osinfo DB                     org.gnome.Boxes.Extension.OsinfoDb       20230308     stable          flathub     system
Taschenrechner                            org.gnome.Calculator                     43.0.1       stable          fedora      system
Zeichen                                   org.gnome.Characters                     43.1         stable          fedora      system
Dokumentenbetrachter                      org.gnome.Evince                         43.1         stable          fedora      system
Erweiterungen                             org.gnome.Extensions                     43.beta      stable          fedora      system
Archivverwaltung                          org.gnome.FileRoller                     43.0         stable          fedora      system
Protokolle                                org.gnome.Logs                           43.0         stable          fedora      system
Lollypop                                  org.gnome.Lollypop                       1.4.37       stable          fedora      system
Karten                                    org.gnome.Maps                           43.2         stable          fedora      system
Meld                                      org.gnome.Meld                           3.22.0       stable          fedora      system
Sushi                                     org.gnome.NautilusPreviewer              43.0         stable          fedora      system
GNOME Application Platform version 43     org.gnome.Platform                                    43              flathub     system
GNOME Energiestatistiken                  org.gnome.PowerStats                     43.0         stable          flathub     system
Texteditor                                org.gnome.TextEditor                     43.1         stable          fedora      system
Videos                                    org.gnome.Totem                          43.0         stable          flathub     system
Codecs                                    org.gnome.Totem.Codecs                                stable          flathub     system
yt-dl totem-pl-parser plugin              org.gnome.Totem.Videosite.YouTubeDl                   stable          flathub     system
Wetter                                    org.gnome.Weather                        43.0         stable          fedora      system
Pika Datensicherung                       org.gnome.World.PikaBackup               0.5.2        stable          flathub     system
Secrets                                   org.gnome.World.Secrets                  7.2          stable          fedora      system
Festplattenbelegungsanalyse               org.gnome.baobab                         43.0         stable          fedora      system
Uhren                                     org.gnome.clocks                         43.0         stable          fedora      system
Bildbetrachter                            org.gnome.eog                            43.1         stable          fedora      system
Schriften                                 org.gnome.font-viewer                    43.0         stable          fedora      system
Passwörter und Verschlüsselung            org.gnome.seahorse.Application           43.0         stable          fedora      system
LocalSend                                 org.localsend.localsend_app              1.8.0        stable          flathub     system
Thunderbird                               org.mozilla.Thunderbird                               stable          fedora      system
Firefox                                   org.mozilla.firefox                      110.0.1      stable          flathub     system
Zotero                                    org.zotero.Zotero                        6.0.20       stable          flathub     systemCode-Sprache: CSS (css)

Wie man sieht, bin ich meinem Prinzip treu geblieben und nutze überwiegend die passenden Programme zur Desktopoberfläche – egal welche das nun im Einzelfall ist.

Die Pakete stammen gemäß Fedora-Prinzip bevorzugt aus der Fedora-Quelle und sekundär aus Flathub. Dazu kommt dann die jeweilige Basispakete von Freedesktop oder Fedora.

Verhalten im Alltag

Das System läuft sehr stabil und die unabhängige Aktualisierung von Anwendungen und Basissystem ist beispielsweise vom Android Smartphone vertraut. Wirkliche Mehrwerte sehe ich hier eigentlich wirklich für LTS-Distributionen, aber natürlich ist es auch bei Fedora schön, einfach schnell ein FileZilla-Update einzuspielen, ohne im schlimmsten Fall das Basissystem und die dortigen Bibliotheken anpassen zu müssen.

Viele der Startschwierigkeiten bezogen sich auch auf die ungewohnte GNOME-Umgebung und wären ebenso bei einem normalen Fedora aufgetreten. In der Summe merkt man aber bei GNOME, dass dort mehr Entwicklerkapazitäten hinter stecken. Der Desktop und die Programme sind ausgereifter und stabiler. Die Bedienkonzepte gewöhnungsbedürftig, aber konsequent durchgezogen. Hat man sie verinnerlicht, kommt man damit sehr gut klar und muss nicht bei jedem Programm auf Entwicklersonderwege und eigenwillige Ideen von Designamateuren Rücksicht nehmen. Lustigerweise hat mir bisher noch keine einzige Option im Einstellungsdschungel von KDE gefehlt. Manche Extensions für GNOME wie z. B. Pano möchte ich schon nach wenigen Tagen nicht mehr missen.

Die Möglichkeit, alte Systemstände zurückzuholen, habe ich bisher nicht wirklich gebraucht, aber natürlich getestet und bin begeistert, wie gut das funktioniert. Dies schafft gegen die Unwägbarkeiten des Alltags eine wirksame Absicherung.

Einen Mehrwert bietet für mich Toolbox und GNOME Boxes. Mit Toolbox kann man sein System wunderbar sauber halten, während man Entwicklertools nutzt und GNOME Boxes integriert sich so hervorragend in GNOME, das virtuelle Maschinen ganz neue Mehrwerte generieren. Beides könnte man natürlich auch mit einem normalen Linux-System nutzen.

Etwas problematisch ist die Notwendigkeit, bei jedem Update des Basissystems einen Neustart durchzuführen. Fedora ist bekanntermaßen sehr Update-freudig und wer da nicht nachlässig sein möchte, muss alle paar Tage neustarten. Das ist aber ein Problem aus der Kombination rpm-ostree und Fedora. Bei Red Hat Enterprise Linux dürfte das zukünftig nicht im gleichen Maße auftreten und letztlich zielt die Entwicklung bei Fedora ja meist auf das Enterprise-Produkt.

Probleme durch die Zugriffsbeschränkungen von Flatpaks sind überhaupt keine aufgetreten, längeres Startverhalten oder ähnliches kann ich auch nicht beobachten. Der Speicherplatzverbrauch aus System, Programmen und Daten in der Summe nicht groß anders als bei meinem bisherigen System.

Das System hat zudem noch einige Kinderkrankheiten, die sich aus Abweichungen zum „Standard-Linux“ ergeben. So ist bei einem LUKS-verschlüsselten System beim Start immer das englischsprachige Tastaturlayout eingestellt. Diese Fehler sind bekannt, harren aber einer wirklichen Lösung jenseits von Workarounds.

Sehr gespannt bin ich auf das erste Rebase der Basis von Fedora 37 auf Fedora 38 in diesem Frühjahr.

Zusammengefasst

Die Erfahrung mit einer unveränderbaren Distribution und einem Flatpak-Anwendungsökosystem ist anfänglich gewöhnungsbedürftig im produktiven Betrieb, aber man erfreut sich schnell an den Vorzügen. Ich halte es immer noch für den richtigen Weg und denke, dass die meisten Linux-Distributionen mit einem Endanwender-Fokus diesen über kurz oder lang beschreiten werden. Mal sehen wie meine weiteren Erfahrungen mit Silverblue (und GNOME) sein werden.

Cruiz
Cruizhttps://curius.de
Moin, meine Name ist Gerrit und ich betreibe diesen Blog seit 2014. Der Schutz der digitalen Identität, die einen immer größeren Raum unseres Ichs einnimmt ist mir ein Herzensanliegen, das ich versuche tagtäglich im Spannungsfeld digitaler Teilhabe und Sicherheit umzusetzen. Die Tipps, Anleitungen, Kommentare und Gedanken hier entspringen den alltäglichen Erfahrungen.
  1. Der Vollständigkeit halber könnte man vielleicht noch erwähnen, dass openSUSE mit MicroOS auch jetzt schon ein Silverblue-Äquivalent hat, wenn auch auf rollender Basis. Und Vanilla OS gibt es auch noch, derzeit noch auf Ubuntu-Basis, aber der nächsten Version aber mit einem semi-rollenden Debian.

    Macht für mich als Ansatz auch irgendwie Sinn, da die Flatpaks ja letzten Endes auch quasi-rollend sind und die neben der Desktoo-Umgebung für die User-Erfahrung ja eh am prägensten sind.

    • Stimmt, MicroOS habe ich unterschlagen. Für mich ist das immer irgendwie eine Preview auf SUSE ALP.

      Ich finde aber gar nicht, dass Flatpaks rollende Systeme implizieren. Flatpaks bieten ja einen doppelten Gewinn. Ich kann sehr alte Anwendungen auf neuen Betriebssystemversionen betreiben (ob man das will sei mal dahin gestellt) und ich kann neue Anwendungen auf einer alten Basis betreiben.

      • Sorry, hatte die Seite zu lange nicht neu geladen, könnt meinen anderen Kommentar ignorieren. Und bzgl. MicroOS als Preview: Wenn ich Richard Brown richtig verstanden habe, wird ALP voraussichtlich eine etwas größere Basis haben als MicroOS und auch sonst etwas anders sein.

  2. Noch ein paar Ergänzungen:
    – meine eigentlich, dass der Umzug zu/das Hinzufügen von flathub für die nächste Version schon beschlossen ist. Habe da jetzt aber kein Link zur Hand
    – Installieren/Nutzen von grafischen Anwendungen über Toolbox sollte eigentlich möglich sein. Zumindest war das bei der openSUSE toolbox so, wobei die auch nicht ganz identisch sind. MicroOS ist dafür standardmäßig inzwischen eh zu distrobox umgestiegen, was die Desktopintegration noch einmal leichter macht und einen noch breiteren Paketschatz ermöglicht. Lässt sich natürlich auch für Silverblue installieren.
    – Reboot ist nicht zwingend nötig. Gibt auch eine Updateoption, die „apply live“ o.ä. heißt. Wobei reboots natürlich immer etwas stabiler sin€

  3. Wieso nicht openSUSE MicroOS? Das ist zwar offiziell noch RC, aber außer dass man die unangekündigten Neustarts mit einem Befehl am Anfang ausschalten muss, ist es absolut nutzbar. (Und ja, die (kleine) Basis ist theoretisch RR, aber de facto bewahrt einen der automatische Check von Snapshots lokal auf dem Rechner vor nicht bootenden oder fehlerhaften Systemen.) Und im Konzept sind einige Dinge meiner Meinung nach besser gelöst, wie z.B. die direkte Integration von Flathub oder die automatische Installation von Firefox und anderen Grundanwendungen als Flatpak anstelle als RPM-Paket.

    • Unangekündigte Neustarts gibt es schon ne Weile nicht mehr. Stattdesen nur eine Benachrichtigung, dass das Update durchgelaufen ist.

    • Ich habe die bisher nicht vermisst. Vermutlich weil ich Firefox direkt aus Flathub nutze und außerhalb des Browsers eigentlich keine Videos abspiele. Aber ich schaue es mir mal an.

    • Man sollte lieber ffmpeg-full von Flathub ziehen, genauso wie Cisco-Codec (ffmpeg-full: org.freedesktop.Platform.ffmpeg-full, org.freedesktop.Platform.ffmpeg_full.i386, org.freedesktop.Platform.openh264). Ich nutze Google Chrome von Flathub, aber ich glaube Firefox bringt die benötigten Codecs mit oder stößt die oben genannten an. Silverblue ist echt klasse.

  4. Kann man so machen, dann hat man aber den Sinn von „unveränderlichen“ Distributionen nicht verstanden. Der Kern des OS soll unverändert bleiben, unkaputtbar. Man erstellt sich statt dessen eine (oder mehrere) Toolbox(en), in denen man rumspielen und die benötigten Programme installieren kann (ganz normal mit „dnf“). Ich würde empfehlen, mal die Artikel von Fedora zu Silverblue und Toolbox zu lesen. Von rpm-ostree wird abgeraten. „rpm-ostree should only be used when there is no other way“. Kurze Einführung zu Toolbox zur Weterbidung: https://fedoramagazine.org/a-quick-introduction-to-toolbox-on-fedora/

      • Für MicroOS zumindest ist die Handreichung, alles was sich auch funktionabel anderweitig als auf dem Base-System installieren lässt, auch anderweitig zu installieren. Aufs Base-System kämen dann nur so Sachen wie z.B. Treiber, vllt Firewall- und VPN-Pakete und ähnliches Gedöns.

      • Keine Ahnung – aber einfach so locker-flockig die Installation via „rpm-ostree“ empfehlen ohne die Warnung der Entwickler zu erwähnen, dass man das Tool nur im äußerten Notfall nutzen sollte, ist amateurhaft.

        • Keine Ahnung haben, aber mir Amateurhaftigkeit zu unterstellen hat auch eigenen eigenen Stil. Ich bin für konstruktives Feedback immer zu haben, zumal meine Erfahrungen mit Silverblue als primäres System erst wenige Tage alt ist und ich sicherlich nicht die Weisheit mit Löffeln gefressen habe, aber das ist nicht konstruktiv, sondern einfach nur dünn.

          Keines der Pakete kann man sinnvoll in einer Toolbox installieren. Lediglich die GNOME Shell Extensions könnte man auch im Userspace installieren, aber Fedora Silverblue hat im Baseimage durchaus GNOME Shell Extensions enthalten, also ist es nicht gänzlich abwegig diese via rpm-ostree über das Baseimage zu legen.

  5. Schau Dir mal distrobox (https://github.com/89luca89/distrobox) an, das ist toolbox on Steroids und integriert auch gut mit dem Desktop für grafische Anwendungen. Du kannst auch unterschiedliche Distributionen als Basis für den Container wählen, falls zB Software nur als deb oder rpm zur Verfügung steht oder eine bestimmte Version von Ubuntu braucht.

  6. Hallo Gerrit!
    Ich hätte Silverblue gerne auf meinem Hauptrechner als Daily Driver eingesetzt, aber das Mainboard darin gehört leider zu denen, die wegen Shim-Problemen nicht vom USB-Stick booten.
    Das Problem gab es schon unter Fedora 37 und nach dem, was ich in den Bugreports lesen kann, wird das auch für 38 nicht für ein Fix reichen, eher dann für Fedora 39.
    „During Fedora 38 Final Go/No-Go meeting, this blocker bug has been waived under the „difficult to fix“ exception, and has become a Fedora 39 Beta blocker. Please, let’s do our best to fix it by then, thank you.“
    Der letzte Eintrag dazu.
    Oder weißt Du, wenn man Silverblue 36 installiert und dann per Rebase das auf 37 anhebt, ob das funktionieren könnte? Beim „normalen“ Fedora ist das wohl eine Option.

Kommentieren Sie den Artikel

Ergänzungen dienen der Diskussion über die Inhalte des Artikels. Nachfragen, Anmerkungen und Ergänzungen sind dezidiert erwünscht. Ergänzungen werden vor der Veröffentlichung moderiert. Wir behalten uns vor Kommentare ohne inhaltlichen Bezug oder abseitige Diskussionen nicht zu veröffentlichen.

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Weitere Artikel