Дистрибутив OpenSUSE опубликовал альтернативный инсталлятор Agama 15

Разработчики проекта openSUSE представили инсталлятор Agama 15, разрабатываемый для замены классического интерфейса установки SUSE и openSUSE, и примечательный отделением пользовательского интерфейса от внутренних компонентов YaST. Agama поддерживает использование различных фронтэндов, например, фронтэнда для управления установкой через web-интерфейс. Код компонентов инсталлятора распространяется под лицензией GPLv2 и написан на языках Ruby, Rust и JavaScript/TypeScript.

Для тестирования нового инсталлятора сформированы live-сборки для архитектур x86_64, ppc64le, s390x и ARM64. В сборках доступны для установки бета-версия openSUSE Leap 16, непрерывно обновляемые сборки openSUSE Tumbleweed и openSUSE Slowroll, а также редакция MicroOS на базе контейнеров. Инсталлятор будет поставляться в составе openSUSE Leap 16 (доступна альфа-версия) и SUSE Linux Enterprise Server 16 (бета-выпуск ожидается в мае).

Цели разработки Agama: устранение имеющихся ограничений графического интерфейса; расширение возможностей по использованию функциональности YaST в других приложениях; уход от привязки к одному языку программирования; стимулирование создания альтернативных настроек представителями сообщества. Инсталлятор предоставляет такие функции, как выбор начального набора приложений, настройка сетевого подключения, языка, клавиатуры, часового пояса и параметров локализации, подготовка устройства хранения и разбивка разделов, добавления пользователей в систему.

Для установки пакетов, проверки оборудования, разбивки дисков и прочих необходимых при инсталляции функций в Agama продолжают использоваться библиотеки YaST, поверх которых реализованы сервисы-прослойки, абстрагирующие доступ к библиотекам через унифицированный коммуникационный протокол на базе HTTP. В инсталляторе используется многопроцессная архитектура, благодаря которой интерфейс взаимодействия с пользователем не блокируется во время выполнения других работ.

Базовый интерфейс для управления установкой построен с использованием web-технологий. Web-интерфейс написан на JavaScript с использованием фреймворка React и компонентов PatternFly. Сервис для обмена сообщениями, а также встроенный http-сервер, написанный на языке Ruby.

В новой версии:

  • Унифицирован интерфейс для настройки языка, раскладки клавиатуры и часового пояса. Ранее настройки локализации отдельно предоставлялись для интерфейса инсталлятора и для устанавливаемого дистрибутива, что вводило пользователей в заблуждение.

  • Переделан интерфейс для настройки подключения к беспроводной сети.

  • В интерфейсе разбивки дисковых разделов проведена реорганизация контекстных меню и добавлены дополнительные пояснения.

  • Предоставлена возможность использования web-интерфейса для регистрации расширений.

  • Улучшен режим автоматизированной установки.
    • Предоставлена возможность интерактивной настройки параметров iSCSI и DASD при автоматизированной установке.
    • Улучшен поиск накопителей и дисковых разделов на целевой системе, а также их сопоставление с имеющимися сценариями автоматизированной установки.
    • Добавлено новое свойство mdRaids для создания MD RAID-массивов при автоматизированной установке.
    • В настройки загрузчика добавлены опции для управления таймаутом показа загрузочного меню и передачи ядру дополнительных параметров.
    • В настройки сети добавлена возможность создания сетевых интерфейсов в режиме сетевого моста.
    • В настройках AutoYaST разрешено указание относительных путей в URL.
  • В интерфейсе командной строки реализована команда “agama monitor” для отслеживания процесса установки на другой системе.

Release. Ссылка here.