GNOME Shell (distribué sous licence libreGNU GPL) est le cœur de l'interface graphique de l’environnement de bureauGNOME à partir de sa version 3.0. Il sert à la fois de tableau de bord, de zone de notification et de sélecteur de fenêtres. À son lancement, GNOME Shell reçut un accueil mitigé par la communauté lors de la sortie de sa version 3.0 ; toutefois, la mise en ligne du répertoire d'extensions, permettant de personnaliser l'interface, a atténué les critiques[2]. Aujourd'hui, les améliorations apportées aux versions successives de GNOME Shell ont permis de reconquérir de nombreux utilisateurs et non des moindres[3].
Depuis la sortie de sa version 40 en 2021 qui acte un passage à la version 4 de la bibliothèque graphique GTK[4] et apporte de nombreux changements visuels l'interface, GNOME Shell connaît un développement visant à l'adapter aux interfaces de smartphones[5] (notamment sous PostmarketOS), ce qui est facilité par le passage au langage de conception Adwaita (en).
Un système d'extensions (écrites en JavaScript et stylisées en CSS) permet de personnaliser le GNOME Shell[6]. À compter de la version 3.4 (2012), un service Web est mis en place permettant d'activer/désactiver une sélection d'extensions (chacun pouvant proposer, au moyen de la même interface, des extensions qui seront mises en ligne une fois vérifié qu'elles ne contiennent pas de code malveillant)[7].
À l’inverse de la solution multi-interfaces retenue par KDE par exemple, le GNOME Shell a été conçu avec l'objectif de fournir une interface graphique unique, qui soit adaptée tant aux écrans classiques des ordinateurs de bureau qu'aux écrans de taille réduite des netbooks.
Le GNOME Shell est fondé sur le gestionnaire de fenêtresMutter et est écrit en C et JavaScript. Il intègre le moteur JavaScript SpiderMonkey de la Fondation Mozilla. Cette intégration a créé une controverse[8], puisque cela implique que d'autres gestionnaires de fenêtres, tels que Compiz, ne pourront plus servir en remplacement[9].
Celui-ci est fourni avec un débogueur nommé Looking Glass[10].
Une interface classique semblable à celle de GNOME 2 utilisant la technologie de GNOME 3 est disponible (à ne pas confondre avec MATE un fork de GNOME 2).
L'accueil du shell de GNOME 3 fut très partagé. Par exemple, d'après Linus Torvalds en 2011[15]:
« Les développeurs ont apparemment décidé qu'il est en fait trop compliqué de travailler pour de bon sur le bureau et ont décidé de rendre cela vraiment fastidieux à faire. [...] C'est une merde de dingue. [...] J'ai demandé à d'autres développeurs ce qu'ils pensaient de gnome 3, ils pensent tous que c'est débile. »
Le rejet de GNOME 3 donne lieu à la création de nouveaux environnements de bureau offrant à l'utilisateur une interface WIMP : MATE (basé sur GNOME 2) et de Cinnamon (basé sur GNOME 3 au tout début. Conçu par l'équipe de Linux Mint)[16].
Depuis, beaucoup d'améliorations ont été apportées et Linus Torvalds utilise de nouveau (2019) l'environnement GNOME et son Shell[3].
Canonical Ltd avait développé son propre environnement de bureau nommé Unity pour son système d'exploitation Ubuntu, fourni par défaut jusqu'à la version 17.04 de Ubuntu, ensuite il a été remplacé par GNOME shell à nouveau[17].
Purism a développé l'interface Phosh qui adapte GNOME Shell au format smartphone [18].
↑« GNOME 40 est disponible avec la prise en charge de la boîte à outils GTK 4 et des modifications majeures dans Nautilus et des espaces de travail », Developpez.com, (lire en ligne, consulté le )