Часть функциональности Gnome, KDE и Xfce переносят в systemd

Продолжается победное наступление systemd на дистрибутивы. Основной мэйнтейнер Lunar Linux и сотрудник Intel, работающий над проектом Tizen, Auke Kok в своей ленте Google+ анонсировал революционное изменение, которое он уже представил на рассмотрение разработчикам systemd.

Сначала, он упомянул, что Tizen также переходит с устаревшего SysV на systemd, а затем он рассказал о его нововведении, которое создано в рамках внедрения systemd инженерами Intel совместно с инженерами Samsung - первом варианте изменений, которые предназначены для управления пользовательскими сессиями не на уровне неких демонов, встроенных в Desktop Environment (gnome-session, startxfce4 и прочих), а с помощью systemd. Он добился значительного ускорения и повышенной надежности загрузки (лучший контроль компонентов).

Какова же проблема, которую он решает? Изначально, в устаревшем SysV, не было никакой возможности запустить рабочее окружение пользователя. Процесс загрузки выглядит так - init от суперпользователя запускает скрипты в /etc/init.d, затем запускает desktop manager (GDM, KDM, XDM или иные). Пользователь вводит пароль и логин, и desktop manager известным лишь ему образом запускает последовательность действий для запуска рабочего окружения (на этом этапе init уже никак не задействован). Таким образом, у нас есть минимум два компонента, которые запускают сервисы в системе - init и еще один на каждый Desktop Envionment, доступный на машине пользователя. Все это приводит к дублированию правил запуска для различных desktop manager, написанию неких менеджеров сессий и прочей лишней работе, результаты которой, к тому же, еще и содержат ошибки, порой трудноуловимые.

С появлением основанного на принципах философии Unix, специализированного изолированного компонента для запуска системы, который учитывает различные внешние события (он, как и полагается такому компоненту, делает только одно и делает это хорошо - следит за запуском и состоянием сервисов), оказалось можно отделить компоненты запуска рабочего окружения от Desktop Environment и сделать их полностью независимыми (и зависимыми от systemd, конечно). Auke написал первый прототип, который уже заслужил теплый отзыв от Greg Kroah-Hartman, оставленный им в его ленте Google+.

Что ж, вслед за уже почти закончившимся повальным переходом дистрибутивов на systemd, будем ожидать переходов Desktop Environment на него-же. А пользователям дистрибутивов, которые все еще по каким-то причинам не начали переход на systemd, стоило бы потормошить своих мэйнтейнеров.