Úložiště GConf

Každá z předvoleb v úložišti GConf je představována párem klíč - hodnota. Klíč předvolby GConf je element v úložišti, který odpovídá předvolbě aplikace. Např. klíč předvolby /apps/gnome-session/options/show_splash_screen odpovídá volbě Během přihlašování zobrazit úvodní obrazovku v nástroji předvoleb Sezení. Uživatelské rozhraní pracovního prostředí GNOME neobsahuje všechny klíče předvoleb z úložiště GConf. Např. nástroj předvoleb Panel neobsahuje volbu, která by odpovídala klíči /apps/panel/global/tooltips_enabled.

Struktura úložiště je podobná jednoduchému hierarchickému souborovému systému. Úložiště obsahuje následující věci:

  • Složky odpovídající aplikacím, které úložiště GConf používají. Např. souborový systém obsahuje složku /apps/metacity.
  • Podsložky odpovídající kategoriím předvoleb. Např. souborový systém obsahuje složku /apps/metacity/general.
  • Speciální soubory, které obsahují seznamy klíčů předvoleb ve složce a informace o klíčích. Např. soubor, který obsahuje informace o klíčích vztahujících se k předvolbám HTTP proxy, je ve složce /system/http_proxy.
  • Složku /schemas, která obsahuje soubory popisující všechny klíče předvoleb.

Klíče předvoleb mívají typicky jednoduché hodnoty jako řetězce a čísla a nebo seznamy řetězců a čísel. Formát klíčů předvoleb v úložišti závisí na modulu implementace, který je použitý ke čtení úložiště. Následující příklad klíče předvolby /desktop/gnome/interface/font_name je pro použití modulu implementace Extensible Markup Language (XML):

<entry name="font_name" mtime="1038323555" muser="user123" type="string">
<stringvalue>Sans 10</stringvalue></entry>

Když tato příručka odkazuje na klíč předvolby, je k názvu klíče přidaná cesta ke klíči. Např. na klíč předvolby font_name v podsložce /desktop/gnome/interface je odkazováno jako /desktop/gnome/interface/font_name.

1.2.1. Zdroje nastavení GConf

Úložiště GConf obsahuje sadu úložných míst, která se nazývají zdroje nastavení. Zdroje nastavení jsou uvedené v souboru cesty GConf. Soubor cesty GConf je umístěný v /etc/gconf/číslo-verze-gconf/path. Soubor cesty určuje pro každý zdroj nastavení následující informace:

  • Modul implementace, který se používá ke čtení úložiště.
  • Oprávnění úložiště.
  • Umístění úložiště.

Soubor cesty GConf také obsahuje instrukce include. Standardně je obsah souboru cesty GConf následující:

xml:readonly:/etc/gconf/gconf.xml.mandatory
include /etc/gconf/2/local-mandatory.path
include "$(HOME)/.gconf.path"
include /etc/gconf/2/local-defaults.path
xml:readwrite:$(HOME)/.gconf
xml:readonly:/etc/gconf/gconf.xml.defaults

Když GConf vyhledává hodnotu předvolby, čte zdroje nastavení v pořadí uvedeném v souboru cesty. Následující tabulka popisuje zdroje nastavení v souboru cesty:

Zdroj nastavení Popis
mandatory (povinné) Oprávnění k tomuto zdroji nastavení je nastavené na „pouze ke čtení“. Uživatel nemůže v tomto zdroji přepisovat hodnoty, čímž pádem jsou předvolby v tomto zdroji povinné.
user (uživatelské)

Tento zdroj nastavení je uložený ve složce .gconf v domovské složce uživatele. Když uživatel nastaví předvolbu, tak se nová informace o předvolbě přidá do tohoto umístění.

Ke změnám zdrojů uživatelských nastavení můžete použít aplikaci Editor nastavení.

default (výchozí) Tento zdroj nastavení obsahuje výchozí nastavení předvoleb.

