В GNOME будет усилена зависимость от systemd

Новости мира unix. Хотите узнать секрет вечного счастья? Откройте страницу 246.
Ответить
acolyte
Аватара пользователя
Сообщения: 4263
Зарегистрирован: 20.08.2022

#

В GNOME будет усилена зависимость от systemd
Дата публикации:Wed, 11 Jun 2025 17:25:33 +0300




Адриан Вовк (Adrian Vovk), создатель атомарно обновляемого дистрибутива carbonOS и инсталлятора для GNOME OS, а также один из разработчиков systemd-homed и systemd-sysupdate, объявил о внесении в GNOME изменений, которые усилят зависимость проекта от systemd. В грядущих выпусках GNOME 49 и 50 некоторые собственные компоненты для запуска экрана входа в систему будут заменены на штатные возможности systemd, что потребует создания новых прослоек для поставки GNOME в дистрибутивах и операционных системах, не использующих systemd. Отмечается, что удаление старого кода в пользу штатных возможностей systemd упростит сопровождение, избавит проект от костылей и позволит реализовать желаемую функциональность.



С 2015 года в GNOME используется менеджер сеансов systemd-logind, пришедший на смену ConsoleKit. В дистрибутивах, не поддерживающих
systemd, используется elogind, независимый от systemd урезанный вариант logind, или патчи, возвращающие поддержку ConsoleKit.
При разработке GNOME подобные обходные пути работы без systemd не учитываются и не тестируются, поэтому их работоспособность зависит от
сторонних энтузиастов.



В будущих выпусках GNOME в дисплейном менеджере GDM дополнительно будет задействована инфраструктура userdb, предоставляемая systemd, которая заменит собой собственный сервис AccountsService. GNOME и systemd сами по себе не поддерживают запуск более одного графического сеанса для одного и того же пользователя. При этом GDM может выводить одновременно несколько экранов входа для запуска одновременно нескольких графических сеансов, что применяется при удалённом доступе к рабочему столу и на multiseat-системах с несколькими мониторами и устройствами ввода. Подобная функциональность в GDM была реализована 15 лет назад как временный костыль и не совместима с современным dbus-broker, поэтому решено перейти на новую реализацию, использующую systemd-userdb для динамического выделения учётных записей и запуска каждого экземпляра экрана входа под уникальным пользователем.



Кроме того, решено удалить из GNOME реализацию собственного менеджера сервисов, который использовался в gnome-session в качестве запасного обработчика для запуска сервисов GNOME в окружениях без systemd. Встроенный менеджер сервисов функционировал на уровне запуска desktop-файлов и отслеживания работы связанных с ними сервисов. Данный менеджер сервисов почти не изменялся последние 17 лет и единственной причиной по которой он не был удалён оставалось его использование в GDM для запуска экрана входа в систему. После перевода GDM на использование systemd для запуска экрана входа в систему, у проекта не осталось причин поддерживать собственный примитивный менеджер сеансов.




Для упрощения адаптации к изменениям дистрибутивов, не использующих systmed, в GNOME 49 будет временно добавлена возможность запуска GDM без userdb с использованием фиксированного пользователя gdm-greeter для первого сеанса входа, gdm-greeter-2 для второго и т.п. В GNOME 50 подобную возможность, а также встроенный менеджер сервисов планируют удалить, поэтому разработчикам дистрибутивов без systemd в срочном порядке необходимо разработать прослойки для замены systemd-userdb (io.systemd.Multiplexer, userdb Varlink API) и процесса запуска сеанса (session leader), взаимодействующего с применяемым в дистрибутиве сервисным менеджером.



Также потребуется замена исполняемого файла gnome-session-ctl, координирующего взаимодействие между процессом запуска сеанса, сервисом D-Bus и systemd. Замену gnome-session-ctl необходимо разработать до выпуска GNOME 49.












Новость позаимствована с opennet.ru
Ссылка на оригинал: https://www.opennet.ru/opennews/art.shtml?num=63391

Жизнь за Нер'зула!

Ответить