Selon les tags présents sur cette page, celle-ci n'a pas été vérifiée pour une des versions LTS supportées d'Ubuntu.
Apportez votre aide…

Xfconf - Éditeur de paramètres

A l'instar de Gconf pour le bureau Gnome, Xfconf est le nouveau système pour la gestion des paramètres dans Xfce 4.6. Il vient ainsi remplacer le vieillissant MCS1).
Tandis que l'« Éditeur de paramètres » (xfce4-settings-editor) offre une interface graphique pour accéder à Xfconf, xfconf-query est son alter ego en mode console.

Présentation

Xfce utilisait l'outil de configuration système nommé MCS depuis la version 4.0, distribuée à la fin 2003. Ce dernier était très peu flexible et totalement monolithique.
Une seule application (xfce-mcs-manager) était alors autorisée à modifier les paramètres : toutes autres applications ne pouvaient que demander les valeurs des paramètres sans les modifier.
L'interface utilisateur pour la modification des paramètres était donc dépendante du processus xfce-mcs-manager. En plus de cela, ce dernier faisait office de gestionnaire XSETTINGS, en s'intercalant automatiquement pour stoker les paramètres dans un canal "spécifique".

Les objectifs des développeurs de Xfconf étaient donc les suivants :

  • garder le concept familier de canal2) issu de MCS, mais en rendant hiérarchique les noms de clés pour le stockage des paramètres.
  • le démon d'enregistrement des paramètres devait être capable de se lancer sans nécessiter de fenêtre.
  • séparer les paramètres de gestion XSETTINGS hors du démon.
  • intégrer la fonctionnalité du "mode kiosque" directement dans le mécanisme de sauvegarde des paramètres.
  • supporter les sections / structures dans le gestionnaire de configuration.
  • proposer une librairie qui permette un accès facile et qui offre les fonctionnalités les plus couramment utilisées.
  • aucune application cliente spécifique : toutes les applications doivent pouvoir lire et écrire les paramètres.

MCS imposait l'utilisation d'une interface graphique dépendante de X pour accéder aux paramètres.
De toute évidence, ce genre de chose n'est pas adapté à un système de configuration qui peut fonctionner sans interface graphique, ou même sur un système non-X11.
Compte tenu de son envol au cours des deux dernières années, D-Bus semblait donc être le mieux placé dans le cadre d'une communication inter-processus. Ainsi naquit l'interface D-Bus pour Xfconf.

Pour le reste, cela ressemble grandement à gconf. Nous disposons d'un démon (xfconfd) et d'une librairie cliente (libxfconf). Les applications utilisent la librairie cliente pour accéder et stoker les paramètres depuis xfconfd. Le démon stocke les paramètres sur disque dans le format de son choix, et gère l'interface D-Bus.
D-Bus permet de bénéficier de plusieurs fonctionnalités. Ainsi, Xfconfd est lancé lors de l'activation de D-Bus. Il n'est pas nécessaire de l'ajouter à un script de démarrage ou de le lancer depuis l'application cliente. D-Bus empêche également que deux instances de Xfconfd ne soient lancées.

Pré-requis

Pour bénéficier de xfconf vous devez disposer de la version 4.6.0 minimum de Xfce. C'est le cas pour Xubuntu Jaunty ou ultérieure.

Hiérarchie des paramètres

  • Les paramètres sont organisés sous forme de canaux qui détiennent chacun un nombre arbitraire de propriétés.
  • Le nom des canaux est une simple chaine de caractère (comme "xfwm4" ou "xfce4-desktop").
  • Les propriétés sont comme des noms d'emplacements hiérarchisés.
  • Les valeurs des propriétés peuvent être de différents types (booléen, nombre, chaine) mais également sous forme de tableau.

Configuration

Jusqu'à Xfce 4.4, il était possible d'utiliser le système « XfceKiosk » qui permettait de mettre en place une configuration pour définir si un paramètre pouvait ou non être modifié par certains utilisateurs.
Xfconf intègre également un système de "verrouillage". L'administrateur système peut ainsi installer un fichier de configuration pour xfconf avec des directives pour indiquer à xfconfd de verrouiller des paramètres. Ainsi, les applications n'ont pas à supporter la charge d'un outil de verrouillage spécifique, ceci est intégré dans la configuration du système.

Utilisation

Utilisation graphique

Pour lancer l'« Éditeur de paramètres », cliquez sur le menu Applications ⇒ Paramètres ⇒ Éditeur de paramètres ou dans un terminal, lancer la commande :

xfce4-settings-editor

La fenêtre suivante devrait apparaître :

La colonne de gauche vous permet de sélectionner le canal souhaité. Dans la partie droite apparait la liste des propriétés sous forme d'arbre, avec le type et la valeur de la propriété. Les boutons de la barre d'action vous permettent de :

  • créer une nouvelle propriété
  • modifier la propriété existante
  • réinitialiser la propriété à sa valeur par défaut ou supprimer une propriété ajoutée.

Utilisation en mode console

Dans un terminal, la commande offrant l'interface avec xfconf est xfconf-query.
Comme vous pouvez le deviner, il permet d'intéroger xfconf pour obtenir des paramètres depuis un terminal ou un script. En dépit de la parti "query" de son nom, il vous permet également de modifier et créer des paramètres.

  • Pour lister les canaux disponibles :
xfconf-query -l
  • Pour lister les propriétés disponibles dans un canal :
xfconf-query -c "nom_du_canal" -l
  • Pour afficher la valeur d'une propriété :
xfconf-query -c "nom_du_canal" -p "nom_de_la_propriété"

D'autres options permettent ensuite de modifier [-s] , créer [-n], donner un type [-t] ou réinitialiser [-r] une propriété donnée.

Exemple

Pour changer le papier peint du bureau

  • Avec %f le nom du fichier image à utiliser.
xfconf-query -v -c xfce4-desktop -p /backdrop/screen0/monitor0/image-path -s %f
  • Avec une liste d'image déjà définie :
Ce code est équivalent à la commande xfdesktop –reload qui ne fonctionne plus sous Xfce 4.6
  declare VALUE="$(xfconf-query -c xfce4-desktop -p /backdrop/screen0/monitor0/image-path)"  # Sauver la valeur actuelle
  xfconf-query -v -c xfce4-desktop -p /backdrop/screen0/monitor0/image-path -s ""            # Rémettre à blanc la valeur de la propriété
  xfconf-query -v -c xfce4-desktop -p /backdrop/screen0/monitor0/image-path -s "${VALUE}"    # Réalimenter la propriété avec la valeur sauvegardée


Pour ne plus afficher les options "Hibernation" et "Veille" dans la boite de déconnexion3).

xfconf-query -c xfce4-session -np '/shutdown/ShowSuspend' -t 'bool' -s 'false'
xfconf-query -c xfce4-session -np '/shutdown/ShowHibernate' -t 'bool' -s 'false'

Remarque : L'option -n permet de créer les propriétés qui n'existent pas initialement, et -t 'bool' permet de les définir en type booléen.

Désinstallation

Xfconf fait partie intégrante de Xfce 4.6 et ne peut être désinstallé sans casser le système :-)

Liens

1)
Multi-Channel Settings
2)
« channel » en anglais
3)
issu de ce topic