Immutable Linux-Distributionen wie Fedora Silverblue oder die Variante Kinoite mit dem KDE Plasma Desktop zeichnen sich durch eine besonders einfache Aktualisierung auf einen neuen Release aus.
Dabei wird lediglich ein sogenannter Rebase ausgeführt und ein Wechsel zurück auf die Vorgängerversion ist ebenfalls möglich.
Unter Silberblue wird eine neue Hauptversion wie ein reguläres Update in GNOME Software dargestellt und lässt sich darüber installieren.
Kinoite hingegen verwendet als grafischen Paketmanager die Anwendung Plasma Discover, welche diese Funktionalität aktuell noch nicht bietet.
Eine Aktualisierung kann dennoch in wenigen Schritten über die Kommandozeile erfolgen. Diese Variante bietet darüber hinaus eine erweiterte Kontrolle über den gesamten Vorgang.
Zunächst lassen sich mit folgendem Befehl alle verfügbaren Versionsstände anzeigen:
ostree remote refs fedora
Für Fedora 37 auf der x86_64 Architektur wären dies:
Silverblue: fedora:fedora/37/x86_64/silverblue
Kinoite: fedora:fedora/37/x86_64/kinoite
Bei einer Systemaktualisierung wird standardmässig die aktuell installierte Version beibehalten, auf welche bei Bedarf mithilfe des rpm-ostree rollback Kommandos oder durch die Auswahl des entsprechenden Eintrages im Bootmenü zurückgegriffen werden kann.
Bei einer nachfolgenden Aktualisierung, bei der es sich auch um ein reguläres Update handeln kann, wird diese überschrieben. Um die Vorgängerversion länger beibehalten zu können, kann diese gepinned werden. Dieser Schritt ist optional und muss im Gegensatz zu regulären rpm-ostree oder ostree Befehlen, welche dem Standardbenutzer ohne zusätzliche Authentifizierung via PolicyKit ermöglicht werden, mit Root-Rechten ausgeführt werden:
sudo ostree admin pin 0
Die eigentliche Aktualisierung kann daraufhin mittels rebase durchgeführt werden:
Silverblue: rpm-ostree rebase fedora:fedora/37/x86_64/silverblue
Kinoite: rpm-ostree rebase fedora:fedora/37/x86_64/kinoite
Sofern man RPM Fusion auf seinem System aktiviert hat, lässt sich die Aktualisierung mit folgendem Befehl durchführen:
rpm-ostree rebase fedora:fedora/37/x86_64/silverblue \
--uninstall rpmfusion-free-release-36-1.noarch \
--install https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-branched.noarch.rpm \
--uninstall rpmfusion-nonfree-release-36-1.noarch \
--install https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-branched.noarch.rpm
Um einen zuvor gesetztes Pinning zu entfernen, können zunächst alle verfügbaren Stände ausgegeben werden:
rpm-ostree status
Das Entfernen des Pinnings erfolgt mithilfe der Angabe des Indexes. Dabei wird der erste Eintrag mit 0 geführt und aller weiteren mit der entsprechenden Folgezahl.
sudo ostree admin pin --unpin 0
Danke Lioh. Finde den Ansatz und den von SUSE ALPS bzw. micro OS sehr vielversprechend und könnte die Linux Verbreitung deutlich steigern.