Pořadí zdrojů nastavení v souboru cesty zajišťuje, že povinné hodnoty předvoleb přepíšou uživatelská nastavení předvoleb. Pořadí také zajišťuje, že uživatelská nastavení předvoleb přepíšou výchozí nastavení předvoleb. To jest, GConf používá předvolby v následujícím pořadí priority:

  1. Povinné předvolby
  2. Uživatelem zadané předvolby
  3. Výchozí předvolby

Instrukce include v souboru cesty GConf dovoluje správci systému zadat další zdroje nastavení.

Vložený zdroj nastavení Popis
/etc/gconf/2/local-mandatory.path Použijte tento zdroj nastavení k uložení povinných hodnot předvoleb pro specifický systém.
$(HOME)/.gconf.path Uživatel určuje umístění zdrojů nastavení v domovské složce v souboru, který se nazývá .gconf.path.
/etc/gconf/2/local-defaults.path Použijte tento zdroj nastavení k uložení výchozích hodnot předvoleb pro specifický systém.

1.2.2. Schémata GConf

Schéma GConf je společný termín pro klíč schématu GConf a objekt schématu GConf. Následující tabulka popisuje klíče schémat a objekty schémat a vztahy těchto položek ke klíčům předvoleb:

Položka Popis
Klíč předvolby Element v úložišti GConf, který odpovídá předvolbě aplikace.
Klíč schématu Klíč, který uchovává objekt schématu pro klíč předvolby.
Objekt schématu

Element ve zdroji nastavení, který obsahuje takové informace ke klíči předvolby, jako jsou:

  • Název aplikace, která klíč předvolby používá.
  • Typ hodnoty požadované pro klíč předvolby, např. celé číslo, pravdivostní hodnota apod.
  • Výchozí hodnotu pro klíč předvolby.
  • Stručnou dokumentaci ke klíči předvolby.

Následující tabulka ukazuje příklady klíče předvoleb, klíče schématu a objektu schématu:

Položka Příklad
Klíč předvolby /desktop/gnome/interface/font_name
Klíč schématu /schemas/desktop/gnome/interface/font_name
Objekt schématu
<schema>
  <applyto>/desktop/gnome/interface/font_name</applyto>
  <key>/schemas/desktop/gnome/interface/font_name</key>
  <owner>gnome</owner>
  <type>string</type>
  <default>Sans 10</default>
  <locale name="C">
    <short>Default font</short>
      <long>Name of the default font used by gtk+.</long>
  </locale>
</schema>

Klíč schématu můžete přidružit ke klíči předvolby. Vezměme např. následující klíč /desktop/gnome/interface/font_name zahrnující klíč schématu:

<entry name="font_name" mtime="1034873859"
schema="/schemas/desktop/gnome/interface/font_name"/>

Když klíč schématu přidružíte ke klíči předvolby, předvolba použije navrhovanou hodnotu, která je určená v objektu schématu klíče schématu. Navrhovanou hodnotu obsahuje element <default> objektu schématu. Standardně jsou všechny klíče předvoleb ve zdroji výchozích nastavení přidružené s klíči schématu.

Schémata bývají obvykle uložená ve zdroji výchozího nastavení.

1.2.3. Soubory definicí schématu GConf

Schémata jsou generovaná ze souborů definicí schématu. Soubory definicí schématu definují vlastnosti všech klíčů v určité aplikaci. Soubory definicí schématu mají příponu .schemas.

Soubory definicí schématu jsou uložená ve složce /etc/gconf/schemas. Soubory s definicí schématu můžete použít k vytvoření nového zdroje nastavení.

Některé soubory definice schématu odpovídají přesně části uživatelského rozhraní pracovního prostředí GNOME. Např. system_http_proxy.schemas odpovídá nástroji předvoleb Proxy sítě. Jiné soubory definice schématu obsahují klíče předvoleb, které nepředstavují uživatelského rozhraní pracovního prostředí GNOME. Např. /apps/panel/global/tooltips_enabled se v uživatelském rozhraní neobjevuje.

Některé části uživatelského rozhraní pracovního prostředí GNOME obsahují předvolby, které představují klíče předvoleb z více než jednoho souboru definice schématu. Např. nástroj předvolby Klávesové zkratky obsahuje předvolby, které představují klíče ze souborů panel-global-config.schemas a metacity.schemas.