Benjamin Berg (), jeden z inžinierov Red Hat, ktorý sa zaoberá vývojom GNOME, výsledky práce na prechode GNOME na spravovanie relácií výhradne pomocou systemd, bez využitia procesu gnome-session.
Na spravovanie prihlásenia do GNOME sa už dlhší čas používa , ktorý sleduje stavy relácií v súvislosti s používateľom, spravuje identifikátory relácií, zodpovedá za prepínanie medzi aktívnymi reláciami, koordinuje viacužívateľské prostredia (Multi-seat), nastavuje prístupové politiky k zariadeniam, poskytuje prostriedky na vypínanie a prechod do spánkového režimu a podobne.
Pri tom časť funkčnosti týkajúcej sa relácií zostávala na pleciach procesu gnome-session, ktorý sa zaoberal správou cez D-Bus, spúšťaním správcu obrazovky a komponentov GNOME, organizovaním automatického spúšťania aplikácií určených používateľom. Počas vývoja GNOME 3.34 špecifické pre gnome-session možnosti boli spracované vo forme unit súborov pre systemd, vykonávaných v režime «systemd --user», teda vo vzťahu k prostrediu konkrétneho používateľa, a nie celej sústavy. Zmeny už boli aplikované v distribúcii Fedora 31, ktorej vydanie sa očakáva koncom októbra.
Použitie systemd umožnilo organizovať spúšťanie spracovateľov na požiadanie alebo pri výskyte určitých udalostí, ako aj sofistikovanejšie reagovať na predčasné ukončenie procesov v dôsledku porúch a rozšírene spracovávať závislosti pri spúšťaní komponentov GNOME. V dôsledku toho je možné znížiť počet neustále spustených procesov a znížiť spotrebu pamäte. Napríklad, XWayland teraz môže byť spustený len pri pokuse o vykonanie aplikácie založenej na protokole X11, a komponenty špecifické pre určité zariadenia, len pri prítomnosti takého zariadenia (napríklad spracovatelia pre smart karty budú spustené pri vložení karty a ukončené pri jej vybratí).
Pre používateľov sa objavili flexibilnejšie nástroje na správu spúšťania služieb, napríklad na vypnutie spracovateľa multimediálnych kláves bude stačiť vykonať „systemctl —user stop gsd-media-keys.target“. V prípade problémov súvisiacich s každým spracovateľom je možné záznamy prezerať príkazom journalctl (napríklad „journalctl —user -u gsd-media-keys.service“), predtým je potrebné v službe zapnúť vedenie laditeľného záznamu („Environment=G_MESSAGES_DEBUG=all“). Taktiež sa objavila možnosť spúšťania vo izolovaných sandbox-ových prostrediach všetkých komponentov GNOME, ktoré majú zvýšené požiadavky na bezpečnosť.
Na zmiernenie prechodu, podpora starého spôsobu spúšťania procesov ostane zachovaná počas niekoľkých cyklov vývoja GNOME. Následne vývojári vykonajú preskúmanie stavu gnome-session a pravdepodobne (označené ako „pravdepodobné“) odstránia z neho prostriedky na spúšťanie procesov a sprievodný D-Bus API. Potom sa aplikácia „systemd —user“ stane povinnou funkciou, čo môže spôsobiť ťažkosti pre systémy bez systemd a bude potrebné pripraviť alternatívne riešenie, ako to bolo kedysi s . Napriek tomu, vo svojom vystúpení na konferencii GUADEC 2019 Benjamin Berg spomenul zámysel zachovať podporu starého spôsobu spúšťania pre systémy bez systemd, ale táto informácia sa rozchádza s plánmi na .

Zdroj: opennet.ru
