Auf der GNOME-Entwicklerkonferenz GUADEC 2023, die gerade in Riga, der Hauptstadt Lettlands abgehalten wird, hielt Pietro di Caprio, einer der Hauptentwickler von Vanilla OS, einen Vortrag über die noch in der Entwicklung befindliche zweite Ausgabe der unveränderlichen Distribution, Vanilla OS 2 »Orchid«.
In weiten Teilen neu geschrieben
Das Ziel von Vanilla OS ist, den Anwender abends ins Bett zu schicken, mit der Gewissheit, dass sein System, am Morgen wieder hochfährt. Auf der Basis der Erfahrungen mit der ersten Ausgabe, die im Oktober 2022 erschien, wird derzeit Vanilla OS 2 entwickelt, wobei es sich um einen weitgehenden Rewrite der ersten Ausgabe handelt. Zudem wechselt der Unterbau von Ubuntu zu Debian Sid. Neu geschrieben und erweitert wurden vor allem die Tools, die Vanilla OS ausmachen und für Immutability und Atomic Updates inklusive Rollback sorgen.
ABRoot als Basis
Da wäre zunächst ABRoot, das zwei identische Partitionen bereitstellt, um System-Updates oder Paketinstallationen zunächst auf die gerade nicht eingehängte Partition zu schreiben. In Version 1 sah die Systemstruktur so aus:
Current Root ist schreibgeschützt eingehängt, Änderungen werden auf Future Root geschrieben und der GRUB-Eintrag angepasst, sodass beim nächsten Neustart, sofern alles gut geht, Future Root zu Current Root wird. Gibt es während des Updates Probleme, findet automatisch ein Rollback auf das alte Current Root statt. Wenn später etwas nicht zur Zufriedenheit des Anwenders läuft, kann er manuell einen Rollback auf die vorige Version einleiten.
Da GRUB aber ein sensibles Wesen ist, wurde für Vanilla OS 2 die Struktur erweitert:
Der neu eingeführte Master Boot wird nach der Installation nicht mehr verändert. Er bootet ABRoot, das dann seinerseits die Current Root bootet. Bei anstehenden Änderungen, die sich auf Future Root befinden, wird dessen GRUB-Eintrag modifiziert, nicht der des Master Boot. Das resultiert in folgendem Atomic Upgrade-Prozess:
Zwischen Anwender und System
VSO war bereits in der ersten Ausgabe die Schnittstelle zwischen Anwender und System. VSO v2 wurde an die in Vanilla OS 2 verwendeten OCI-Container der Open Container Initiative angepasst. Der Anwender soll sich damit wie auf einer herkömmlichen Distribution fühlen und keinen Gedanken an Container verschwenden müssen oder überhaupt etwas darüber wissen. Standardmäßig installiert VSO Pakete aus den Vanilla-Repositories , kann aber auch mit DEBs umgehen und mittels Waydroid auch APKs installieren.
Paketmanager im Paketmanager
APX v2 basiert auf Distrobox, das von Vanilla-Mitbegründer Luca di Maio entwickelt wurde. Es unterstützt verschiedene Subsysteme innerhalb von Vanilla OS und steuert deren Paketmanager, wodurch Pakete von Fedora, Alpine, openSUSE, Void Linux, dem AUR von Arch Linux und seit Kurzem auch aus den Repositories von Nix installiert werden können. Anwender können eigene Subsystem-Stacks für bestimmte Aufgabenbereiche definieren. APX lässt sich über die Kommandozeile mit an APT angelehnten Befehlen und über eine GUI bedienen.
Recovery als Rettungsanker
Einige Module wurden für Vanilla OS 2 neu geschrieben, teils durch den Umstieg von Ubuntu zu Debian Sid bedingt. Eines davon ist Ikarus, dessen Aufgabe es ist, die Hardware auf eventuell fehlende Treiber abzuklopfen und diese bei Bedarf zu installieren.
Auch wenn es schwer ist, Vanilla OS zu beschädigen, ist das nicht zu 100 % auszuschließen. Für solche Fälle ist das neue Recovery mit mehreren Werkzeugen gedacht. Die dafür notwendige Partition mit 300 MB kann entweder im Master Boot oder auf einem USB-Stick untergebracht werden.
Images selbst erstellen
Ebenfalls neu ist Vib, der Vanilla Image Builder. Damit lassen sich angepasste Images von Vanilla OS oder anderen Distributionen nach YAML-Rezepten ähnlich der Flatpak-Syntax erstellen. Und da wir schon dabei sind, Flatpak ist natürlich ein Bürger erster Klasse in Vanilla OS. Abschließend stellt di Caprio in seinem Vortrag noch heraus, dass alle entwickelten Werkzeuge distro-agnostisch sind und infolgedessen in anderen Distributionen einsetzbar sind.
Eine Alpha-Version von Vanilla OS 2 »Orchid« soll nicht mehr weit sein, auf weitere Termine ließ sich di Caprio nicht festlegen. Wunschtermin für eine stabile Version ist der Spätsommer. Nicht unerwähnt bleiben soll die neu gestaltetete Webseite, die ich für sehr gelungen halte. Ich verfolge Vanilla OS von Anfang an und bin immer noch schwer begeistert. Da ist ein sehr fähiges Team von Entwicklern versammelt und ich erwarte noch einiges aus dieser Richtung. Hat denn sonst noch jemand hier Erfahrungen mit Vanilla OS?