Разработчики инсталлятора YaST, применяемого в openSUSE и SUSE Linux, опубликовали обновление экспериментального инсталлятора D-Installer 0.4, поддерживающего управление установкой через web-интерфейс. Одновременно подготовлены установочные образы, предназначенные для ознакомления с возможностями D-Installer и предоставляющие средства для установки непрерывно обновляемой редакции openSUSE Tumbleweed, а также релизов Leap 15.4 и Leap Micro 5.2.
D-Installer подразумевает отделение пользовательского интерфейса от внутренних компонентов YaST и предоставление возможности использования различных фронтэндов. Для установки пакетов, проверки оборудования, разбивки дисков и прочих необходимых при инсталляции функций продолжают использоваться библиотеки YaST, поверх которых реализована прослойка, абстрагирующая доступ к библиотекам через унифицированный интерфейс D-Bus. Среди целей разработки D-Installer упоминается устранение имеющихся ограничений графического интерфейса, расширение возможностей по использованию функциональности YaST в других приложениях, уход от привязки к одному языку программирования (D-Bus API позволит создавать надстройки на разных языках) и стимулирование создания альтернативных настроек представителями сообщества.
Для взаимодействия с пользователем подготовлен фронтэнд, построенный с использованием web-технологий. Фонтэнд включает обработчик, обеспечивающий доступ к вызовам D-Bus через HTTP, и показываемый пользователю web-интерфейс. Web-интерфейс написан на JavaScript с использованием фреймворка React и компонентов PatternFly. Сервис для привязки интерфейса к D-Bus, а также встроенный http-сервер, написаны на языке Ruby и построены с использованием готовых модулей, развиваемых проектом Cockpit, которые также применяются в web-конфигураторах Red Hat.
Управление установкой осуществляется через сводный экран “Installation Summary”, на котором собраны подготовительные настройки, производимые перед началом установки, такие как выбор языка и устанавливаемого продукта, разбивка диска и управление пользователями.
Основное отличие нового интерфейса от YaST в том, что переход к настройкам не требует запуска отдельных виджетов и предлагается сразу.
В новой версии D-Installer реализована многопроцессная архитектура, благодаря которой интерфейс взаимодействия с пользователем теперь не блокируется во время выполнения других работ в инсталляторе, таких как чтение метаданных из репозитория и установка пакетов. Введены три внутренние стадии установки: запуск инсталлятора, настройка параметров установки и установка. Реализована поддержка установки различных продуктов, например, помимо установки редакции openSUSE Tumbleweed теперь возможна и установка релизов openSUSE Leap 15.4 и Leap Micro 5.2. Для каждого продукта инсталлятор выбирает различные схемы разбивки дисковых разделов, набор пакетов и настройки безопасности.
Дополнительно ведётся работа по созданию минималистичного системного образа, обеспечивающего запуск инсталлятора. Основная идея в компоновке компонентов инсталлятора в форме контейнера и использования специального загрузочного initrd-окружения Iguana для запуска контейнера. В настоящий момент для работы из контейнера уже адаптированы модули YaST для настройки часовых поясов, клавиатуры, языка, межсетевого экрана, системы печати, DNS, просмотра журнала systemd, управления программами, репозиториями, пользователями и группами.