Benjamin Berg (), un des ingénieurs de Red Hat, travaillant sur le développement de GNOME, les résultats du travail de traduction de GNOME pour la gestion des sessions exclusivement via systemd, sans utiliser le processus gnome-session.
Pour gĂ©rer l'accĂšs Ă GNOME, on utilise dĂ©jĂ depuis longtemps , qui suit les Ă©tats des sessions associĂ©es Ă l'utilisateur, gĂšre les identifiants de session, s'occupe du basculement entre les sessions actives, coordonne les environnements multi-utilisateurs (Multi-seat), dĂ©finit des politiques d'accĂšs aux appareils, fournit des outils pour l'arrĂȘt et la mise en veille, etc.
Toutefois, certaines fonctionnalités liées aux sessions restaient sous la responsabilité du processus gnome-session, qui gérait les sessions via D-Bus, lançait le gestionnaire d'affichage et les composants GNOME, et organisait le lancement automatique des applications spécifiées par l'utilisateur. Au cours du développement de GNOME 3.34, les capacités spécifiques à gnome-session ont été formulées sous forme de fichiers unitaires pour systemd, exécutés en mode « systemd --user », c'est-à -dire liés à l'environnement d'un utilisateur spécifique, et non à l'ensemble du systÚme. Les modifications ont déjà été appliquées dans la distribution Fedora 31, dont la sortie est prévue pour fin octobre.
L'utilisation de systemd a permis d'organiser le lancement des gestionnaires Ă la demande ou lors de certains Ă©vĂ©nements, ainsi qu'une rĂ©action plus sophistiquĂ©e aux terminaisons prĂ©maturĂ©es des processus en raison de pannes et un traitement Ă©largi des dĂ©pendances lors du lancement des composants GNOME. En consĂ©quence, il est possible de rĂ©duire le nombre de processus toujours en cours d'exĂ©cution et de diminuer la consommation de mĂ©moire. Par exemple, XWayland peut dĂ©sormais ĂȘtre lancĂ© uniquement lorsqu'une application utilisant le protocole X11 est exĂ©cutĂ©e, et les composants spĂ©cifiques Ă un matĂ©riel donnĂ©, uniquement en prĂ©sence de ce matĂ©riel (par exemple, les gestionnaires pour les cartes Ă puce seront lancĂ©s lors de l'insertion de la carte et arrĂȘtĂ©s lors de son retrait).
Les utilisateurs disposent dĂ©sormais d'outils de gestion plus flexibles pour le lancement des services, par exemple, pour dĂ©sactiver le gestionnaire de touches multimĂ©dias, il suffit d'exĂ©cuter «systemctl âuser stop gsd-media-keys.target». En cas de problĂšmes, les logs de chaque gestionnaire peuvent ĂȘtre consultĂ©s avec la commande journalctl (par exemple, «journalctl âuser -u gsd-media-keys.service»), aprĂšs avoir activĂ© la journalisation de dĂ©bogage dans le service («Environment=G_MESSAGES_DEBUG=all»). Il est Ă©galement possible de lancer tous les composants GNOME dans des environnements sandbox isolĂ©s, qui ont des exigences de sĂ©curitĂ© Ă©levĂ©es.
Pour faciliter la transition, le support de l'ancienne mĂ©thode de lancement des processus sera maintenu pendant plusieurs cycles de dĂ©veloppement de GNOME. Ensuite, les dĂ©veloppeurs procĂ©deront Ă un examen de l'Ă©tat de gnome-session et il est probable (indiquĂ© comme «likely») qu'ils supprimeront les moyens de lancer des processus et de gĂ©rer l'API D-Bus. Ensuite, l'utilisation de «systemd âuser» sera considĂ©rĂ©e comme une fonction obligatoire, ce qui pourrait poser des problĂšmes pour les systĂšmes sans systemd et nĂ©cessitera la prĂ©paration d'une solution alternative, comme cela avait Ă©tĂ© le cas avec . Cependant, lors de sa prĂ©sentation Ă la confĂ©rence GUADEC 2019, Benjamin Berg a mentionnĂ© l'intention de conserver le soutien de l'ancienne mĂ©thode de lancement pour les systĂšmes sans systemd, mais cette information contredit les plans pour .

Source : opennet.ru
