W GNOME wzmocniona zostanie zależność od systemd.

Adrian Vovk, twórca atomowo aktualizowanego dystrybucji carbonOS i instalatora dla GNOME OS, a także jeden z deweloperów systemd-homed i systemd-sysupdate, ogłosił zmiany w GNOME, które wzmocnią zależność projektu od systemd. W nadchodzących wydaniach GNOME 49 i 50 niektóre własne komponenty do uruchamiania ekranu logowania zostaną zastąpione standardowymi funkcjami systemd, co wymusi wprowadzenie nowych warstw dla dostępu GNOME w dystrybucjach i systemach operacyjnych, które nie używają systemd. Zauważono, że usunięcie starego kodu na rzecz standardowych rozwiązań systemd uprości utrzymanie, uwolni projekt od obejść i umożliwi realizację dodatkowej funkcjonalności, takiej jak zapisywanie i przywracanie sesji.

Od 2015 roku w GNOME używany jest menedżer sesji systemd-logind, który zastąpił ConsoleKit. W dystrybucjach, które nie wspierają systemd, używany jest elogind, niezależna od systemd okrojona wersja logind, lub poprawki przywracające wsparcie dla ConsoleKit. Podczas rozwoju GNOME takie obejścia pracy bez systemd nie są brane pod uwagę i testowane, dlatego ich działanie zależy od entuzjastów zewnętrznych.

W przyszłych wydaniach GNOME w menedżerze wyświetlania GDM dodatkowo zaangażowana zostanie infrastruktura userdb dostarczana przez systemd, która zastąpi własną usługę AccountsService. GNOME i systemd same w sobie nie wspierają uruchamiania więcej niż jednej graficznej sesji dla tego samego użytkownika. Jednak GDM może jednocześnie wyświetlać kilka ekranów logowania dla uruchamiania kilku graficznych sesji, co ma zastosowanie w przypadku zdalnego dostępu do pulpitu i w systemach multiseat z wieloma monitorami i urządzeniami wejściowymi. Tego rodzaju funkcjonalność w GDM została wdrożona 15 lat temu jako tymczasowe obejście i nie jest zgodna z nowoczesnym dbus-broker, dlatego zdecydowano się przejść na nowe wdrożenie, które wykorzystuje systemd-userdb do dynamicznego przypisywania kont i uruchamiania każdego egzemplarza ekranu logowania pod unikalnym użytkownikiem.

Ponadto postanowiono usunąć z GNOME implementację własnego menedżera usług, który był używany w gnome-session jako zapasowy proces uruchamiający usługi GNOME w środowiskach bez systemd. Wbudowany menedżer usług działał na poziomie uruchamiania plików desktopowych i śledzenia pracy związanych z nimi usług. Menedżer usług nie zmieniał się praktycznie przez ostatnie 17 lat, a jedynym powodem, dla którego nie został usunięty, było jego użycie w GDM do uruchamiania ekranu logowania do systemu. Po przetworzeniu GDM na wykorzystanie systemd do uruchamiania ekranu logowania, projekt nie miał już powodów do utrzymywania własnego prymitywnego menedżera sesji, który uniemożliwia realizację możliwości zapisywania i przywracania sesji.

Aby uprościć adaptację do zmian w dystrybucjach, które nie używają systemd, w GNOME 49 tymczasowo dodana zostanie możliwość uruchamiania GDM bez userdb z wykorzystaniem stałego użytkownika gdm-greeter dla pierwszej sesji logowania, gdm-greeter-2 dla drugiej itd. W GNOME 50 podobna możliwość, a także wbudowany menedżer usług planowane jest do usunięcia, dlatego deweloperzy dystrybucji bez systemd pilnie muszą opracować warstwy zastępujące systemd-userdb (io.systemd.Multiplexer, interfejs API Varlink userdb) oraz proces uruchamiania sesji (lider sesji), oddziałujący z używanym w dystrybucji menedżerem usług.

Konieczna będzie również wymiana pliku wykonywalnego gnome-session-ctl, koordynującego interakcje między procesem uruchamiania sesji, usługą D-Bus a systemd. Wymiana gnome-session-ctl musi być opracowana przed wydaniem GNOME 49.

Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster