GConf
リポジトリ内の各設定は、キーと値のペアで構成されます。GConf 設定キーは、アプリケーション設定に対応するリポジトリ内の要素です。たとえば、/apps/gnome-session/options/show_splash_screen 設定キーは、セッション
設定ツールの 「ログイン時にスプラッシュ画面を表示する」オプションに対応します。Java Desktop System のユーザーインタフェースには、GConf
リポジトリ内のすべての設定キーが含まれるわけではありません。たとえば、Panel
設定ツールには /apps/panel/global/tooltips_enabled キーに対応するオプションは含まれていません。
リポジトリは、単純な階層ファイルシステムのように構成されています。リポジトリには、次のものが含まれます。
GConf
リポジトリを使用するアプリケーションに対応するディレクトリ。たとえば、このファイルシステムには、/apps/gnome-terminal というディレクトリが含まれる
設定のカテゴリに対応するサブディレクトリ。たとえば、このファイルシステムには、/apps/gnome-terminal/global というディレクトリが含まれる
ディレクトリ内の設定キーの一覧、およびそのキーに関する情報を含む特殊ファイル。たとえば、HTTP プロキシ設定に関連するキーについての情報を持つファイルは、ディレクトリ /system/http_proxy にある
すべての設定キーを記述するファイルを含む /schemas ディレクトリ
通常、設定キーは、次の単純なデータ型を持ちます。
文字列
整数
文字列のリスト
整数のリスト
リポジトリ内の設定キーの形式は、リポジトリの読み取りに使用されるバックエンドモジュールに依存します。次は、リポジトリの読み取りに XML (Extensible Markup Language) が使用される場合の /desktop/gnome/interface/font_name 設定キーの例です。
<entry name="font_name" mtime="1038323555" muser="user123" type="string"> <stringvalue>Sans 10</stringvalue></entry>
このマニュアルでは、設定キーを参照するときに、キーのパス名をそのキーの名前に追加しています。たとえば、/desktop/gnome/interface サブディレクトリ内の font_name 設定キーは、/desktop/gnome/interface/font_name と示されます。
GConf
リポジトリは、「構成ソース」と呼ばれる一連の保存場所を記述した設定ファイルを含んでいます。構成ソースは、「GConf パスファイル」に記述されます。GConf
パスファイルの場所は、/etc/gconf/gconf-version-number/path
です。各ユーザーは、パスファイルを持っています。このパスファイルは、各構成ソースに対して次の情報を指定します。
リポジトリの読み取りに使用するバックエンドモジュール
リポジトリのアクセス権
リポジトリの場所
GConf
パスファイルには、include
命令も含まれています。デフォルトでは、GConf
パスファイルの内容は次のようになります。
xml:readonly:/etc/gconf/gconf.xml.mandatory include /etc/gconf/2/local-mandatory.path apoc:readonly:mandatory@ include "$(HOME)/.gconf.path" xml:readwrite:$(HOME)/.gconf apoc:readonly:@ include /etc/gconf/2/local-defaults.path xml:readonly:/etc/gconf/gconf.xml.defaults
GConf
が設定値を検索する場合、GConf
は、パスファイル内で指定された順に構成ソースを読みます。次の表は、パスファイル内の構成ソースです。
構成ソース |
説明 |
---|---|
必須 (xml:readonly:/etc/gconf/ gconf.xml.mandatory) |
この構成ソースのアクセス権は、読み取り専用に設定されます。ユーザーは、このソースの値を上書きすることができません。したがって、そのソースの設定は必須です |
ユーザー |
この構成ソースは、ユーザーのホームディレクトリ内の .gconf ディレクトリに格納されます。ユーザーが環境を設定すると、新しい設定情報がこの場所に追加されます ユーザー構成ソースは、 |
標準 |
この構成ソースには、デフォルトの設定が含まれています |
パスファイル内の構成ソースの順序では、必須の設定がユーザーの設定よりも優先されます。また、デフォルト設定よりもユーザーの設定が優先されます。つまり、GConf
は、次の優先順位で設定を適用します。
必須の設定
ユーザー指定の設定
デフォルトの設定
システム管理者は、GConf
パスファイル内の include 命令を使って、別の構成ソースを指定できます。
インクルードされる構成ソース |
説明 |
---|---|
/etc/gconf/2/local-mandatory.path |
この構成ソースは、特定のシステムの必須設定を格納するために使用します。 |
$(HOME)/.gconf.path |
ユーザーは、構成ソースの場所をホームディレクトリ内の .gconf.path というファイルに指定します。 |
/etc/gconf/2/local-defaults.path |
この構成ソースは、特定のシステムのデフォルトの設定値を格納するために使用します。 |
GConf
パスファイル内の apoc 設定を使用して、Sun
Java Desktop System Configuration Manager のバックエンドモジュールを指定します。Sun Java Desktop System Configuration Manager
については、 http://docs.sun.com にある Sun
Java Desktop System Configuration Manager
に関するドキュメントを参照してください。
「GConf スキーマ」は、「 GConf スキーマキー」と「GConf スキーマオブジェクト」の総称です。次の表は、スキーマキー、スキーマオブジェクト、およびこれらの項目と設定キーとの関連性について説明しています。
項目 |
説明 |
---|---|
設定キー |
アプリケーション設定に対応する |
スキーマキー |
設定キーのスキーマオブジェクトを格納するキー |
スキーマオブジェクト |
次のような設定キー用の情報を含む構成ソース内の要素
|
次の表は、設定キー、スキーマキー、およびスキーマオブジェクトの例を示しています。
項目 |
例 |
---|---|
設定キー |
/desktop/gnome/interface/font_name |
スキーマキー |
/schemas/desktop/gnome/interface/font_name |
スキーマオブジェクト |
<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> |
設定キーにスキーマキーを関連付けることができます。たとえば、/desktop/gnome/interface/font_name キーは次のスキーマキーを含んでいます。
<entry name="font_name" mtime="1034873859" schema="/schemas/desktop/gnome/interface/font_name"/>
設定キーにスキーマキーを関連付けると、設定は、そのスキーマキーのスキーマオブジェクト内で指定されている推奨値を使用します。推奨値は、スキーマオブジェクトの <default> 要素に含まれています。デフォルトでは、デフォルト構成ソース内のすべての設定キーが、スキーマキーと関連付けられます。
通常、スキーマはデフォルト構成ソースに格納されます。
スキーマは、「スキーマ定義ファイル」から生成されます。スキーマ定義ファイルは、特定のアプリケーションにおけるすべてのキーの特性を定義します。スキーマ定義ファイルには、.schemas 拡張子が付きます。
スキーマ定義ファイルは、/etc/gconf/schemas ディレクトリに含まれています。スキーマ定義ファイルを使用して、新しい構成ソースを作成できます。
いくつかのスキーマ定義ファイルは、Java Desktop System のユーザーインターフェイスの一部と緊密に対応しています。たとえば、system_http_proxy.schemas は、 Internet
設定ツールに対応します。ほかのスキーマ定義ファイルは、Java Desktop System のユーザーインタフェースにはない設定キーを含んでいることがあります。たとえば、/apps/panel/global/tooltips_enabled キーはユーザーインターフェイスにはありません。
Java Desktop System のユーザーインターフェイスのいくつかは、複数のスキーマ定義ファイルの設定キーを表す設定を含んでいます。たとえば、キーボードショートカット
設定ツールは、panel-global-config.schemas
および metacity.schemas ファイルのキーを表す設定を含んでいます。