Gconf, Dconf, Gsettings e a relação entre eles

56

Estou tentando entender como o Gconf, o Dconf e o Gsettings funcionam e qual a relação entre eles.

Tudo o que sei é:

  • Gconf - banco de dados baseado em XML (sistema backend). O mais antigo.
  • Dconf - Banco de dados baseado em BLOB (sistema backend). O mais novo.
  • Gsettings - Ferramenta CLI para editar configurações. Parece que funciona apenas com o Dconf (apesar de ter visto em algum lugar que poderia funcionar com o Gconf).

Eu sei que para o Gconf existe uma GUI - Gconf-editor, e para o Dconf - Dconf-editor.

Então:

  1. Qual sistema de backend é mais usado - Dconf ou Gconf?
  2. Gsettings trabalha com os dois? E por que não mostra todos os esquemas do Dconf?
  3. Onde o Dconf salva seus dados?
por idgar 31.01.2013 / 17:11

2 respostas

31

O GConf é obsoleto. É a API e o sistema de configuração do GNOME 2.x mais antigos e foi substituída pelo DConf / GSettings em versões mais recentes. No entanto, alguns aplicativos ainda o usam.

GSettings é uma implementação GLib do DConf, que armazena seus dados em um banco de dados binário.

A ferramenta de linha de comando gsettings é simplesmente uma ferramenta para acessar ou modificar configurações através da API GSettings, da mesma forma que a antiga ferramenta de linha de comando gconftool é para o GConf.

    
por dobey 31.01.2013 / 18:16
35

O Dconf é um repositório de dados projetado para armazenar a configuração. É o substituto do Gconf, que foi usado para o mesmo propósito. Eventualmente, nenhum programa deve depender mais do Gconf.

Gsettings é uma biblioteca de desenvolvimento usada para ler e gravar em um back-end de armazenamento de configuração. No Linux, ele usa o Dconf, mas no Windows, ele usa o registro e, no OS X, ele usa um armazenamento de dados nativo.

Recomendamos que os desenvolvedores de aplicativos e usuários finais usem o Gsettings, não o Dconf diretamente.

Veja também:

por Flimm 31.01.2013 / 18:31