Разработчиците на проекта openSUSE представиха инсталатора Agama 13, разработван за замяна на класическия интерфейс за инсталиране на SUSE и openSUSE, и забележителен с отделянето на потребителския интерфейс от вътрешните компоненти на YaST. Agama поддържа използването на различни фронтендове, например, фронтенд за управление на инсталацията чрез уеб интерфейс. Кодът на компонентите на инсталатора се разпространява под лицензия GPLv2 и е написан на езиците Ruby, Rust и JavaScript/TypeScript.
За тестване на новия инсталатор са създадени live сборки за архитектурите x86_64, ppc64le, s390x и ARM64. В сборките са налични за инсталиране алфа версия на openSUSE Leap 16, непрекъснато обновявани сборки на openSUSE Tumbleweed и openSUSE Slowroll, както и редакция MicroOS, базирана на контейнери. Инсталаторът ще бъде предоставян в състава на openSUSE 16 (достъпна алфа версия) и SUSE Linux Enterprise Server 16 (бета версията се очаква през май).
Целите на разработката на Agama са: премахване на съществуващите ограничения на графичния интерфейс; разширяване на възможностите за използване на функционалността на YaST в други приложения; отказ от обвързването с един език за програмиране; насърчаване на създаването на алтернативни настройки от представители на общността. Инсталаторът предлага функции като избор на начален комплект приложения, настройка на мрежово свързване, език, клавиатура, часови пояс и параметри на локализация, подготовка на съхранителното устройство и разпределение на дяловете, добавяне на потребители в системата.
За инсталиране на пакети, проверка на оборудването, разпределение на дисковете и други функции, необходими при инсталацията, в Agama продължават да се използват библиотеките на YaST, над които са реализирани услуги-прослойки, които абстрахират достъпа до библиотеките чрез унифициран комуникационен протокол на базата на HTTP. В инсталатора се използва многопроцесна архитектура, благодарение на която интерфейсът за взаимодействие с потребителя не се блокира по време на изпълнението на други задачи.
Основният интерфейс за управление на инсталацията е построен с използване на уеб технологии. Уеб интерфейсът е написан на JavaScript с използване на фреймворка React и компонентите PatternFly. Услуга за обмен на съобщения, както и вграден http сървър, написан на езика Ruby.

В новата версия:
- Добавена е страница за настройка на името на хоста. В бъдеще на базата на тази страница планират да създадат секция „System“ със системни настройки.

- Добавен е интерфейс за инсталация с използване на мениджъра на логически томове LVM (Logical Volume Manager). По-рано определянето на групи от разпределения LVM и логически разпределения беше реализирано в режим на автоматична инсталация и в интерфейса на командния ред, а сега е добавено в уеб интерфейса.

- Добавена е поддръжка за регистрация на добавки в SUSE Customer Center за тяхното инсталиране в SUSE Linux Enterprise Server.
- В конфигурацията за автоматична инсталация е добавена поддръжка за определяне на собствен списък с пакети за инсталиране, без да се ограничава до предлаганите готови шаблони. В уеб интерфейса не планират да добавят възможност за селективно инсталиране на пакети (изборът ще бъде ограничен до тематични набори).
- В режим на автоматична инсталация е добавена поддръжка на URL в стил AutoYaST (например, device://), което ще позволи да се зареждат сценарии за инсталация от места, използвани в AutoYaST. Освен „file:“ и „http:“ е реализирана поддръжка на URL схеми „device:“, „usb:“, „label:“, „HD:“, „DVD:“ и „cd:“.
- Реализирана е възможността за автоматично търсене на настройки за автоматична инсталация, която се използва, ако не е зададен явно URL на сценария за инсталиране. По време на търсенето Agama ще провери наличието на файлове autoinst.jsonnet, autoinst.json и autoinst.xml в коренната директория и в директорията OEMDR.
- Добавена е поддръжка за внедряване (deploy) на произволни файлове по време на инсталацията. Тези файлове трябва да бъдат определени в конфигурацията чрез елемента . Възможно е както качването на файлове от външни сървъри, така и вграждането на файлове директно в конфигурацията за автоматична инсталация.
Източник: opennet.ru


