Lange hat es gedauert, nach über einem Jahr intensiver Entwicklung ist sie nun da, die stabile Version 2.0 von Vanilla OS, einer unveränderlichen Distribution mit atomaren Updates und Rollback. Die Entwickler haben kaum einen Stein auf dem anderen gelassen seit der ersten Ausgabe von Vanilla OS.
Die wohl wichtigste Änderung war die bereits früh getroffene Entscheidung, das für die Zwecke von Vanilla OS zu unflexible Ubuntu gegen das Rolling-Release-Prinzip von Debian Unstable einzutauschen.
OCI-Container und LVM
Vanilla OS 2 basiert auf Linux 6.9 und GNOME 46. Die meisten vorinstallierten Pakete kommen als Flatpak ins System. Neu ist weiterhin die Verwendung von OCI (Open Container Initiative) als Basis der Container-Formate und von LVM (Logical Volume Manager) zur effizienten Nutzung des Speicherplatzes. Der Paketmanager Vanilla System Operator (VSO) wurde in Version 2 völlig überarbeitet. Eine der neuen Funktionen von VSO v2 ist die Integration von Android-Anwendungen über Waydroid, mit nativer Unterstützung für den F-Droid Store. Diese noch experimentelle Funktion wird in zukünftigen Updates weiter ausgebaut. Die installierten Android-Apps integrieren sich nahtlos in das GNOME Anwendungs-Raster.
ABRoot: Von Android inspiriert
Gleichgeblieben ist jedoch das grundlegende Prinzip, wie Unveränderlichkeit und Rollback umgesetzt werden. Dafür hat man sich von Anfang an bei Android bedient und das bewährte A-B-Prinzip umgesetzt. Bei ABRoot, wie es bei Vanilla OS heißt, wird das Basissystem zweimal auf die Partitionen A und B installiert. Wenn die unveränderliche Partition A gebooted ist, werden Upgrades auf Partition B installiert. Beim nächsten Systemstart wird automatisch Partition B als unveränderlich gebooted. Ist dies erfolgreich, werden Änderungen bis zum nächsten Neustart auf Partition A geschrieben. Stimmt etwas nicht, rollt man das ganze Image zurück. Somit hat man immer ein bootbares System. Die beiden Gründer Mirko Brombin und Luca Di Maio erläutern das Konzept ausführlich in einem Interview im Vanilla-Blog.
Updates im Hintergrund
Updates der installierten Anwendungen und des Systems führt VSO je nach Einstellung nie, täglich, wöchentlich oder monatlich im Hintergrund aus, wenn der Rechner nichts zu tun hat. Zudem agiert VSO als die Standard-Shell von Vanilla OS. Beim Öffnen eines Terminals landet man nicht mehr in der System-Shell, sondern in einem Container, der auf APX erstellt und kontrolliert wird. Im VSO-Subsystem des APX können CLI- und grafische Anwendungen installiert und verwendet werden, die dann sofort im Anwendungsmenü verfügbar sind und den unveränderlichen Status des Systems aber nicht berühren.
Sicher für Anwender – offen für Entwickler
Mit APX besteht bei Bedarf auch weiterhin Zugriff auf die unveränderlichen Anteile des Systems, um etwa Änderungen der Konfiguration in /etc
oder bei systemd vorzunehmen. Zudem lassen sich Subsysteme mit verschiedenen Linux-Paketmanagern und erstellen und somit Pakete aus anderen Distributionen nutzen. Somit können Entwickler ihre benötigte Umgebung direkt in Vanilla OS realisieren. Vanilla OS verbindet damit eine sichere Umgebung für Nutzer, die nur mit dem System arbeiten und die Freiheit für Entwickler und Enthusiasten, die die Kontrolle über ihr Betriebssystem behalten möchten.
Im LinuxUser habe ich im Frühjahr einen ausführlichen Artikel über die Beta zu Vanilla OS »Orchid« veröffentlicht, der derzeit noch hinter einer Paywall liegt. Ich werde hier in einigen Wochen über meine Erfahrungen mit der stabilen Version berichten.