Gnome's broken dream
La vidéo analyse la vision design de GNOME Shell, tout en dénonçant une contradiction structurelle : l’élégance des mock-ups repose sur une simplification architecturale qui verrouille GNOME sur systemd, réduisant son universalité historique.

SYNTHÈSE STRUCTURÉE
Le document « GNOME Shell design dreams »
Le 11 août, Tobias Bernard de l’équipe design a publié un post détaillant la vision long terme du shell. On y trouve une nouvelle recherche qui, au lieu de remplacer brutalement l’overview par des résultats, fera émerger un panneau depuis le champ de recherche, avec aperçus de fichiers, actions multiples et filtres. Ce changement est prévu pour GNOME 51, car « le merge request existe et bouge ». L’intervenant souligne que ce n’est pas du « mock-up fluff » : « Il y a une pensée cohérente ici qui part de loin, du modèle spatial GNOME 40 ».
La phrase clé : « ces idées ont besoin de votre aide pour vivre »
La dernière section du post, intitulée « how do we get there », contient une phrase que l’intervenant juge plus précieuse que tous les mock-ups : « these ideas need your help to come to life ». Le design team admet explicitement que « nous ne pouvons que proposer, l’implémentation dépend de la capacité des développeurs, de leur intérêt, et parfois de financements ». C’est le premier aveu d’un fossé structurel entre l’imagination et la livraison.
Les rêves laissés en suspens
L’intervenant liste des exemples concrets de belles idées non implémentées : le « login grid » qui « presque arrive à chaque cycle et est devenu presque un mème », le panneau transparent avec une implémentation « relativement complète qui attend depuis des années des tests et une revue », et Mosaic, décrit en 2023 mais vivant surtout dans une extension tierce maintenue par un seul contributeur, Cleo Menezes Jr. Ce n’est pas de la mauvaise foi, mais un « écart structurel entre la capacité à imaginer et la capacité à livrer ».
GNOME 49 : la suppression du service manager intégré
Adrian Vovk a annoncé deux changements majeurs. D’abord, gnome-session supprime son gestionnaire de services intégré, qui servait de parachute sur les systèmes sans systemd (BSD, runit, openrc). Ce code, « resté sans attention pendant 17 ans », était « effectivement non testé » et interférait avec une future fonctionnalité : la sauvegarde et restauration de session. La décision est radicale : « supprimé complètement ».
GDM et l’abandon des « hacks » pour systemd-userdb
Deuxième changement : GDM, pour gérer plusieurs écrans de connexion simultanés, s’appuyait sur des « legacy behaviors and straight-up hacks » incompatibles avec le broker D-Bus moderne. La solution choisie est de s’appuyer sur systemd-userdb, qui alloue dynamiquement les comptes utilisateurs et exécute chaque écran de connexion comme un utilisateur séparé. L’intention déclarée est d’aller plus loin, en remplaçant accountsservice par userdb, ce daemon « qui il y a 15 ans était censé être une solution temporaire ».
Une porte, pas un mur, mais avec un coût
L’intervenant précise que le projet n’abandonne pas les systèmes sans systemd du jour au lendemain. Il existe un chemin de code alternatif temporaire dans GDM pour ceux qui compilent avec elogind, et Vovk a publié une liste de ce que les distributions non-systemd doivent implémenter : remplacer les fichiers unit systemd par leurs propres définitions, remplacer le session leader qui parle à systemd via D-Bus, remplacer le helper gnome-session-ctl, et implémenter l’infrastructure pour l’API userdb. Mais le message implicite est clair : « upstream teste et supporte un seul chemin, le chemin systemd. Tout le reste devient la responsabilité de qui le veut, à chaque release, pour toujours ».
Élégance et fermeture : la même décision
L’intervenant établit un lien profond entre la beauté des mock-ups et la simplification architecturale. Pour construire une expérience fluide et cohérente, il faut « réduire les variables : un init, un gestionnaire de session, une base de données utilisateur, un chemin de code à tester ». La sauvegarde de session, la fonctionnalité qui a motivé la suppression de l’ancien gestionnaire, est précisément un de ces « design dream features ». La cohérence visuelle admirée est « l’enfant de la même philosophie qui supprime les fallbacks ».
Le prix caché : l’universalité perdue
L’intervenant juge que le prix est plus élevé qu’il n’y paraît, non par nostalgie mais par vocation. GNOME est né comme acronyme de « GNU Network Object Model Environment », au sein du projet GNU, avec la vocation d’être « le desktop universel du logiciel libre ». Pendant 20 ans, cette universalité était une « valeur opérante, pas un slogan ». L’exemple de elogind (extrait de logind en 2015) montre que le modèle « vous resserrez, nous extrayons » a tenu une décennie, mais userdb et la gestion de session via l’instance utilisateur systemd sont « bien plus entremêlés, bien plus difficiles à extraire ».
La trajectoire vers un écosystème mono-stack
L’intervenant décrit une trajectoire visible : « le desktop phare du logiciel libre est en pratique disponible sur un seul stack, du PID 1 à la barre supérieure ». Ce n’est pas une question de licence — tout reste libre — mais de « gravité, de coût de déviation », qui produit « le même effet qu’un lock-in sans jamais avoir besoin d’un contrat ». La liste des tâches pour les non-systemd s’allonge à chaque cycle, tandis que les mains disponibles dans ces communautés restent limitées.
Le paradoxe final : des rêves qui rétrécissent leur territoire
La conclusion est cinglante : plus la vision design devient raffinée, plus elle devient exigeante techniquement, et plus elle « rétrécit le territoire sur lequel elle peut exister ». Le design team demande de l’aide, mais la question est « à qui ils s’adressent ». Chaque release qui augmente le coût d’entrée pour ceux hors du stack béni « rétrécit aussi le bassin de personnes qui pourraient construire ce rêve ». L’intervenant résume : « Un desktop qui rêve grand et recrute petit, c’est GNOME en 2026 ».
CONCEPTS CLÉS
- Modèle spatial GNOME 40 : principe de conception où chaque élément d’interface provient d’un endroit sémantiquement prévisible et y retourne, créant une navigation fluide et intuitive.
- systemd user instance : instance du gestionnaire de services systemd dédiée à un utilisateur, qui démarre et coordonne les services de session (depuis GNOME 3.34).
- systemd-userdb : mécanisme d’allocation dynamique de comptes utilisateurs via D-Bus, permettant de faire tourner des services sous des identités éphémères sans entrées statiques dans
/etc/passwd. - elogind : extraction du démon
logindde systemd, permettant de gérer les sessions et les sièges sur des systèmes sans systemd (BSD, distributions alternatives). - accountsservice : daemon D-Bus fournissant des informations sur les comptes utilisateurs, considéré comme une solution temporaire depuis 15 ans et visé par le remplacement via
userdb. - Session save and restore : fonctionnalité visant à sauvegarder et restaurer l’état complet d’une session utilisateur (fenêtres, applications, services) après un redémarrage.
CONCLUSION
La vidéo met en lumière une tension fondamentale dans GNOME : la quête de perfection visuelle et d’expérience cohérente pousse à réduire la diversité architecturale, mais cette réduction se fait au détriment de l’universalité qui a fait la force historique du projet. L’intervenant ne condamne pas le choix technique — il le juge « lisible et légitime » — mais il en souligne le coût réel : un desktop qui s’adresse de fait à un seul écosystème, systemd, et qui, en élevant la barrière d’entrée, réduit le bassin de contributeurs capables de réaliser ses propres rêves. Pour un administrateur système, c’est un signal clair : si vous gérez des environnements non-systemd, anticipez une charge de maintenance croissante, et si vous êtes sur systemd, profitez de la stabilité accrue, mais comprenez que la diversité du libre s’amenuise silencieusement.