Petr Kovar
pknbe@volny.cz 2014
Empêcher l’utilisateur d’activer ou désactiver les extensions du Shell de GNOME.
Thibault Leclair
thibaultleclair@yahoo.com 2021
Mathieu Bousquet
mathieu.bousquet2@gmail.com 2022
Guillaume Bernard
associations@guillaume-bernard.fr 2023
Irénée Thirion
irenee.thirion@e.email 2023-2024

# Verrouiller les extensions activées

Dans le Shell de GNOME, vous pouvez empêcher l’utilisateur d’activer ou désactiver des extensions en verrouillant les clés `org.gnome.shell.enabled-extensions` et `org.gnome.shell.development-tools`. Cela vous permet de fournir un ensemble d’extensions que l’utilisateur doit utiliser.

Le verrouillage de la clé `org.gnome.shell.development-tools` vous assure que l’utilisateur ne peut utiliser l’outil de débogage et d’inspection intégré au Shell de GNOME (boîte de dialogue d’inspection) pour désactiver les extensions obligatoires.

# Verrouiller les clés org.gnome.shell.enabled-extensions et org.gnome.shell.development-tools

Créez un profil `user` dans /etc/dconf/profile/user :

user-db:user system-db:local

Créez une base de données `local` pour paramétrer à l’échelle système dans /etc/dconf/db/local.d/00-extensions :

[org/gnome/shell] # Ajouter toutes les extensions que vous souhaitez activer pour tous les utilisateurs enabled-extensions=['monextension1@monnom.exemple.com', 'monextension2@monnom.exemple.com'] # Désactiver l'accès à la boîte de dialogue d’inspection development-tools=false

La clé `enabled-extensions` spécifie les extensions activées à l’aide de l’uuid des extensions (`extension1@nom.exemple.com` et `extension2@nom.exemple.com`).

La clé `development-tools` est définie sur false pour désactiver l’accès à la boîte de dialogue d’inspection.

Remplacez le paramètre de l’utilisateur et empêchez sa modification dans /etc/dconf/db/local.d/locks/extensions :

# Verrouiller la liste des extensions activées /org/gnome/shell/enabled-extensions /org/gnome/shell/disabled-extensions /org/gnome/shell/development-tools

Après avoir verrouillé les clés `org.gnome.shell.enabled-extensions` et `org.gnome.shell.development-tools`, toute extension installée dans ~/.local/share/gnome-shell/extensions ou /usr/share/gnome-shell/extensions et non répertoriée dans la clé `org.gnome.shell.enabled-extensions` ne sera pas chargée par le Shell de GNOME, empêchant ainsi son utilisation.