Je sauvegarde ma configuration dans un référentiel Git pour le restaurer facilement ultérieurement.
Récemment, je suis tombé sur un numéro nécessaire pour modifier les paramètres GNOME avec la commande gsettings
.
Existe-t-il un moyen de sauvegarder ces paramètres dans un fichier qui pourrait être lié de manière symbolique ou copié dans un emplacement prédéfini attendu par GNOME? Je préférerais une méthode pour laquelle je n'ai pas besoin d'écrire un script pour appeler gsettings
.
Les paramètres GNOME sont généralement stockés via l'API GSettings, qui est une implémentation de la spécification DConf. Cela stocke les paramètres dans une base de données binaire, qui ne doit pas être remplacée lors de la connexion.
Au lieu de cela, les paramètres doivent être exportés, puis chargés à nouveau.
Vous pouvez utiliser dconf dump / > dconf-settings.ini
pour vider les paramètres dans un fichier INI, puis utiliser cat dconf-settings.ini > dconf load /
pour les charger. Vous pouvez remplacer le /
par un chemin spécifique pour limiter les paramètres qui sont sauvegardés et chargés. Voir man dconf
pour plus de détails.
Si vous souhaitez simplement définir une clé unique, plutôt que des chemins entiers, il serait préférable d'utiliser gsettings
, avec gsettings get
et gsettings set
dans un script.
Voici une petite correction pour les commandes "Dobey":
Vous pouvez enregistrer tous les paramètres de donf comme ceci:
dconf dump / > dconf-settings.ini
Mais vous devez les restaurer comme ça! :
dconf load / < dconf-settings.ini
Voir man 7 dconf
:
KEY FILES
To facilitate system configuration with a text editor, dconf can
populate databases from plain text keyfiles. For any given system
database, keyfiles can be placed into the /etc/dconf/db/database.d/
directory. The keyfiles contain groups of settings as follows:
# Some useful default settings for our site
[system/proxy/http]
Host='172.16.0.1'
enabled=true
[org/gnome/desktop/background]
picture-uri='file:///usr/local/rupert-corp/company-wallpaper.jpeg'
After changing keyfiles, the database needs to be updated with the
dconf(1) tool.
Si vous avez juste besoin que GNOME récupère les paramètres d’un fichier sans script, ceci est peut-être la méthode la plus simple, mais il faut un accès administrateur pour créer le fichier de clé.
L'autre option consiste à enregistrer la base de données binaire dconf elle-même, mais ce n'est pas une bonne option pour une utilisation avec Git en tant que contrôle de version. La base de données est généralement située dans $XDG_CONFIG_HOME/dconf
(c.-à-d. ~/.config/dconf
par défaut). Voir la section sur PROFILES
dans la page de manuel.
La page de manuel dit aussi:
The binary database format that dconf uses by default is not suitable
for use on NFS, where mmap does not work well. To handle this common
use case, dconf can be configured to place its binary database in
XDG_RUNTIME_DIR (which is guaranteed to be local, but non-persistent)
and synchronize it with a plain text keyfile in the users home
directory.
Mais on ne sait pas exactement comment faire cela sans script.