Flatpak, rpm-ostree und Container-basiertes DNF Paketverwaltung in Fedora Silverblue Toolbox
Zeitgleich zu Fedora 30 hat das Team Silverblue eine finale Variante der Workstation vorgestellt. Der DNF-Paketmanager weicht rpm-ostree und Flatpak, dank Toolbox-Container lässt er sich aber weiter nutzen. Wir zeigen Schritt für Schritt die Nutzung der Toolbox und die beiden anderen Wege.
Anbieter zum Thema

Fedora Silverblue ist eine weiterentwickelte Variante der Atomic Workstation, die sich insbesondere an Software-Entwickler richtet. Der Fokus lag dabei auf einem unveränderlichen Betriebssystemkern, um die Linux-Distribution stabiler und weniger fehleranfällig zu machen. Dabei wurden mit Blick auf Paketverwaltung und Container-Support aus Stabilitätsgründen einige Änderungen vorgenommen.
Das unveränderliche Design macht Silverblue zu einer besonders gut geeigneten Plattform für containerisierte Anwendungen sowie Container-basierte Softwareentwicklung. Im Gegensatz zur Fedora 30 Workstation vertraut Silverblue beim Versionsupgrade deshalb auf den aus „Project Atomic“ bekannten hybriden Paket- und Image-Manager rpm-ostree, Manch ein Techie wird diesen vorzugsweise über die Shell ansprechen, für eine Integration mit dem Gnome-GUI-Installer wurde aber gesorgt.
Als primären Kanal für die App-Nutzung empfiehlt Team Silverblue allerdings Flatpak, auch wenn rpm-ostree das Installieren von Software-Paketen erlaubt. Flatpak vereint Paketmanagement und Virtualisierung von Desktop-Applikationen. Besonders erwähnenswert ist, dass Flatpak unter 21 verschiedenen Linux-Distributionen funktioniert und heruntergeladene sowie eigens entwickelte Applikationen in einer Sandbox-Umgebung isoliert vom Rest des Systems laufen lässt.
Flatpak und rpm-ostree werden Out-of-the-Box vom Gnome-basierten GUI-Installationstool von Fedora unterstützt. Allerdings ist es für Flatpak notwendig, Flathub als Repository zu hinterlegen. Dies gelingt einfach über die Distributions-abhängige Setup-Flatpak-Webseite, die Links zu allen Flatpak-Apps finden sich auf dem App-Marktplatz Flathub.org.
Der aus Fedora bekannte DNF-Paketmanager mit all seinen Vorzügen wie der History-Funktion wird von Silverblue nicht direkt unterstützt. Die sogenannte Toolbox startet aber ein Fedora-30-Image als Container, der den DNF-Aufruf in der Shell ermöglicht. Toolbox ist auf eine möglichst einfache Erstellung von Container-Umgebungen für Development- und Debugging-Zwecke ausgerichtet. Im Folgenden ein Step-by-Step-Guide zur Nutzung der Toolbox sowie eine genauere Erläuterung samt aktueller Probleme im Fließtext.
Als grundlegende Techniken zur Image-Erstellung und -Bereitstellung kommen Podman und Buildah zum Einsatz. Genau hier liegt aktuell ein Problem, denn Podman hat in der Version 1.3.1 ein Problem, Benutzerinformationen an den Container zu übergeben. Die Fehlermeldung hierzu lautet: „toolbox: unable to copy /etc/profile.d/toolbox.sh to container fedora-toolbox-30“.
Mit podman-1.4.0 soll dieses Problem der Vergangenheit angehören, als Workaround ist es möglich, die vorherige Version von podman zu installieren. Dieses gelang dem Autor mit dem Shell-Kommando:
$ rpm-ostree override replace https://kojipkgs.fedoraproject.org//packages/podman/1.2.0/2.git3bd528e.fc30/x86_64/podman-1.2.0-2.git3bd528e.fc30.x86_64.rpm
Anschließend verlangt Fedora Silverblue nach einem Neustart, das Kommando hierfür lautet:
$ systemctl reboot
Nach dem Neustart gilt es noch, den existierenden Container zu stoppen und zu entfernen, wobei wir hier den Container analog zum vorangegangenen Bild direkt über seine ID ansprechen, die wir mit „toolbox list“ herausgefunden haben:
$ podman stop --all
$ toolbox rm --force 504a6218fbc0
$ toolbox create
$ toolbox enter
Manchmal kann es auch nötig sein, alle Container zu entfernen, das allgemeine Kommando hierfür lautet der Vollständigkeit halber:
$ toolbox rm --all
Dieses Problem zeigt, dass Fedora Silverblue zwar als Entwicklungsumgebung interessant, aber auch äußerst abhängig von den integrierten Komponenten ist. Denn ein Fix für podman ließ lange auf sich warten, was bei Produktivsystemen ärgerlich ist. Nichtsdestotrotz ist die Toolbox eine interessante Errungenschaft, die sich zu testen lohnt.
(ID:45969452)