web-dev-qa-db-fra.com

Sérieusement, dconf, gconf, gsettings ... Comment enregistrer mes paramètres de terminal?

J'essaie de faire quelque chose de relativement simple que la plupart d'entre nous ont voulu faire à une fois ou une autre: enregistrer mes paramètres gnoméennes.

Je cours 14.04 (bureau de bureau). Je me suis rendu compte de mes recherches que DCONF, GCONF et GSettings ont terminé au cours de la dernière version de la version Bosses, ont été désignés pour stocker les paramètres de différents aspects de Gnome/Unity.

Si je pose toutes les questions que j'ai sur ces outils. Il serait en colère contre le contrôle, et je ne veux pas apprendre les internes de 3 outils (8 si vous comptez GClfTool, GClfoTool-2, GConfd-2, DConf-Service, DConf-Ibus et la base de données DCONF comme outils individuels )

Mon nouvel objectif est de consolider tous les paramètres dans GSettings, car il contient les paramètres les plus existants.

Cela a-t-il été fait?

J'ai déterminé que je peux désinscrire des schémas gconf.

J'ai déterminé que GSettings fonctionne sur la base de données DCONF avec une interface beaucoup plus amicale (c'est-à-dire l'achèvement de l'onglet la plus fin que quiconque puisse demander dans un outil de ligne de commande.)

S'il y aurait des mises en garde majeures, de côté à partir de l'investissement temporel, de déplacer la configuration de Gconf vers DConf et de créer des schémas gsettings pour ces paramètres ... de sorte que je puisse facilement enregistrer mes paramètres de gnome-terminal et toute autre préférence de l'interface utilisateur souhaite ajuster cela monte?

[Éditer:]

Grâce au commentaire de @Rinzwind ci-dessous, j'ai décidé d'ignorer GConf et de trouver les paramètres de Gnome-Terminal. Cependant, il comporte seulement 2 clés, exec-arg, et exec.

Où puis-je trouver une liste de toutes les clés que je peux ajouter?

4
blanket_cat

C'est une ancienne question mais clairement toujours pertinente.

Basé sur ce poste utile , voici comment sauvegarder/restaurer vos paramètres de terminal GNOME; Ceci peut être utilisé par exemple lors de la migration d'un ordinateur à un autre.

* S'il vous plaît être conseillé * : Ceci écrasera le profil de terminal par défaut sur la nouvelle machine!

  1. Assurez-vous que vous utilisez le même nom de profil sur les deux machines en le renommant sous "Profils" dans la boîte de dialogue Préférences et activez-la si nécessaire (cliquez sur le menu déroulant et sélectionnez "Définir par défaut")
  2. Sur la machine source exécutez ce petit script:

    gprofile=$(gsettings get org.gnome.Terminal.ProfilesList default)
    gprofile=${gprofile:1:-1}
    gschema=org.gnome.Terminal.Legacy.Profile
    gpath=/org/gnome/terminal/legacy/profiles:/:${gprofile}/
    gsettings list-recursively ${gschema}:${gpath} > /tmp/term_profile.gsettings
    
  3. Examinez le fichier de sauvegarde du profil (/tmp/term_profile.gsettings) Pour m'assurer qu'il a l'air sensible. Il pourrait être utile de supprimer tous les paramètres indésirables que vous ne souhaitez pas utiliser.

  4. Copiez le fichier de sauvegarde sur le nouvel ordinateur, par exemple:

    scp /tmp/term_profile.gsettings new-Host:/tmp
    
  5. Organisez maintenant le petit script suivant sur le nouvel ordinateur; Nous allons commencer par une course à sec pour avoir une chance de repérer les éléments inattendus:

    gprofile=$(gsettings get org.gnome.Terminal.ProfilesList default)
    gprofile=${gprofile:1:-1}
    gschema=org.gnome.Terminal.Legacy.Profile
    gpath=/org/gnome/terminal/legacy/profiles:/:${gprofile}/        
    cut -f2- -d' ' /tmp/term_profile.gsettings | while read line; do
       key=$(echo $line | cut -f1 -d' ')
       value=$(echo $line | cut -f2- -d' ')
       echo "$key => $value"
       # commented out for dry-run:
       # gsettings set ${gschema}:${gpath} $key "$value"
    done
    
  6. En supposant que la sortie semble bonne, répétez le script ci-dessus mais non-commentaire le gsettings set ligne. Vos changements (par exemple: la lampe de palette) doivent s'appliquer immédiatement à votre terminal d'exécution.

Testé de 19h10 mais devrait également travailler sur certaines versions plus anciennes (et éventuellement plus récentes).

Notez que cela ne prend en charge que les préférences trouvées sous "profil"; En supposant que les clés pertinentes gsettings puissent être découvertes, la technique devrait également fonctionner pour les sauvegarder/les restaurer.

0
sxc731