Udviklerne af openSUSE-projektet har offentliggjort en plan for udviklingen af den nye installer Agama (tidligere D-Installer), der udvikles til at erstatte den klassiske installationsgrænseflade for SUSE og openSUSE, og bemærkelsesværdigt adskillelsen af brugergrænsefladen fra de interne komponenter i YaST. Agama giver mulighed for brug af forskellige frontends, for eksempel en frontend til styring af installationen via en webgrænseflade. For at teste den nye installer dannes live-builds til x86_64 og ARM64-arkitektur, som understøtter installationen af den kontinuerligt opdaterede openSUSE Tumbleweed-build samt versioner af SUSE ALP, openSUSE MicroOS og openSUSE MicroOS Desktop, bygget på isolerede containere.
I år er der planlagt to betydelige opdateringer til Agama. Den første forventes at blive præsenteret i midten af april, og den anden i midten af juli. Juliopdateringen vil fokusere på at øge fleksibiliteten og funktionaliteten relateret til installation i automatisk tilstand, der udføres uden menneskelig indgriben. Målet med udviklingen er at gøre Agama i stand til at fungere som et alternativ til værktøjet AutoYaST.
Aprilopdateringen er bemærkelsesværdig ved at ophøre med brugen af de færdige moduler, der udvikles af Cockpit-projektet, til fordel for brugen af et mere uafhængigt rammeværk og et opdateret brugergrænseflade. Fraværet af afhængighed til Cockpit vil eliminere ekstra eksterne afhængigheder og fjerne begrænsninger, der hindrer implementeringen af visse idéer. For eksempel indeholder Cockpit afhængigheder af komponenter skrevet i Python og C, mens der i Agama anvendes Ruby og Rust. Ophævelsen af brugen af Cockpit vil også frigøre udviklerne fra de begrænsninger, de har mødt, når de har forsøgt at implementere den automatiske installationsmodus og revidere grænsefladen til lageropsætning for at opnå en optimal balance mellem enkelhed for begyndere og funktionalitet for erfarne brugere.
På nuværende tidspunkt i udviklingen giver den nye installationsprogram allerede de nødvendige funktioner til at løse opgaver som valg af et initialt sæt applikationer, opsætning af netværksforbindelse, sprog, tastatur, tidszone og lokaliseringsindstillinger, forberedelse af lagerenhed og partitionering, samt tilføjelse af brugere til systemet. Blandt de primære mål for udviklingen af Agama nævnes afskaffelse af eksisterende begrænsninger i den grafiske grænseflade, udvidelse af funktionaliteten af YaST til brug i andre applikationer, afkobling fra et enkelt programmeringssprog (D-Bus API'en vil tillade oprettelse af udvidelser på forskellige sprog) og fremme af oprettelse af alternative indstillinger af samfundets repræsentanter.

Til installation af pakker, kontrol af hardware, partitionering af diske og andre nødvendige funktioner under installationen anvendes YaST-bibliotekerne stadig i Agama, som realiserer lagerservices der abstraherer adgangen til bibliotekerne gennem et ensartet D-Bus interface. Installationsprogrammet anvender en multiprosessarkitektur, hvilket gør, at brugergrænsefladen ikke blokeres under udførelsen af andre opgaver.
Den grundlæggende grænseflade til installationsstyring er bygget ved hjælp af webteknologier og inkluderer en handler, der sikrer adgang til D-Bus-anrop via HTTP, samt selve webgrænsefladen. Webgrænsefladen er skrevet i JavaScript med brug af React-rammen og PatternFly-komponenter. Tjenesten der binder grænsefladen til D-Bus samt den indbyggede http-server er skrevet i Ruby.
Kilde: opennet.ru
