Vývojáři projektu openSUSE zveřejnili novou verzi instalátoru Agama (dříve D-Installer), který je vyvíjen jako náhrada za klasické rozhraní instalace SUSE a openSUSE. Tento instalátor se vyznačuje oddělením uživatelského rozhraní od vnitřních komponent YaST. Agama umožňuje použití různých frontendů, například frontendu pro správu instalace přes webové rozhraní. Pro instalaci balíčků, kontrolu hardwaru, rozdělení disků a další nezbytné funkce při instalaci se i nadále používají knihovny YaST, nad nimiž jsou realizovány proxy služby, které abstrahují přístup k knihovnám pomocí unified D-Bus rozhraní.
Pro testování byly vytvořeny live verze s novým instalátorem (x86_64, ARM64), které podporují instalaci nepřetržitě aktualizované verze openSUSE Tumbleweed, stejně jako varianty openSUSE Leap Micro, SUSE ALP a openSUSE Leap 16, které jsou postaveny na základě izolovaných kontejnerů.


Základní rozhraní pro správu instalace bylo postaveno pomocí webových technologií a zahrnuje zpracovatele, který zajišťuje přístup k D-Bus voláním přes HTTP a přímo webové rozhraní. Webové rozhraní je napsáno v JavaScriptu s použitím frameworku React a komponent PatternFly. Služba pro propojení rozhraní s D-Bus, stejně jako vestavěný http server, jsou napsány v Ruby a postaveny s použitím hotových modulů vyvíjených projektem Cockpit, které se také používají ve webových konfigurátorech Red Hat. Instalátor využívá vícestupňovou architekturu, která zajišťuje, že uživatelské rozhraní není zablokováno při provádění dalších úkonů.

V aktuální fázi vývoje jsou v instalátoru k dispozici služby, které se zabývají správou procesu instalace, nastavením obsahu produktu a seznamu instalovaných programů, nastavením jazyka, klávesnice a lokalizačních parametrů, přípravou úložného zařízení a rozdělením oddílů, zobrazením nápovědy a podpůrných informací, přidáním uživatelů do systému a nastavením připojení k síti.
Mezi cíli vývoje Agama je zmíněno odstranění stávajících omezení grafického rozhraní, rozšíření možností využití funkcí YaST v jiných aplikacích, odklon od vazby na jeden programovací jazyk (D-Bus API umožní vytváření rozšíření v různých jazycích) a podpora vytváření alternativních konfigurací ze strany komunity.
Rozhraní Agama bylo rozhodnuto udělat co nejjednodušší pro uživatele, mimo jiné byla odstraněna možnost selektivní instalace balíčků. V současnosti vývojáři diskutují o možných variantách realizace jednoduššího rozhraní pro výběr instalovaných programů (jako hlavní variantu se zvažuje prototyp rozdělení kategorií na základě typových šablon použití, například grafická prostředí, nástroje pro kontejnery, nástroje pro vývojáře atd.).
Zdroj: opennet.ru
