Как сохранить настройки GNOME в файле?

4

Я сохраняю мою конфигурацию в репозитории Git для восстановить его легко позже.

Недавно я наткнулся на вопрос , где необходимо изменить настройки GNOME с помощью команды gsettings .

Есть ли способ сохранить эти параметры в файле, который можно было бы символизировать или скопировать в предопределенном местоположении, ожидаемом GNOME? Я бы предпочел метод, когда мне не нужно писать скрипт для вызова gsettings .

    
задан Morgan Courbet 07.12.2017 в 21:45
источник

3 ответа

6

Настройки GNOME обычно хранятся через API GSettings, который является реализацией спецификации DConf. Это сохраняет настройки в двоичной базе данных, которые не должны быть заменены во время входа в систему.

Вместо этого параметры необходимо экспортировать, а затем снова загружать.

Вы можете использовать dconf dump / > dconf-settings.ini , чтобы сбросить настройки в INI-файл, а затем использовать cat dconf-settings.ini > dconf load / для загрузки этих параметров. Вы можете заменить / на определенный путь, чтобы ограничить сброс и загрузку настроек , Подробнее см. В man dconf .

Если вы хотите просто установить один ключ, а не целые пути, было бы лучше использовать gsettings для этого, с gsettings get и gsettings set в скрипте.

    
ответ дан dobey 07.12.2017 в 22:41
3

Здесь небольшая поправка для команд «Добей»:

Можно сохранить все настройки donf следующим образом:

dconf dump / > dconf-settings.ini

Но вы должны их восстановить так!

dconf load / < dconf-settings.ini
    
ответ дан jokx 27.08.2018 в 16:52
1

См. 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.

Если вам просто нужно установить настройки GNOME из файла без сценариев, это может быть самым простым способом, но для создания ключевого файла ему необходим доступ администратора.

Другой вариант - сохранить базу данных двоичного dconf, но это не является хорошим вариантом для использования с Git в качестве контроля версий. База данных обычно находится в $XDG_CONFIG_HOME/dconf (т. Е. ~/.config/dconf по умолчанию). См. Раздел PROFILES в man-странице.

В manpage также говорится:

   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.

Но не совсем ясно, как это сделать без скриптов.

    
ответ дан muru 08.12.2017 в 03:55