11 Jan

GConf e Suas Ferramentas

Olá!!!!!!

Até onde me lembre já falei sobre a ferramenta GConftool em uns dois posts, contudo ainda não havia feito nenhuma postagem explicando sobre ela nem sobre o sistema GConf o qual essa ferramenta é usada para fazer alterações então melhor deixar de bla bla bla e começar a explicar um pouco sobre o assunto…


GConf

Criado por Havoc Pennington, o GConf é um sistema para armazenamente de preferências das aplicações definidas pelo usuário ou pré-defindas na instalação do sistema. Além do GNOME sob outras plataformas como por exemplo: GTK+, Xlib e KDE.

Quando são feitas mudanças nas configurações o daemon GConfd notifica as aplicações necessárias e algo interessante é que quando múltiplas aplicações tentam acessar as configurações de dados o GConf faz um bloqueio para evitar que os dados sejam corrompidas tornando-se assim bastante seguro.

O GConf usa um sistema baseado em diretórios e arquivos XML e cada preferência é armazenada num par chave-valor. O diretório .gconf é que armazena essas informações e ele fica no HOME do usuário do sistema, veja:

[krix@rogue]$ ls -la ~ | grep -i gconf
drwx——  5 krix  root  4096 2008-12-02 07:32 .gconf
drwx——  2 krix  root  4096 2008-12-02 08:52 .gconfd

[krix@rogue]$ ls -la ~/.gconf/
drwx—— 18 krix root 4096 2008-12-02 08:59 apps
drwx——   3 krix root 4096 2008-11-26 14:50 desktop
drwx——   3 krix root 4096 2008-11-26 15:34 system

Mas como já sabemos não é necessário sair vasculhando esses arquivos para fazer as mudanças que desejamos, para isso temos a “comodidade” de duas ferramentas facilitam e muito nessa hora:

  1. GConf-Editor
  2. GConftool

Vamos falar um pouco sobre cada uma delas e como utilizá-las:


GConf-Editor

Criada por Anders Carlsson o GConf-Editor é uma ferramenta usada para fazer alterações nas configurações da base de dados do GConf. Acredito que não estaria me equivocando dizer que ela seria a interface gráfica do GConftool. A tela principal é a mostrada abaixo:

Como você deve ter observado na listagem do diretório .gconf mostrado anteriormente não havia o sub-diretório schemas… Pois é deveria ter falado antes de abordar sobre as ferramentas, mas achei que se encaixava melhor falar agora. :razz:

O GConf armazena não somente informações do tipo inteiro, string, etc mas também, armazena schemas. Quando uma aplicação utiliza o GConf ela deve fornecer uma descrição para cada chave criada dentro da base de dados do GConf e essa descrição deve conter meta-dados que podem conter o tipo válido do valor referenciado a uma chave, um valor padrão e um texto curto com uma descrição sobre a configuração.


GConftool-2

Criada por Havoc Pennington esta ferramenta de linha de comando que permite atribuir um valor a uma chave, mostrar o valor atribuido a uma chave e/ou instalar um schemas no arquivo de definições de schemas.

Sintaxe:

gconftool-2 –set [caminho_de_configuração] –type [tipo] “valor”

Alguns exemplo para explicar melhor:

Buscando o caminho da imagem exibida na área de trabalho:

[krix@rogue]$ gconftool-2 –get /desktop/gnome/background/picture_filename

Deixando o ícone da lixeira visível na área de trabalho:

[krix@rogue]$ gconftool-2 – -set /apps/nautilus/desktop/trash_icon_visible –type bool 1

Abaixo listei algumas opções:

-s, –set = Atribui um valor e sincroniza. Use com a opção –type = Especifica o tipo do valor, exemplo: int, string e bool;
-g, –get = Exibe o valor da chave na saída padrão;
-u, –unset =
-a, –all-entries = Exibe todos os pares de chave-valor no diretório informado;
–all-dirs = Exibe a lista de todos os subdiretórios do diretório informado;
–set-schema = Atribui um schema e sincroniza. Use com as opções –short-desc = Atribui uma curta descrição ao schema; –long-desc = Atribui uma longa descrição ao schema; –owner = Atribui o dono do schema; –type = Areibui o tipo de schema;
–config-source = Especifica a fonte da configuração;
–get-schema-name = Exibe o nome do schema aplicado a chave.

Tags: , ,

Anúncio provido pelo BuscaPé


This website uses IntenseDebate comments, but they are not currently loaded because either your browser doesn't support JavaScript, or they didn't load fast enough.

Post a comment