Die Entwickler des openSUSE-Projekts haben einen Plan zur Weiterentwicklung des neuen Installationsprogramms Agama (ehemals D-Installer) veröffentlicht. Dieses wird entwickelt, um die klassische InstallationsoberflĂ€che von SUSE und openSUSE zu ersetzen, und zeichnet sich durch die Trennung der BenutzeroberflĂ€che von den internen Komponenten von YaST aus. Agama ermöglicht die Verwendung verschiedener Frontends, wie zum Beispiel ein Frontend zur Verwaltung der Installation ĂŒber eine Webschnittstelle. Zur Testung des neuen Installationsprogramms werden Live-Bilder fĂŒr die Architekturen x86_64 und ARM64 erstellt, die die Installation der kontinuierlich aktualisierten Version openSUSE Tumbleweed sowie der Editionen SUSE ALP, openSUSE MicroOS und openSUSE MicroOS Desktop unterstĂŒtzen, die auf isolierten Containern basieren.
FĂŒr dieses Jahr sind zwei bedeutende Updates fĂŒr Agama geplant. Das erste wird fĂŒr Mitte April erwartet und das zweite fĂŒr Mitte Juli. Das Juli-Update wird darauf abzielen, die FlexibilitĂ€t und FunktionalitĂ€t in Bezug auf die automatisierte Installation zu erhöhen, die ohne menschliches Zutun durchgefĂŒhrt wird. Ziel der Entwicklung ist es, Agama als Alternative zu den Werkzeugen von AutoYaST einzufĂŒhren.
Das April-Update ist bemerkenswert durch den Verzicht auf fertige Module, die im Cockpit-Projekt entwickelt wurden, zugunsten eines unabhĂ€ngigeren Frameworks und eines modernisierten Benutzerinterfaces. Der Abschied von Cockpit wird weitere externe AbhĂ€ngigkeiten ausschlieĂen und die EinschrĂ€nkungen beseitigen, die der Umsetzung bestimmter Ideen im Wege standen. Zum Beispiel enthĂ€lt Cockpit AbhĂ€ngigkeiten von Komponenten in den Programmiersprachen Python und C, wĂ€hrend in Agama die Sprachen Ruby und Rust verwendet werden. Der Verzicht auf Cockpit befreit die Entwickler zudem von den EinschrĂ€nkungen, auf die sie bei ihren Versuchen gestoĂen sind, den automatischen Installationsmodus zu implementieren und die Schnittstelle zur Speicherung so zu ĂŒberarbeiten, dass ein optimales Gleichgewicht zwischen Benutzerfreundlichkeit fĂŒr AnfĂ€nger und FunktionalitĂ€t fĂŒr erfahrene Benutzer erreicht wird.
In der aktuellen Entwicklungsphase bietet der neue Installer bereits Funktionen an, die notwendig sind, um Aufgaben wie die Auswahl eines anfĂ€nglichen Anwendungssatzes, die Konfiguration der Netzwerkverbindung, der Sprache, der Tastatur, der Zeitzone und der Lokalisierungsparameter, die Vorbereitung des Speichermediums und die Partitionierung sowie die HinzufĂŒgung von Benutzern zum System zu lösen. Zu den Hauptzielen der Entwicklung von Agama gehört die Beseitigung bestehender EinschrĂ€nkungen der grafischen BenutzeroberflĂ€che, die Erweiterung der Möglichkeiten zur Nutzung der FunktionalitĂ€t von YaST in anderen Anwendungen, das Absehen von einer Bindung an eine Programmiersprache (D-Bus API wird die Erstellung von Erweiterungen in verschiedenen Sprachen ermöglichen) und die Förderung der Schaffung alternativer Einstellungen durch Mitglieder der Community.

FĂŒr die Installation von Paketen, die ĂberprĂŒfung der Hardware, die Partitionierung von Festplatten und andere notwendige Funktionen wĂ€hrend der Installation in Agama werden weiterhin die YaST-Bibliotheken verwendet. DarĂŒber hinaus bieten Layer-Services eine Abstraktion fĂŒr den Zugriff auf die Bibliotheken ĂŒber die einheitliche D-Bus-Schnittstelle. Der Installer nutzt eine Multithread-Architektur, die es ermöglicht, dass die BenutzeroberflĂ€che nicht blockiert wird, wĂ€hrend andere Aufgaben ausgefĂŒhrt werden.
Die grundlegende BenutzeroberflĂ€che zur Verwaltung der Installation basiert auf Webtechnologien und umfasst einen Handler, der den Zugriff auf D-Bus-Aufrufe ĂŒber HTTP ermöglicht, sowie eine direkte WeboberflĂ€che. Die WeboberflĂ€che ist in JavaScript unter Verwendung des Frameworks React und von PatternFly-Komponenten geschrieben. Der Service zur Anbindung der BenutzeroberflĂ€che an D-Bus sowie der integrierte HTTP-Server sind in Ruby geschrieben.
Quelle: opennet.ru
