Benjamin Berg (), üks Red Hati inseneridest, kes töötab GNOME arendamise kallal, töötasu tulemused GNOME'i üleminekust systemd ainusjuhendisse, ilma gnome-session'i protsessi kasutamata.
GNOME'i sisselogimise haldamiseks on juba ammu kasutusel , mis jälgib seansside olekuid kasutaja kaudu, haldab seansi ID-sid, vastutab aktiivsete seansside vahel vahetamise eest, koordineerib mitme kasutaja keskkondi (Multi-seat), seadistab seadmete ligipääsu poliitikaid, pakub vahendeid välja lülitamiseks ja puhkeolekusse üleminekuks jne.
Sellegipoolest jäi seansiga seotud funktsionaalsuse osa gnome-session protsessi kanda, mis haldas D-Busi kaudu, käivitas kuvahalduse ja GNOME'i komponente ning korraldas kasutaja määratud rakenduste automaatset käivitamist. GNOME 3.34 arendamise käigus on gnome-sessionile spetsiifilised võimalused vormistatud systemd unit-failide kujul, mis käivad režimis „systemd --user”, st seonduvat konkreetse kasutaja keskkonnaga, mitte kogu süsteemiga. Muudatused on juba rakendatud Fedora 31 distributsioonis, mille väljalaskmist oodatakse oktoobri lõpus.
Systemd'i kasutamine võimaldas korraldada töötlusprotsessorite käivitamist nõudmisel või teatud sündmuste toimumisel, samuti reageerida peenelt protsesside enneaegsele lõpetamisele tõrgete tõttu ja laiemalt hallata sõltuvusi GNOME'i komponentide käivitamisel. Selle tulemusena on võimalik vähendada pidevalt käivitatavate protsesside arvu ja vähendada mälutarbimist. Näiteks saab XWaylandi nüüd käivitada ainult siis, kui proovite käivitada X11-protokollil põhinevat rakendust, ning riistvaraspetsiifilised komponendid, ainult vastava riistvara olemasolul (näiteks nutikaartide töötlejad käivitatakse kaardi sisestamisel ja lõpetatakse selle eemaldamisel).
Kasutajatele on saadaval paindlikumad teenuste käivitamise juhtimise tööriistad. Näiteks multimedia klahvide töötleja väljalülitamiseks piisab käsu "systemctl --user stop gsd-media-keys.target" täitmisest. Probleemide korral võib iga töötleja logisid vaadata käsuga journalctl (näiteks "journalctl --user -u gsd-media-keys.service"), eelnevalt lubades teenuses silumise logimise („Environment=G_MESSAGES_DEBUG=all"). Samuti on nüüd võimalik käivitada kõiki GNOME komponente isoleeritud sandbox-keskkondades, millele esitatakse kõrgendatud turvanõuded.
Sujuva ülemineku tagamiseks säilitatakse vanemat meetodit protsesside käivitamiseks mitme GNOME arendussooru jooksul. Edasi arendajad hindavad gnome-sessioni olekut ja tõenäoliselt (märkida kui „võimalik”) eemaldavad nad sealt protsesside käivitamise ja D-Bus API toetavad vahendid. Seejärel viiakse „systemd --user” kohustuslikuks funktsiooniks, mis võib tekitada raskusi süsteemide jaoks, kus systemd puudub, ja nõuab alternatiivse lahenduse ettevalmistamist, nagu kunagi oli. . Siiski, oma ettekandes GUADEC 2019 konverentsil mainis Benjamin Berg vana käivitamisviisi toe säilitamise soovi süsteemides, kus ei kasutata systemd, kuid see teave on vastuolus plaanidega. .

Allikas: opennet.ru
