I GNOME vil afhængigheden af systemd blive styrket

Adrian Vovk, skaber af det atomar opdaterbare distribution carbonOS og installationsprogrammet til GNOME OS, samt en af udviklerne af systemd-homed og systemd-sysupdate, har annonceret ændringer i GNOME, som vil øge projektets afhængighed af systemd. I de kommende udgivelser GNOME 49 og 50 vil nogle af de egne komponenter til indlogningsskærmen blive erstattet af systemd's standardmuligheder, hvilket vil kræve nye lag til levering af GNOME i distributioner og operativsystemer, der ikke bruger systemd. Det bemærkes, at fjernelse af gammel kode til fordel for systemd's standardmuligheder vil forenkle vedligeholdelsen, befri projektet for workaround-løsninger og muliggøre yderligere funktionalitet, såsom at gemme og genskabe sessioner.

Siden 2015 har GNOME brugt session manager systemd-logind, som er kommet i stedet for ConsoleKit. I distributioner, der ikke understøtter systemd, bruges elogind, en uafhængig og begrænset version af logind, eller patches der genindfører understøttelsen af ConsoleKit. Under udviklingen af GNOME tages sådanne arbejdsomgange uden systemd ikke i betragtning og testes ikke, hvilket gør deres funktionalitet afhængig af tredjeparts entusiaster.

I fremtidige udgivelser af GNOME vil display manager GDM også involvere infrastrukturen userdb, leveret af systemd, som vil erstatte den egen service AccountsService. Både GNOME og systemd understøtter ikke i sig selv opstart af mere end én grafisk session for den samme bruger. GDM kan dog vise flere login-skærme samtidig for at starte flere grafiske sessioner på én gang, hvilket anvendes ved fjernadgang til skrivebordet og på multiseat-systemer med flere skærme og inputenheder. Sådan funktionalitet i GDM blev implementeret for 15 år siden som en midlertidig workaround og er ikke kompatibel med den moderne dbus-broker, derfor er det besluttet at overgå til en ny implementering, der bruger systemd-userdb til dynamisk tildeling af konti og opstart af hver login-skærm under en unik bruger.

Desuden er det besluttet at fjerne GNOMEs egne service manager-implementation, som blev brugt i gnome-session som en backup-behandler til at starte GNOME-tjenester i miljøer uden systemd. Den indbyggede service manager fungerede på niveauet for at starte desktop-filer og overvåge de relaterede tjenesters drift. Denne service manager har næsten ikke ændret sig i de sidste 17 år, og den eneste grund til, at den ikke er blevet fjernet, har været dens brug i GDM til at starte login-skærmen. Efter overgangen af GDM til brug af systemd til at starte login-skærmen, har projektet ikke længere nogen grund til at opretholde sin primitive session manager, der hindrer muligheden for at gemme og gendanne sessioner.

For at forenkle tilpasningen til ændringer i distributioner, der ikke bruger systemd, vil GNOME 49 midlertidigt tilføje muligheden for at starte GDM uden userdb ved hjælp af den faste bruger gdm-greeter til den første login-session, gdm-greeter-2 til den anden osv. I GNOME 50 planlægges det at fjerne denne mulighed samt den indbyggede service manager, så udviklerne af distributioner uden systemd hurtigt skal udvikle lag til at erstatte systemd-userdb (io.systemd.Multiplexer, userdb Varlink API) og session-startprocessen (session leader), som interagerer med den service manager, der anvendes i distributionen.

Det vil også være nødvendigt at erstatte eksekverbare fil gnome-session-ctl, som koordinerer interaktionen mellem session-startprocessen, D-Bus-tjenesten og systemd. Erstatningen af gnome-session-ctl skal udvikles inden udgivelsen af GNOME 49.

Kilde: opennet.ru

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster