Gconf, Dconf, Gsettings и отношения между ними

Я пытаюсь понять, как работают Gconf, Dconf и Gsettings и каковы отношения между ними.

Все, что я знаю, это:

  • Gconf - база данных на основе XML (бэкэнд-система). Старший.
  • Dconf - база данных на основе BLOB (бэкэнд-система). Более новый.
  • Gsettings - инструмент CLI для редактирования настроек. Похоже, он работает только с Dconf (хотя я где-то видел, что он может работать с Gconf).

Я знаю, что для Gconf есть GUI - Gconf-редактор, а для Dconf - Dconf-редактор.

Итак:

  1. Какая бэкэнд-система используется чаще - Dconf или Gconf?
  2. Gsettings работает с ними обоими? И почему он не показывает все схемы Dconf?
  3. Где Dconf сохраняет свои данные?
65
задан 6 May 2014 в 18:05

2 ответа

Dconf - это хранилище данных, предназначенное для хранения конфигурации. Это замена для Gconf , который использовался для той же цели. В конце концов, никакие программы больше не должны зависеть от Gconf.

Gsettings - это библиотека разработки, используемая для чтения и записи в серверную часть хранилища конфигурации. В Linux он использует Dconf, но в Windows он использует реестр, а в OS X он использует собственное хранилище данных.

Разработчикам приложений и конечным пользователям рекомендуется использовать Gsettings, а не Dconf напрямую.

См. Также:

0
ответ дан 6 May 2014 в 18:05

GConf устарел. Это более старый API и система конфигурации GNOME 2.x, и в новых версиях его заменили DConf / GSettings. Тем не менее, некоторые приложения все еще используют его.

GSettings является реализацией GLib DConf, которая хранит свои данные в двоичной базе данных.

Инструмент командной строки gsettings - это просто инструмент для доступа или изменения настроек через API GSettings, точно так же, как более старый инструмент командной строки gconftool для GConf.

0
ответ дан 6 May 2014 в 18:05

Другие вопросы по тегам:

Похожие вопросы: