The developers of the openSUSE project have introduced the Agama 18 installer, notable for separating the user interface from the internal components of YaST. Agama supports various frontends, including a frontend for managing installations through a web interface. Agama replaces the classic installation interface in SUSE Linux Enterprise Server 16 and openSUSE Leap 16. The code for the installer components is distributed under the GPLv2 license and is written in Ruby, Rust, and JavaScript/TypeScript.
Live builds have been created for the x86_64, ppc64le, s390x, and ARM64 architectures to evaluate the new installer. The builds are available for installing openSUSE Leap 16, continuously updated openSUSE Tumbleweed builds, and openSUSE Slowroll, as well as MicroOS and openSUSE Leap Micro editions.
The goals of the Agama development include addressing existing limitations of the graphical interface; expanding the possibilities for utilizing YaST functionality in other applications; moving away from dependence on a single programming language; and encouraging the creation of alternative settings by community members. The installer offers features such as selecting an initial set of applications, configuring network connections, language, keyboard, timezone, and localization settings, preparing storage devices, and partitioning, as well as adding users to the system.
For installing packages, checking hardware, partitioning disks, and other necessary installation functions, Agama continues to use YaST libraries, on top of which are service wrappers that abstract access to the libraries via a unified communication protocol based on HTTP. The installer employs a multiprocess architecture that ensures the user interaction interface remains responsive while other tasks are executed.
The basic interface for managing the installation is built using web technologies. The web interface is written in JavaScript using the React framework and PatternFly components. The messaging service, as well as the built-in HTTP server, are written in Ruby. The interface is displayed in a browser that runs in a graphical environment based on Wayland (a trimmed environment created using the Mutter compositor and Firefox).
In the new version:
- The storage device configuration page has been redesigned. The developers aimed to merge clarity for newcomers with access for experienced users to advanced settings within one interface.

- The interface for configuring DASD (Direct Access Storage Device) storage devices used on System/390 mainframes has been improved.

- Configuration management capabilities in JSON format have been expanded. Support has been added for local validation of the JSON profile without launching the installer. Tools have been implemented to manage responses to installer questions from the profile. The ability to remove individual installation templates has been provided in addition to replacing the entire list.
- The ability to update the installer version from an external repository before starting the installation process has been added.
- Options for installing early alpha versions of SUSE Linux 16.1 have been added. Support for testing versions of openSUSE 16.1 and the atomic edition of openSUSE Kalpa is planned for the future.
- Official support for the i586 architecture has been discontinued.
Source: opennet.ru


