OpenSUSE развивает web-интерфейс для инсталлятора YaST

После объявления о переводе на web-интерфейс инсталлятора Anaconda, применяемого в Fedora и RHEL, разработчики инсталлятора YaST раскрыли планы по разработке проекта D-Installer и созданию фронтэнда для управления установкой дистрибутивов openSUSE и SUSE Linux через web-интерфейс.

Отмечается, что проектом уже давно развивается web-интерфейс WebYaST, но он ограничен возможностями удалённого администрирования и настройки системы, не рассчитан для использования в качестве инталлятора, и жестко привязан к коду YaST. D-Installer рассматривается как платформа, обеспечивающая работу поверх YaST нескольких фронтэндов для установки (Qt GUI, CLI и Web). Из сопутствующих планов отмечается проведение работы по сокращению процесса установки, отделению пользовательского интерфейса от внутренних компонентов YaST и добавлению web-интерфейса.


Технически D-Installer представляет собой слой абстракции, реализованный поверх библиотек YaST и предоставляющий унифицированный интерфейс для обращения через D-Bus к таким функциям, как установка пакетов, проверка оборудования и разбивка дисков. На указанный D-Bus API будут переведены графический и консольный установщики, а также подготовлен работающий в браузере установщик, взаимодействующий с D-Installer через прокси-сервис, обеспечивающий доступ к вызовам D-Bus через HTTP. Разработка пока находится на стадии начального прототипа. D-Installer и прокси разрабатываются на языке Ruby, на котором написан и сам YaST, а web-интерфейс создаётся на JavaScript с использованием фреймворка React (не исключается задействование компонентов Cockpit).

Среди целей которые преследует проект D-Installer: устранение имеющихся ограничений графического интерфейса, расширение возможностей по использованию функциональности YaST в других приложениях, унифицированный интерфейс D-Bus, упрощающий интеграцию с собственными рабочими процессами, уход от привязки к одному языку программирования (D-Bus API позволит создавать надстройки на разных языках), стимулирование создания альтернативных настроек представителями сообщества.

Release. Ссылка here.