web-dev-qa-db-fra.com

Comment puis-je écrire les paramètres définis par gnome-Tweak-tool?

J'aime pouvoir configurer des éléments à partir de la ligne de commande, de sorte que, lorsque je réinstalle le système d'exploitation, je puisse simplement exécuter un script et récupérer ma configuration préférée.

Depuis la "mise à niveau" vers Ubuntu 17.10, j'ai découvert que je devais utiliser gnome-Tweak-tool pour obtenir certains paramètres comme je le voulais.

Une fois que je trouve un paramètre dans l'interface graphique de gnome-Tweak-tool, comment puis-je comprendre sa traduction scriptable?

Par exemple, les lignes gsettings suivantes correspondent aux entrées correspondantes de la capture d'écran gnome-Tweak-tool ci-dessous ...

gsettings set org.gnome.desktop.wm.preferences titlebar-font "Tahoma Bold 8"
gsettings set org.gnome.desktop.interface font-name "Tahoma 8"
gsettings set org.gnome.desktop.interface document-font-name "Tahoma 8"
gsettings set org.gnome.desktop.interface monospace-font-name "FixedSC 10"

screen shot from gnome-Tweak-tool ... mais comment peut-on deviner ça? Et comment pourrais-je, par exemple, trouver où obtenir les paramètres correspondants pour l'indication et l'anticrénelage?

12
st01

Trouvez facilement ce qui est défini

Au lieu de chercher dans tout un répertoire d'options:

  1. Ouvrir une fenêtre de terminal
  2. Exécutez la commande:

    dconf watch /
    
  3. Effectuez vos modifications et voyez ce que le terminal affiche:

    enter image description here

    ... et vous voilà.

Dconf & gsettings

Dans l'exemple, vous voyez la sortie de dconfname__. Gsettings est le point central de dconf. Plusieurs fois, vous pouvez utiliser une commande dconfou gsettingsname__. Dans ce cas soit:

dconf write /org/gnome/desktop/background/show-desktop-icons false

ou:

gsettings set org.gnome.desktop.background show-desktop-icons false

Si la clé gsettings existe cependant, cette dernière est considérée comme une meilleure pratique, afin de protéger l'intégrité de votre base de données dconfname__.

Voir aussi ici et ici .

19
Jacob Vlijm

Pour la plupart des paramètres, vous pouvez utiliser l'approche this :

  • Exportez la liste de gsettings dans un fichier temporaire:

    gsettings list-recursively > /tmp/gsettings.before
    
  • Apportez vos modifications par gnome-Tweak-tool (ou unity-control-center);

  • Exportez la liste de gsettings dans un autre fichier temporaire:

    gsettings list-recursively > /tmp/gsettings.after
    
  • Comparez les deux fichiers (. Before et after after ) et obtenez les différences:

    diff /tmp/gsettings.before /tmp/gsettings.after | grep '[>|<]'
    

    Ou comparez et obtenez uniquement les nouvelles valeurs ( source ):

    diff /tmp/gsettings.before /tmp/gsettings.after | grep -Po '> \K.*'
    

    Ou comparez et obtenez uniquement les nouvelles valeurs, mais remplacez le début des lignes par gsettings set pour préparer une liste de commandes, qui seront stockées directement dans votre fichier de script ( source ):

    diff /tmp/gsettings.before /tmp/gsettings.after | sed 's/>/gsettings set/;tx;d;:x'
    

Vous pouvez exécuter toutes ces commandes à partir d'une ligne (ou vous pouvez créer un script pour automatiser le processus):

gsettings list-recursively > /tmp/gsettings.before; gnome-Tweak-tool; gsettings list-recursively > /tmp/gsettings.after; diff /tmp/gsettings.before /tmp/gsettings.after | grep '[>|<]'

La prochaine démo est créée dans Ubuntu 16.04. Je pense que l'approche doit également fonctionner dans 17.10:

enter image description here


Mise à jour: Je viens de trouver un moyen simple dans Ubuntu 17.10:

enter image description here

8
pa4080