De ontwikkelaars van het openSUSE-project hebben een plan gepresenteerd voor de ontwikkeling van de nieuwe installer Agama (voorheen D-Installer), die is ontworpen ter vervanging van de klassieke installatie-interface van SUSE en openSUSE. Opmerkelijk is de scheiding van de gebruikersinterface van de interne componenten van YaST. Agama biedt de mogelijkheid om verschillende front-ends te gebruiken, zoals een front-end voor installatiebeheer via een webinterface. Voor het testen van de nieuwe installer worden live-builds gemaakt voor de architecturen x86_64 en ARM64, die de installatie van de continu bijgewerkte build van openSUSE Tumbleweed ondersteunen, evenals de edities SUSE ALP, openSUSE MicroOS en openSUSE MicroOS Desktop, gebouwd op geĆÆsoleerde containers.
Voor dit jaar zijn er twee belangrijke updates voor Agama gepland. De eerste is gepland voor medio april en de tweede voor medio juli. De juli-update zal gericht zijn op het verhogen van de flexibiliteit en functionaliteit met betrekking tot automatische installatie zonder menselijke tussenkomst. Het doel van de ontwikkeling is om Agama geschikt te maken als alternatief voor de AutoYaST-tool.
De april-update is opmerkelijk omdat er een einde komt aan het gebruik van kant-en-klare modules die door het Cockpit-project zijn ontwikkeld, ten gunste van een meer onafhankelijke framework en een gemoderniseerde gebruikersinterface. Het afscheid van Cockpit zal extra externe afhankelijkheden uitsluiten en beperkingen wegnemen die de implementatie van bepaalde ideeƫn in de weg stonden. Bijvoorbeeld, Cockpit bevat afhankelijkheden van componenten in Python en C, terwijl Agama gebruikmaakt van de talen Ruby en Rust. Het stoppen met Cockpit zal de ontwikkelaars ook bevrijden van beperkingen waarmee ze werden geconfronteerd bij pogingen om de automatische installatiemodus te implementeren en de interface voor opslaginrichting opnieuw te ontwerpen, om een optimale balans te bereiken tussen eenvoud voor beginners en functionaliteit voor ervaren gebruikers.
In de huidige fase van de ontwikkeling biedt de nieuwe installer al de mogelijkheden die nodig zijn om taken uit te voeren zoals het selecteren van een initiƫle set applicaties, het instellen van netwerkverbindingen, taal, toetsenbord, tijdzone en lokalisatie-instellingen, het voorbereiden van opslagapparaten en het partitioneren, en het toevoegen van gebruikers aan het systeem. Onder de belangrijkste doelen van de ontwikkeling van Agama wordt het verwijderen van bestaande beperkingen van de grafische interface genoemd, de uitbreiding van de mogelijkheden om YaST-functionaliteit in andere applicaties te gebruiken, afstand nemen van afhankelijkheid van ƩƩn programmeertaal (de D-Bus API zal het mogelijk maken om uitbreidingen in verschillende talen te creƫren) en het stimuleren van de creatie van alternatieve instellingen door leden van de gemeenschap.

Voor het installeren van pakketten, het controleren van hardware, het partitioneren van schijven en andere noodzakelijke functies tijdens de installatie, blijven de YaST-bibliotheken worden gebruikt, waarop diensten laag-over worden geïmplementeerd die toegang tot de bibliotheken abstraheren via een geünificeerd D-Bus-interface. De installer maakt gebruik van een multiprocessarchitectuur, waardoor de interactie met de gebruiker niet wordt geblokkeerd tijdens het uitvoeren van andere taken.
De basisinterface voor installatiebeheer is opgebouwd met webtechnologieƫn en bevat een handler die toegang tot D-Bus-aanroepen via HTTP mogelijk maakt, evenals een directe webinterface. De webinterface is geschreven in JavaScript met behulp van het React-framework en PatternFly-componenten. De service voor het koppelen van de interface aan D-Bus, evenals de ingebouwde http-server, zijn geschreven in Ruby.
Bron: opennet.ru
