Die Entwickler des openSUSE-Projekts haben die Version 8 des Installationsprogramms Agama (ehemals D-Installer) veröffentlicht, das zur Ablösung der klassischen InstallationsoberflĂ€che von SUSE und openSUSE entwickelt wurde und sich durch die Trennung der BenutzeroberflĂ€che von den internen Komponenten von YaST auszeichnet. Agama ermöglicht die Nutzung verschiedener Frontends, zum Beispiel ein Frontend zur Verwaltung der Installation ĂŒber eine WeboberflĂ€che. FĂŒr die Testung des neuen Installers wurden Live-Images fĂŒr die Architekturen x86_64, ppc64le, s390x und ARM64 erstellt, die die Installation von openSUSE Leap, der kontinuierlich aktualisierten Version openSUSE Tumbleweed sowie mehrere Editionen von SUSE ALP auf Basis isolierter Container unterstĂŒtzen.
Der neue Installer bietet die notwendigen Funktionen zur Lösung solcher Aufgaben wie die Auswahl eines anfĂ€nglichen Anwendungssets, die Konfiguration der Netzwerkverbindung, der Sprache, der Tastatur, der Zeitzone und der Lokalisierungsoptionen, die Vorbereitung des Speichermediums und die Partitionierung sowie das HinzufĂŒgen von Benutzern zum System. Zu den Hauptzielen der Entwicklung von Agama zĂ€hlt die Behebung der bestehenden EinschrĂ€nkungen der grafischen OberflĂ€che, die Erweiterung der Möglichkeiten zur Nutzung der Funktionen von YaST in anderen Anwendungen, der Abbau der Bindung an eine einzige Programmiersprache und die Förderung der Erstellung alternativer Konfigurationen durch Mitglieder der Community.
Zum Installieren von Paketen, ĂberprĂŒfen von Hardware, Partitionieren von Festplatten und fĂŒr andere bei der Installation erforderliche Funktionen werden in Agama weiterhin die YaST-Bibliotheken verwendet, ĂŒber denen Serviceschichten implementiert sind, die den Zugang zu den Bibliotheken ĂŒber ein einheitliches Kommunikationsprotokoll auf Basis von HTTP abstrahieren. Im Installationsprogramm wird eine Multi-Processing-Architektur verwendet, dank derer die BenutzeroberflĂ€che wĂ€hrend der AusfĂŒhrung anderer Aufgaben nicht blockiert wird. Die grundlegende Schnittstelle zur Verwaltung der Installation wurde mit Web-Technologien erstellt. Die Web-OberflĂ€che ist in JavaScript unter Verwendung des React-Frameworks und der PatternFly-Komponenten geschrieben. Der Messaging-Service sowie der integrierte HTTP-Server sind in Ruby geschrieben.
In der neuen Version wurde eine neue Architektur eingefĂŒhrt, die den Ăbergang von der Verwendung vorgefertigter Module, die vom Cockpit-Projekt entwickelt werden, hin zu einem unabhĂ€ngigen Framework und einer modernisierten BenutzeroberflĂ€che markiert. Anstelle von D-Bus wird HTTP als primĂ€res Kommunikationsprotokoll fĂŒr die Interaktion zwischen den Komponenten von Agama verwendet. Der Ersatz von D-Bus durch HTTP hat die Integrationsmöglichkeiten des Projekts mit gröĂeren Systemen erweitert und die Organisation der Installation im automatisierten Modus vereinfacht.
Die Abkehr von der Bindung an Cockpit hat es ermöglicht, zusĂ€tzliche externe AbhĂ€ngigkeiten auszuschlieĂen. So enthĂ€lt Cockpit AbhĂ€ngigkeiten von Komponenten in den Sprachen Python und C, wĂ€hrend in Agama die Sprachen Ruby und Rust verwendet werden. Das Verlassen von Cockpit hat die Entwickler auch von den EinschrĂ€nkungen befreit, mit denen sie konfrontiert waren, als sie versuchten, einen automatischen Installationsmodus zu implementieren und die BenutzeroberflĂ€che zur Konfiguration der Speicher zu ĂŒberarbeiten, um ein optimales Gleichgewicht zwischen Einfachheit fĂŒr AnfĂ€nger und FunktionalitĂ€t fĂŒr erfahrene Benutzer zu erreichen.
DarĂŒber hinaus hat die EinfĂŒhrung einer neuen Architektur die Startzeit des Installers erheblich verkĂŒrzt und dessen Leistung verbessert, wĂ€hrend die Nutzung bereits bewĂ€hrter Low-Level-Komponenten beibehalten wurde. Zu den Funktionen, die bisher nicht in die neue Implementierung ĂŒbertragen wurden, zĂ€hlen der integrierte Terminalemulator sowie Werkzeuge zur Verwaltung von DASD- (Direct Access Storage Device) und zFCP- (SCSI-over-Fibre Channel) GerĂ€ten.
Neben der neuen Architektur bietet Agama 8 eine vollstĂ€ndig ĂŒberarbeitete und funktionalere BenutzeroberflĂ€che zur Konfiguration von Speichern und zur Partitionierung von Festplatten. Dabei wurden alle grundlegenden Funktionen des klassischen Verwaltungssystems YaST beibehalten, wĂ€hrend gleichzeitig Mittel zur erweiterten Anpassung vorhanden sind. Zudem wurde eine Anpassung vorgenommen, um die Benutzerfreundlichkeit fĂŒr Neueinsteiger zu verbessern. Beispielsweise ermöglicht die neue BenutzeroberflĂ€che die Auswahl des Speicherorts fĂŒr jede Partition oder logische LVM-Volume, das EinhĂ€ngen oder Neuformatieren vorher verfĂŒgbarer Dateisysteme, die Konfiguration von VerschlĂŒsselung und Boot-Parametern sowie die GröĂenĂ€nderung von Partitionen.

Unter den Ănderungen ist auch eine neue BenutzeroberflĂ€che zur Auswahl von Anwendungssets zu vermerken, die Verbesserung der Konfiguration von vollstĂ€ndiger FestplattenschlĂŒsselung auf Basis von TPM, ein vollstĂ€ndig neu geschriebener Netzwerkstack, die Modernisierung einiger Widgets, die Verbesserung der BenutzeroberflĂ€chen zur Bearbeitung von FS-Parametern und zur Erstellung von Benutzern sowie eine anschaulichere Visualisierung der bei der Installation auftretenden Probleme. Die Ăbersetzung in 10 Sprachen.
In einem Monat wird Agama 9 veröffentlicht, das eine erhebliche Ăberarbeitung der WeboberflĂ€che vorsieht, die zuvor bei der Umstellung auf die neue Architektur fehlenden Funktionen implementiert und die Möglichkeiten zur automatischen Installation ohne menschliches Eingreifen erweitern wird. Ziel der Entwicklung ist es, die KompatibilitĂ€t mit AutoYaST zu gewĂ€hrleisten und die Nutzung von Agama als Alternative zu AutoYaST zu ermöglichen.
Quelle: opennet.ru
