(Benjamin Berg)), uno degli ingegneri di Red Hat che si occupa dello sviluppo di GNOME, i risultati del lavoro di traduzione di GNOME per la gestione delle sessioni esclusivamente tramite systemd, senza l'uso del processo gnome-session.
Per gestire l'accesso a GNOME si utilizza già da tempo , che tiene traccia degli stati delle sessioni legati all'utente, gestisce gli identificatori delle sessioni, risponde al cambio tra sessioni attive, coordina ambienti multiutente (Multi-seat), imposta politiche di accesso ai dispositivi, fornisce strumenti per lo spegnimento e la sospensione, e così via.
Tuttavia, parte delle funzionalità legate alle sessioni rimaneva sotto la responsabilità del processo gnome-session, che si occupava della gestione tramite D-Bus, dell'avvio del display manager e dei componenti GNOME, organizzando l'avvio automatico delle applicazioni selezionate dall'utente. Nel processo di sviluppo di GNOME 3.34, le funzionalità specifiche per gnome-session sono state convertite in file unit per systemd, eseguiti in modalità "systemd --user", cioè legati all'ambiente di un singolo utente, e non all'intero sistema. Le modifiche sono già state applicate nella distribuzione Fedora 31, il cui rilascio è previsto per la fine di ottobre.
L'uso di systemd ha permesso di organizzare l'avvio dei gestori a richiesta o in seguito a determinati eventi, nonché di rispondere in modo più sofisticato alle chiusure premature dei processi dovute a guasti e di gestire in modo più esteso le dipendenze durante l'avvio dei componenti GNOME. Di conseguenza, si può ridurre il numero di processi sempre in esecuzione e diminuire il consumo di memoria. Ad esempio, XWayland può ora essere avviato solo quando si tenta di eseguire un'applicazione basata sul protocollo X11, e i componenti specifici per determinate apparecchiature vengono avviati solo quando tali apparecchiature sono presenti (ad esempio, i gestori per le smart card verranno avviati all'inserimento della carta e terminati all'estrazione).
Per l'utente sono stati introdotti strumenti di gestione più flessibili per l'avvio dei servizi, ad esempio, per disattivare il gestore delle chiavi multimediali è sufficiente eseguire «systemctl —user stop gsd-media-keys.target». In caso di problemi, i log relativi a ciascun gestore possono essere visualizzati con il comando journalctl (ad esempio, «journalctl —user -u gsd-media-keys.service»), previa attivazione della registrazione del log di debug nel servizio («Environment=G_MESSAGES_DEBUG=all»). È stata inoltre introdotta la possibilità di avviare in ambienti sandbox isolati tutti i componenti GNOME, ai quali vengono applicate elevate richieste di sicurezza.
Per facilitare la transizione, il supporto al vecchio metodo di avvio dei processi sarà mantenuto per diversi cicli di sviluppo di GNOME. Successivamente, gli sviluppatori valuteranno lo stato di gnome-session e probabilmente (segnalato come «likely») rimuoveranno da essa gli strumenti per l'avvio dei processi e la gestione dell'API D-Bus. Con il successivo passaggio a «systemd —user», sarà considerato tra le funzionalità obbligatorie, il che potrebbe creare difficoltà per i sistemi senza systemd e richiedere la preparazione di una soluzione alternativa, come avvenne all'epoca con . Tuttavia, nel suo intervento alla conferenza GUADEC 2019, Benjamin Berg ha menzionato l'intenzione di mantenere il supporto per il vecchio metodo di avvio per i sistemi senza systemd, ma questa informazione è in contrasto con i piani per .

Fonte: opennet.ru
