Ceci est une ancienne révision du document !
GNOME Shell
GNOME Shell est l'interface (shell) par défaut conçue pour l'environnement de bureau GNOME 3. Il est pré-installé sur la variante Ubuntu GNOME.
GNOME Shell a pour but de fournir les fonctions centrales d'interface entre l'ordinateur et l'utilisateur, comme le chargement d'applications et la gestion des fenêtres. GNOME Shell prend avantage des dernières avancées technologiques des nouvelles cartes graphiques modernes et introduit des concepts d'interface utilisateur novateurs afin de produire une expérience simple et plaisante.
Même si GNOME Shell n'est pas l'interface par défaut d'Ubuntu1), il est assez proche dans l'esprit d'Unity qui est construit sur GNOME 3 (mode exposition/dash, barre de lanceurs sur la gauche…), et il est possible de le tester, de l'installer… et de l'adopter !
Il est possible de voir une description plus complète de l'interface en anglais sur le site officiel.
Pré-requis
- Disposer des droits d'administration.
- Disposer d'une connexion à Internet configurée et activée.
- Avoir activé l'accélération graphique.
Installation
Si vous souhaitez bénéficier d'une installation propre et complète ou plus simplement essayer Ubuntu avec GNOME Shell dans un environnement Live (CD, USB…), allez voir du côté de Ubuntu-GNOME
Ubuntu 14.04 et suivants
Installez le paquet gnome-shell (on peut conserver le gestionnaire de session LightDM) :
sudo apt-get update sudo apt-get install gnome-shell
Vous pouvez ensuite (et c'est recommandé pour retrouver toutes ses fonctions habituelles) compléter votre installation avec les extensions pour GNOME Shell.
Utilisation
Interface de base
Par défaut, GNOME Shell se veut minimaliste et épuré : le seul élément visible de l'interface est la barre supérieure (topbar).
De droite à gauche, on y trouve :
- Le menu système : gérer le son, la luminosité, le micro, la connexion internet, le bluetooth, la batterie, la session (quitter la session, verrouiller, éteindre, redémarrer, etc.) et un accès aux paramètres système essentiels.
- Au centre, l'horloge : cliquer dessus donne accès au calendrier, aux notifications (depuis Ubuntu 15.10) et aux commandes multimédia (lecture/pause/suivant/précédent ; depuis Ubuntu 17.04)
- Le menu de l'application (AppMenu). Pour la plupart des applications du projet Gnome, ce menu contient au moins Raccourcis Claviers, Aide, À propos, Quitter. Il peut aussi contenir les préférences globales de l'application. Pour les applications mal intégrées au projet GNOME, seul Quitter sera proposé.
- Tout à gauche, la vue des activités : en cliquant sur Activités, ou en "cognant" la souris dans ce coin de l'écran, on ouvre la vue des activités :
Dans la vue activités, on distingue :
- En haut, une entrée de recherche. Dès que la vue activités s'ouvre, ce que l'on tape au clavier va dans cette entrée et est recherché.
- Au centre, les fenêtres ouvertes, accessibles ou fermables en un clic.
- À droite, les espaces de travail ("bureaux virtuels"). Il suffit d'utiliser la molette de la souris dans la vue activités pour passer d'un espace à l'autre.
- À gauche, le "dash" où sont épinglés les programmes favoris
- En bas du dash, le bouton d'accès à la vue des applications :
Raccourcis claviers
- Alt+F1 ou Super (la touche avec le logo Windows…) : Ouvrir la vue activités (ou retourner à la fenêtre en cours si on y est déjà).
- Alt+F2: saisir une commande (fonction exécuter).
- Alt+Tab: passer d'une fenêtre à une autre.
- Alt+Shift+Tab: idem, mais dans l'autre sens.
- Alt+²: idem mais entre les fenêtre d'une même application.
- Ctrl+Shift+Alt+R: commencer ou finir un enregistrement d'écran.
- Ctrl+Alt+D (sur 12.04 : Ctrl+Super+D) (sur 14.04 : Super+D) (sur 16.04 : Ctrl+Super+D) : montrer le bureau
- Ctrl+Alt+flèche haut/bas: passer d'un espace de travail à l'autre.
- Ctrl+Alt+Shift+flèche haut/bas : déplacer la fenêtre active d'un espace de travail à l'autre.
- Ctrl+Super+flèche gauche/droite/haut/bas: dimensionner et placer la fenêtre (demi-écran / maximisée / retour)
- Super+M : Afficher la zone de notification.
- Super+A : Afficher la vue des applications
Configuration avec l'Outil de Personnalisation Gnome
L'Outil de Personnalisation Gnome (gnome-tweak-tool) est l'utilitaire graphique le plus avancé pour vous permettre de configurer GNOME Shell. Pour l'installer gnome-tweak-tool (il est normalement installé par défaut sur Ubuntu Gnome).
Cherchez ensuite le programme ("tweak tool" ou "outil de personnalisation") pour y accéder.
Passer les boutons de contrôle des fenêtres de droite à gauche
Le bouton "fermer" est présent par défaut, et Gnome Tweak-Tool permet de définir (onglet "Fenêtres") si on affiche les 3 boutons (minimiser, agrandir), ou seulement certains.
Par contre, il ne permet pas de les passer de droite à gauche. Pour cela, dans dconf-editor, il faut aller dans org > gnome > desktop > wm > preferences > button-layout, et mettre par exemple "close,minimize,maximize:appmenu", où ":" est le corps de la barre de titre (les boutons se placent donc par rapport à lui). Ici, "appmenu" désigne le menu qui s'affiche normalement dans la barre supérieure, mais dconf propose un réglage pour que ce menu s'affiche dans la barre de fenêtre, il est donc préférable qu'une position soit renseignée pour cet élément.
La commande suivante est équivalente :
gsettings set org.gnome.desktop.wm.preferences button-layout "close,minimize,maximize:appmenu"
Quelques commandes de configuration de Gnome Shell
Voici une liste de commandes pour personnaliser un peu l'affichage de Gnome Shell. Ces dernières utilisent GSettings, le système qui remplace l'ancien Gconf.
Afficher la date du jour dans la barre en haut de l'écran :
gsettings set org.gnome.shell.clock show-date true
Retirer l'affichage de la date du jour :
gsettings set org.gnome.shell.clock show-date false
Afficher les secondes dans l'horloge de la barre en haut de l'écran :
gsettings set org.gnome.shell.clock show-seconds true
Pour retirer l'affichage des secondes dans l'horloge :
gsettings set org.gnome.shell.clock show-seconds false
Pour afficher les chemins de répertoire en mode texte dans Nautilus :
gsettings set org.gnome.nautilus.preferences always-use-location-entry true
Pour cacher l'affichage des chemins de répertoire en mode texte dans Nautilus :
gsettings set org.gnome.nautilus.preferences always-use-location-entry false
Pour restaurer les boutons de réduction et d'agrandissement des fenêtres :
Pour des raisons esthétiques et ergonomiques, les développeurs de Gnome Shell suggèrent d'agrandir les fenêtres par "drag and drop" contre la barre supérieure, et n'ont laissé que le bouton de fermeture. Mais il est toujours possible de les restaurer, soit avec Gnome Tweak Tool, soit avec ces commandes :
gconftool-2 -s -t string /desktop/gnome/shell/windows/button_layout ":minimize,maximize,close"
gconftool-2 -s -t string /desktop/gnome/shell/windows/button_layout "menu:minimize,maximize,close"
Ajouter/modifier les moteurs de recherche web du shell
Les recherches web sont définies par des fichiers XML situés dans le dossier : /usr/share/gnome-shell/open-search-providers/
.
Par défaut deux moteurs sont disponibles : Wikipedia et Google.
Méthode pour remplacer Google par DuckDuckGo
1. Suivre les instructions données sur le site de DuckDuckGo.
2. Pour obtenir les résultats de recherche en français, éditer le fichier duckdg.xml (nécessite droits administrateur)
Ajouter à la chaîne de recherche &kl=fr-fr (pour la France) :
template="https://duckduckgo.com/?q={searchTerms}"
devient alors
template="https://duckduckgo.com/?q={searchTerms}&kl=fr-fr"
Extensions
GNOME Shell peut être complété avec des extensions bien utiles écrites en JavaScript. Ces extensions vous permettent d'ajouter/supprimer/modifier des fonctionnalités de l'interface : barre de tâches, dock, gestionnaire de presse-papiers, menus pour les emplacements favoris ou les applications, etc.
Si vous envisagez de faire de GNOME Shell votre environnement principal, alors il est plus que recommandé d'y jeter un coup d’œil.
Installer des extensions
La SEULE méthode d'installation recommandée par les développeurs de Gnome Shell est d'utiliser le site officiel extensions.gnome.org : un vaste catalogue d'extension y est disponible (ci-contre), vous pouvez également y constater quelles sont les extensions les plus populaires.
Grâce à de petits interrupteurs, on peut installer, mettre à jour, activer ou désactiver les extensions proposées directement depuis le site (compatible avec les navigateurs Epiphany (Gnome Web), Firefox, et aussi Chromium/Vivaldi/Chrome si ils disposent de l'extension pour navigateur appropriée).
Le but du site officiel extensions.gnome.org est de proposer des extensions dont le code a été lu et compris par des responsables liés à la fondation GNOME : les extensions proposées présentent donc rarement des bugs majeurs, et sont normalement dignes de confiance.
Le paquet des extensions officielles
L'équipe GNOME propose une quinzaine d'extensions réunies dans un seul paquet depuis Gnome 3.4 (donc depuis Ubuntu 11.04). Ces extensions sont normalement installées par défaut avec GNOME Shell, et visible dans l'onglet "Extensions" de l'Outil de Personnalisation Gnome.
sudo apt-get install gnome-shell-extensions
Voici une brève description de ces extensions officielles :
- Alternate tab propose un fonctionnement différent pour l'ALT+TAB où les fenêtres ne sont pas regroupées par application
- Alternative status menu fait apparaître les items "hiberner" et "éteindre" dans le menu utilisateur (n'est plus disponible pour les versions récentes)
- Applications menu ajoute un menu "classique" (comme sur Cinnamon, Xfce ou Budgie) dans le panneau principal
- Auto move window permet de choisir pour chaque application dans quel bureau virtuel ses fenêtres s'ouvriront
- Gajim IM integration intègre Gajim (messager instantané) à l'interface (n'est plus disponible pour les versions récentes)
- Native window placement propose un affichage moins monotone des fenêtres dans le mode exposition
- Place status indicator ajoute à la zone de notification un raccourci vers les signets de Nautilus (Documents, Musique, etc.)
- Removable drive menu ajoute un raccourci à la zone de notification permettant d'accéder aux médias amovibles, s'il y en a de branchés
- Screenshot window sizer ctrl+alt+s redimensionne les fenêtres en format 16:9 pour qu'on puisse prendre de jolis screenshots
- System monitor ajoute dans la barre de notification (en bas) un graphique indiquant la consommation mémoire et processeur
- User theme permet de charger les thèmes du répertoire ~/.themes
- Workspace indicator ajoute dans la zone de notification un indicateur du bureau virtuel en cours et la possibilité d'atteindre un autre bureau
- Window navigator permet de naviguer au clavier dans le mode exposition entre les différentes fenêtres (ALT) ou les différents bureaux (CTRL)
Installation manuelle des extensions et fonctionnement de base de leur code source
Les extensions de l'utilisateur sont stockées dans ~/.local/share/gnome-shell/extensions/
Il est possible d'y installer des extensions depuis le code source trouvé sur un dépôt github, de modifier une extension existante, ou pourquoi pas d'y contribuer ou d'en coder soi-même
Chaque extension possède un dossier qui lui est propre et qui répond à des conventions de nommage spécifiques (les identifiants des extensions ressemblent à des adresses email par exemple). Les dossiers contiennent forcément au moins :
- metadata.json Ce fichier décrit l'extension (son nom, son identifiant, la description qui apparaît dans Gnome Tweak Tool, là où ses éventuels paramètres sont accessibles dans dconf, etc.) et surtout les versions de Gnome Shell théoriquement compatibles avec l'extension.
- extension.js Ce fichier contient le code de l'extension : une fonction init(), une fonction enable() et une fonction disable() y sont forcément présentes.
Le code de chaque fichier extension.js est chargé en mémoire et interprété par GNOME Shell à chaque démarrage de session (la fonction enable sera exécutée si l'extension est active, init est exécutée même si l'extension est inactive). En cas de bug sur certaines extensions mal testées par le développeur ou par les reviewers de extensions.gnome.org, il est parfois nécessaire de redémarrer le shell (dans l'invite de commande alt+f2, tapez "r" et confirmez).
La plupart des extensions possèdent également :
- un dossier "locale" où se trouvent les traductions ;
- un dossier "schemas" où se trouvent les préférences dans un format compris par dconf (avec un peu de débrouillardise, vous pouvez donc paramétrer certaines extensions avec la commande gsettings !) ;
- prefs.js qui contient la fenêtre de préférences accessible depuis Gnome Tweak Tool ;
- un fichier .css pour gérer l'apparence des composants de l'extension (polices, couleurs, tailles, etc.)
Petite sélection arbitraire d'extensions
Près de 140 extensions disponibles ce jour (12 juin 2012) pour Gnome Shell en version 3.4 (environ 200 toutes versions confondues) : il est parfois dur de s'y retrouver. Aussi je vous propose un petit florilège de celles qui me paraissent les plus intéressantes, que vous pouvez bien sûr compléter. Si l'extension est disponible sur le site Gnome, un lien y mène, si l'extension est officielle, vous voudrez bien vous référer au paragraphe en question pour sa description, si l'extension n'est disponible que dans le dépôt Webupd8, voir aussi ce paragraphe pour que votre système puisse accéder à ce dépôt.
Extensions qui me semblent indispensables
- Classic Systray (dépôt Webupd8)
Place les icônes des applications ayant une icône dans la zone de notification dans la zone de notification du haut plutôt que dans la barre de notification du bas. Un bug d'affichage fait que cette extension est indiquée inactive (dans Gnome Tweak Tool ou sur le site Gnome) même quand elle est activée mais cela ne gène pas son fonctionnement. - Dash Click Fix
Modifie le comportement du lancement des applications dont vous avez déjà une fenêtre ouverte dans le mode 'exposition'. Au lieu de donner le focus à cette fenêtre ouverte, un clic sur l'application ouvre une nouvelle fenêtre. - Dash to Dock
Fixe le lanceur sur la gauche de l'écran de façon permanente, à la manière d'Unity, ou en bas, à la manière de MacOs. - Desktop Scroller (Left and Overview version ou Original)
La première permet de naviguer entre les bureaux virtuels en plaçant sa souris sur le bord gauche de l'écran et en utilisant la molette de la souris, y compris en mode 'exposition' tandis que la seconde permet de naviguer entre les bureaux virtuels en plaçant sa souris sur le bord droit de l'écran et en utilisant la molette de la souris. - Enhance overview
Permet de n'afficher que les fenêtres d'une application dans le mode 'exposition'. Cette extension n'est pas encore tout à fait compatible avec Native Window Placement mais cela devrait être corrigé. - Places Status Indicator (extension officielle) ou Extended Places Menu (dépôt Webupd8)
La seconde fait beaucoup mieux que l'extension officielle car elle présente de nombreux réglages comme l'accès à votre logiciel FTP préféré, l'ouverture possible du système de fichiers en mode administrateur, la position du menu, l'affichage développé ou non de vos signets, etc. mais je n'ai pas réussi à la faire fonctionner sous Gnome 3.4. - Quicklists et Jump List
Ajoute des entrées contextuelles au clic droit sur les icônes du lanceur et du dock, à la manière du lanceur d'Unity pour la première, si les applications en question fournissent ces Quicklists. La seconde ajoute des choix à ce menu contextuel basé sur Zeitgeist (documents récents, sites visités récemment, etc.). Les deux ensembles cela fait un menu contextuel un peu chargé, mais c'est à vous de voir. - Recent Items
Affiche un applet permettant d'accéder aux documents ouverts récemment. - Removable Drive Menu(extension officielle)
Indispensable si comme moi vous avez réglé le système pour qu'il ne fasse rien par défaut, et surtout pour qu'il n'ouvre pas à la fois Nautilus ET un pop-up quand un média amovible est inséré (voir ici l'astuce). - Remove Accessibility
Enlève le menu 'accessibilité' du panneau principal. - Remove Recent Item
Permet d'effacer certains fichiers récent de la recherche dans le tableau de bord. - SettingsCenter
Ajoute au menu 'utilisateur' un sous-menu permettant de lancer les différentes applications avancées pour régler les paramètres de Gnome (Gnome Tweak Tool, dconf-editor, gconf-editor, gnome-session-properties, gnome-shell-extension-prefs, seahorse et nvidia-settings). - Steal My Focus
Supprime les notifications du type “votre application est prête” et donne automatiquement le focus à la nouvelle fenêtre ouverte. - WinThumbnails
Ajoute à l'interface un dock affichant des miniatures des fenêtres ouvertes, ce qui peut éviter de passer par le mode 'exposition' pour y accéder. De nombreux réglages sont disponibles : affichage à droite ou à gauche de l'écran, masquage automatique ou non, taille des miniatures, n'afficher que les fenêtres minimisées ou non. - WindowOverlay Icons ou Overlay Icons
Affiche dans le mode 'exposition' l'icône de chaque application en surimpression sur chaque fenêtre de façon à les reconnaître plus facilement. Malheureusement ces deux extensions bugguent en version 3.4 : la première ne fonctionne pas au démarrage ou à chaque rechargement de l'interface (il faut la désactiver et la réactiver) et la seconde fait freezer, chez moi, le mode exposition (avec redémarrage forcé du système à l'aide du bouton stop)
Extensions intéressantes
- Battery remaining time and percentage
Permet de régler ce qui s'affiche avec l'icône d'alimentation : temps restant, pourcentage restant, affichage ou non quand la batterie est pleine, etc. - Impatience
Accélère (ou freine) les animations de l'interface. Le coefficient d'accélération est réglable. - Journal
Ajoute un onglet au mode 'exposition' vous permettant d'accéder à diverses informations chronologiques sur vos fichiers et répertoires. Le paquet Zeitgeist doit être installé. - No Messagetray Text
Enlève le texte près des icônes de la zone de notification du bas. - Nothing To Do
Supprime le calendrier du menu 'horloge' (pour ceux qui comme moi ne s'en servent jamais). - Weather (Météo)
Ajoute la météo (prévision sur deux jours) dans le panneau principal, avec la possibilité de configurer plusieurs villes très facilement - Media Player Indicator
Permet d'avoir un indicateur en haut à droite permettant de contrôler les lecteurs multimédia compatible MPRIS.
Problèmes connus
.
Perte de la barre de menu dans Firefox
Si vous passez d'Unity à GNOME Shell vous pouvez avoir des problèmes avec la barre de menu de Firefox. Désactiver l'extension "Global Menu Bar Integration" permet généralement de faire rentrer les choses dans l'ordre. Sinon, désinstallez le paquet firefox-globalmenu.
Saccades et manque de fluidité les derniers pilotes ATI Catalyst 12.1
Les derniers pilotes ATI/AMD 12.1 sont beaucoup plus stables que les précédents, ils résolvent les bugs d'affichage qui pouvaient être présents. Mais un nouveau problème d'affichage concernant la fluidité peut apparaître, même avec une carte graphique très puissante. (On a l'impression qu'il n'y a que 15 images par seconde à l'écran.)
Il faut faire une modification du fichier: /etc/environment (fonctionne également avec d'autres distributions comme Linux Mint, etc…)
sudo gedit /etc/environment
et ajouter cette ligne en début de fichier:
export CLUTTER_VBLANK=none
Sauvegarder et redémarrer le système. Après cela vous devriez énormément gagner en fluidité.
Saccades et problèmes de synchronisation verticale sous NVIDIA
Il peut y avoir certains soucis de synchronisation verticale. Sous VLC, Totem… ex:http://i.stack.imgur.com/qIXX3.jpg
- Aller dans l'outil de configuration de compiz ccsm:
- Dans les paramètres de composition, désactiver la détection automatique de fréquence et définissez la valeur manuellement
- Dans les paramètres d'OpenGL, définir les filtres de texture en qualité maximum
- Et activer Sync vers Vblank
- Dans les paramètres Nvidia:
- Dans l'onglet OpenGL: activer Sync vers Vblank
- Et définir les paramètres de qualité au maximum
- Dans l'onglet de configuration de l'écran (X Server Display Configuration) définir la résolution et la fréquence manuellement
- En super utilisateur rajoutez les deux lignes suivantes à la fin du fichier /etc/environment
- CLUTTER_PAINT=disable-clipped-redraws:disable-culling
- CLUTTER_VBLANK=True
- Ou en ligne de code:
sudo -s echo CLUTTER_PAINT=disable-clipped-redraws:disable-culling >> /etc/environment echo CLUTTER_VBLANK=True >> /etc/environment
- Redemarrez
Voir aussi
- (fr) Le merveilleux site du Major Grubert du forum Ubuntu-fr sur GNOME Shell (et autres) Pas mis à jour depuis 2014.
- (fr) Le site de la vache libre (qui traite aussi d'autres sujets)
- (en) World of GNOME, le site de références pour toutes les actualités liées à GNOME Shell
- http://forum.ubuntu-fr.org/viewtopic.php?pid=4109101#p4109101 (relatif à la désinstallation)
- (en) http://www.webupd8.org/2011/10/things-to-tweak-after-installing-ubuntu.html (relatif à la 11.10)
- (en) Guide pour Gnome Classic (relatif à la 11.10)
- (fr) Le wiki d'Hybryde
- (fr) Installation de Gnome 3.8 sous Ubuntu 13.04.
Contributeurs : bsaleil, Isayama (pour Ubuntu GNOME Remix et la partie sur Ubuntu 12.10),