この章では、GConf
を使用してユーザーの設定を管理する方法について説明します。 また、設定エディタ
の使用方法についても説明があります。
GConf
を使用すると、GNOME デスクトップユーザー設定の管理が簡単になります。 システム管理者は、GConf
を使用して次のことが可能になります。
すべてのユーザーの特定の設定に必須値を設定する。 システム管理者はこの方法で、ユーザーが特定の設定を更新できるかどうかを制御できます
すべてのユーザーの特定の設定にデフォルト値を設定する
設定の定義ファイルで指定されている設定の推奨値を使用する
各設定に関するマニュアルを読む
設定値がローカルに、またはネットワークを介して変更されると、GConf
はアプリケーションに設定値の変更を通知します。 このため、設定を変更すると、その設定を使用するすべてのアプリケーションが直ちに更新されます。
GConf
には、次のコンポーネントがあります。
ユーザー設定のリポジトリ
gconfd-2 デーモン
gconftool-2 コマンドラインツール
GConf
リポジトリ内の各設定は、キーと値のペアで構成されます。 GConf 設定キーは、アプリケーション設定に対応するリポジトリ内の要素です。 たとえば、/apps/gnome-session/options/show_splash_screen 設定キーは、セッション
設定ツールの 「ログイン時にスプラッシュ画面を表示する」 オプションに対応します。 GNOME デスクトップのユーザーインタフェースには、GConf
リポジトリ内のすべての設定キーが含まれるわけではありません。 たとえば、Panel
設定ツールには /apps/panel/global/tooltips_enabled キーに対応するオプションは含まれていません。
リポジトリは、単純な階層のファイルシステムとして構成されています。 リポジトリには、次のものが含まれます。
GConf
リポジトリを使用するアプリケーションに対応するディレクトリ。 たとえば、このファイルシステムに、ディレクトリ /apps/metacity が含まれます。
設定のカテゴリに対応するサブディレクトリ。 たとえば、このファイルシステムに、ディレクトリ /apps/metacity/general が含まれます。
ディレクトリ内の設定キーの一覧、およびそのキーに関する情報を含む特殊ファイル。 たとえば、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 include "$(HOME)/.gconf.path" include /etc/gconf/2/local-defaults.path xml:readwrite:$(HOME)/.gconf xml:readonly:/etc/gconf/gconf.xml.defaults
GConf
が設定値を検索する場合、 GConf
は、パスファイル内で指定された順に設定ソースを読みます。 以下の表は、パスファイル内の設定ソースです。
設定ソース |
説明 |
---|---|
必須 (xml:readonly:/etc/gconf/ gconf.xml.mandatory) |
この設定ソースのアクセス権は、読み取り専用に設定されます。 ユーザーは、このソースの値を上書きすることができません。したがって、そのソースの設定値は必須です |
User |
この設定ソースは、ユーザーのホームディレクトリ内の .gconf ディレクトリに格納されます。 ユーザーが環境を設定すると、新しい設定情報がこの場所に追加されます ユーザー設定ソースは、 |
デフォルト値 |
この設定ソースには、デフォルトの設定が含まれています |
パスファイル内の設定ソースの順序では、必須の設定がユーザーの設定よりも優先されます。 また、デフォルト設定よりもユーザーの設定が優先されます。 つまり、GConf
は、次の優先順位で設定を適用します。
必須の設定
ユーザー指定の設定
デフォルトの設定
システム管理者は、GConf
パスファイル内の include 命令を使って、別の設定ソースを指定できます。
インクルードされる設定ソース |
説明 |
---|---|
/etc/gconf/2/local-mandatory.path |
この設定ソースは、特定のシステムの必須設定を格納するために使用します。 |
$(HOME)/.gconf.path |
ユーザーは、設定ソースの場所をホームディレクトリ内の .gconf.path というファイルに指定します。 |
/etc/gconf/2/local-defaults.path |
この設定ソースは、特定のシステムのデフォルトの設定値を格納するために使用します。 |
「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 ディレクトリに含まれています。 スキーマ定義ファイルを使用して、新しい設定ソースを作成できます。
いくつかのスキーマ定義ファイルは、GNOME デスクトップユーザーインタフェースの一部と緊密に対応しています。 たとえば、system_http_proxy.schemas は、インターネット
設定ツールに対応しています。 ほかのスキーマ定義ファイルは、GNOME デスクトップユーザーインタフェースにはない設定キーを含んでいます。 たとえば、/apps/panel/global/tooltips_enabled キーはユーザーインタフェースにはありません。
GNOME デスクトップのユーザーインタフェースのいくつかは、複数のスキーマ定義ファイルの設定キーを表す設定を含んでいます。 たとえば、 ショートカット
設定ツールは、panel-global-config.schemas および metacity.schemas ファイルのキーを表す設定を含んでいます。
GConf
デーモンは、gconfd-2 です。 GConf
デーモンは、設定の値が変更されると、アプリケーションに通知します。 たとえば、「メニューとツールバー」
設定ツールでツールバーの「アイコンのみ」を表示するように選択するとします。 設定ツールでこのオプションを選択すると、直ちに、開いているすべてのアプリケーションのツールバーが更新されます。 GConf
デーモンは、ローカルでも、ネットワークを介してでも動作することができます。
GConf
デーモンのインスタンスは、各ユーザーごとに起動されます。 GConf
デーモンは、認証やデータ機密保護などの複雑な問題を処理する必要がありません。 GConf
デーモンは、起動するときにGConf
パスファイルを読み取ります。 GConf
デーモンは、アプリケーションと設定ソース間のすべてのアクセスを管理します。
アプリケーションが設定キーの値を要求すると、デーモンは次のようにして設定ソースを検索します。
パスファイルに指定された順に、各設定ソース内の設定キーの値を検索します。 値が見つかると、その値を返します。
値が見つからない場合は、パスファイルに指定された順に、各設定ソース内の設定キーに対応するスキーマキーを検索します。
スキーマキーが見つかると、スキーマキーの値を調べます。
スキーマキーの値がスキーマオブジェクトの場合、そのスキーマオブジェクトの <default> 要素内の推奨値を返します。
GConf
デーモンは、設定キーの値をキャッシュに入れます。 すべてのアプリケーションがこのキャッシュを使用するため、アプリケーションが設定ソースにアクセスするのは一度だけです。
GConf
デーモンを終了するには、次のコマンドを実行します。
# gconftool-2 --shutdown
GConf
は、コマンドラインツールの gconftool-2 を含んでいます。 gconftool–2 コマンドを使用して、次の作業を実行できます。
キーの値を設定する
キーの値を表示する
アプリケーションをインストールするときに、スキーマ定義ファイルからスキーマをインストールする
たとえば、次のコマンドを使用して /desktop/gnome ディレクトリおよびサブディレクトリ内のすべてのキー値を表示することができます。
# gconftool-2 --recursive-list /desktop/gnome
表 1–1 は、gconftool-2 コマンドに使用できるオプションを示しています。
表 1–1 gconftool-2 コマンドオプション
設定キーに対して、必須値またはデフォルト値を設定できます。 ユーザーの必須設定値またはデフォルト設定値を変更する前に、GConf
デーモンがどのユーザーに対しても実行されていないことを確認する必要があります。 また、すべてのユーザーがログアウトしていることを確認してから、ユーザーの設定値を変更してください。
設定キーの必須値またはデフォルト値を設定するには、gconftool-2 コマンドを次のように使用します。
# gconftool-2 --direct --config-source configuration-source --type data-type --set preference-key value
たとえば、wwwproxy.xyz.com を必須の HTTP プロキシホストとして設定するには、次のコマンドを実行します。
# gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --type string --set /system/http_proxy/host wwwproxy.xyz.com
ユーザーは、この設定値を上書きできません。
gconftool-2 コマンドを使用して、デフォルト値を設定することもできます。 たとえば、ワークスペースのデフォルト数を 5 に設定するには、次のコマンドを実行します。
# gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults --type int --set /apps/metacity/general/num_workspaces 5
ユーザーは、この設定値を上書きできます。
ユーザーの必須設定値またはデフォルト設定値を変更する前に、すべてのユーザーがログアウトしていることを確認してください。
この節では、必須値またはデフォルト値を一般的な設定に割り当てる方法を説明します。
HTTP プロキシを設定するには、/system/http_proxy/ の設定キーの値を変更します。 たとえば、HTTP プロキシホストに必須値を設定するには、次のコマンドを実行します。
# gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --type string --set /system/http_proxy/host proxy-name
HTTP プロキシホストにデフォルト値を設定するには、次のコマンドを実行します。
# gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults --type string --set /system/http_proxy/host proxy-name
ほかの HTTP プロキシ関連の環境を設定することもできます。 ほかの HTTP プロキシ設定に関する情報については、system_http_proxy.schemas スキーマ定義ファイルを参照してください。
ワークスペースの必須の数を設定するには、次のコマンドを使用します。
# gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --type int --set /apps/metacity/general/num_workspaces integer
ワークスペースのデフォルトの数を設定するには、次のコマンドを使用します。
# gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults --type int --set /apps/metacity/general/num_workspaces integer
ほかのウィンドウマネージャの環境を設定することもできます。 ほかのウィンドウマネージャの設定に関する情報については、metacity.schemas スキーマ定義ファイルを参照してください。
キーボードアクセシビリティを設定するには、 /desktop/gnome/accessibility/keyboard の設定キーの値を変更します。 たとえば、キーボードアクセシビリティ機能が有効になるように必須値を設定したい場合は、次のコマンドを実行します。
# gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --type bool --set /desktop/gnome/accessibility/keyboard/enable true
この設定にデフォルト値を設定するには、次のコマンドを実行します。
# gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults --type bool --set /desktop/gnome/accessibility/keyboard/enable false
ほかのキーボードアクセシビリティ環境を設定することもできます。 ほかのキーボードアクセシビリティ設定に関する情報については、desktop_gnome_accessibility_keyboard.schemas スキーマ定義ファイルを参照してください。
キーボードショートカット設定を行うには、/apps/metacity/global_keybindings/panel_run_dialog にある設定キーの値を変更します。 たとえば、「アプリケーションの実行」ダイアログを開くときに、ユーザーが Alt + F3 キーボードショートカットのみを使用するように設定したい場合があります。 この必須値を設定するには、次のコマンドを実行します。
# gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --type string --set /apps/metacity/global_keybindings '<Alt>F3'
ほかのキーボードショートカット環境を設定することもできます。 ほかのキーボードショートカットの設定に関する情報については、metacity.schemas スキーマ定義ファイルを参照してください。
panel-default-setup.entries ファイルは、GNOME デスクトップ内のパネルについて、次の内容を指定します。
パネルの数
パネルのタイプ
パネルのプロパティ
パネルの内容
パネルおよびパネルオブジェクトを個別に設定するのは、複雑な作業になります。 パネルやパネルオブジェクトを個別に設定するには、まず panel-default-setup.entries ファイルの構造を理解する必要があります。 panel-default-setup.entries の詳細については、次の節を参照してください。
パネルおよびパネルオブジェクトの環境を個別に設定するには、設定ソース内の多数の設定値を設定する必要があります。 パネル設定の値を設定する一番簡単な方法は、--dump および --load オプションを指定して、gconftool-2 コマンドを使用することです。 パネルおよびパネルオブジェクトの設定方法の詳細については、パネルおよびパネルオブジェクトの環境を個別に設定を参照してください。
panel-default-setup.entries ファイルには、パネルおよびパネルの内容を指定する部分があります。 また panel-default-setup.entries ファイルは、スキーマキーの値を指定します。 panel-default-setup.entries ファイルは、/etc/gconf/schemas ディレクトリ内にあります。
panel-default-setup.entries ファイルの構造は、以下のとおりです。
GNOME デスクトップ内のパネル、アプレット、およびその他のパネルオブジェクトの一般的な構造を指定するキー。 以下のキーが、GNOME デスクトップ内に表示されるパネル、パネルオブジェクト、およびアプレットの数を指定します。
/apps/panel/default_setup/general/toplevel_id_list
/apps/panel/default_setup/general/object_id_list
/apps/panel/default_setup/general/applet_id_list
これらのキーは、各パネル、パネルオブジェクト、およびアプレットに識別子も割り当てます。 たとえば、以下の panel-default-setup.entries のサンプルでは、GNOME デスクトップに表示されるパネルは 1 つです。
<entry> <key>toplevel_id_list</key> <schema_key>/schemas/apps/panel/general/toplevel_id_list</schema_key> <value> <list type="string"> <value> <string>bottom_panel</string> </value> </list> </value> </entry>
panel-default-setup.entries ファイルでは、識別子 bottom_panel がボトムエッジパネルを識別します。
パネルのプロパティを指定するキー。 パネル設定キーは、次のように設定されています。
/apps/panel/default_setup/toplevels/panel-name/panel-property-key
たとえば、キー /apps/panel/default_setup/toplevels/bottom_panel/size は、ボトムパネルのサイズを指定します。
パネルオブジェクト、パネルオブジェクトプロパティ、およびオブジェクトが存在するパネルを指定するキー。 たとえば、以下の panel-default-setup.entries のサンプルでは、メインメニューオブジェクトが ボトムパネルの左側に表示されます。
<entrylist base="/apps/panel/default_setup/objects/main_menu"> <entry> <key>object_type</key> <schema_key>/schemas/apps/panel/objects/object_type</schema_key> <value> <string>menu-object</string> </value> </entry> <entry> <key>toplevel_id</key> <schema_key>/schemas/apps/panel/objects/toplevel_id</schema_key> <value> <string>bottom_panel</string> </value> </entry> <entry> <key>position</key> <schema_key>/schemas/apps/panel/objects/position</schema_key> <value> <int>0</int> </value> </entry> . . . </entrylist>
アプレット、アプレット設定、およびアプレットが存在するパネルを指定するキー。 たとえば、以下の panel-default-setup.entries のサンプルでは、 Window List
アプレットがボトムパネルに表示されます。
<entrylist base="/apps/panel/default_setup/applets/window_list"> <entry> <key>object_type</key> <schema_key>/schemas/apps/panel/objects/object_type</schema_key> <value> <string>bonobo-applet</string> </value> </entry> <entry> <key>toplevel_id</key> <schema_key>/schemas/apps/panel/objects/toplevel_id</schema_key> <value> <string>bottom_panel</string> </value> </entry> <entry> <key>position</key> <schema_key>/schemas/apps/panel/objects/position</schema_key> <value> <int>2</int> </value> </entry> . . . <entry> <key>bonobo_iid</key> <schema_key>/schemas/apps/panel/objects/bonobo_iid_type</schema_key> <value> <string>OAFIID:GNOME_WindowListApplet</string> </value> </entry> </entrylist>
OAFIID は、アプレットの一意の識別子です。 特定のアプレットの OAFIID を検索するには、/usr/lib/bonobo/servers ディレクトリ内にあるそのアプレットの .server ファイルを参照します。 たとえば、以下の GNOME_Wncklet_Factory.server の抜粋では、Window List
アプレットの OAFIID が示されます。
<oaf_server iid="OAFIID:GNOME_WindowListApplet" type="factory" location="OAFIID:GNOME_Wncklet_Factory">
パネルやパネル内のオブジェクトの設定を行うには、次の手順を実行します。
GNOME セッションにログインし、必要に応じてパネルを設定します。
--dump オプションを指定して gconftool-2 コマンドラインツールを使用し、使用しているパネル設定の XML 記述を含むファイルを生成します。 --dump オプションは、ユーザーが指定した GConf
リポジトリディレクトリ内にあるすべての設定キーを含む一覧を生成します。
たとえば、以下のコマンドはデフォルトパネル設定の XML 記述を my-panel-setup.entries というファイルに作成します。
# gconftool-2 --dump /apps/panel/profiles/default > my-panel-setup.entries
my-panel-setup.entries ファイルをテキストエディタで開き、必要に応じて修正します。
たとえば、デスクトップエントリファイルの場所を変更したりします。 以下に、--dump オプションで生成されたファイルの抜粋を示します。
<entry> <key>objects/object_16/launcher_location</key> <schema_key>/schemas/apps/panel/objects/launcher_location</schema_key> <value> <string>hadjaha-00adce02f7.desktop</string> </value> </entry>
上のサンプルで、hadjaha-00adce02f7.desktop への参照を、広く使用可能な別のデスクトップエントリファイルに変更することも考えられます。
--dump オプションでパネル設定を生成すると、パネルオブジェクトの位置は絶対的な位置になります。 パネルオブジェクトの位置を絶対的な位置から相対的な位置に変更したい場合もあります。 パネルの一番左端のオブジェクトの position 値は 0 です。 その次のオブジェクトの position 値は 1 という具合になっています。 オブジェクトをパネルの右側と相対する位置に置くには、right_stick キーを true に設定します。
--load オプションを指定して gconftool-2 コマンドラインツールを使用し、デフォルトの設定ソースの値を my-panel-setup.entries ファイル内の値に設定します。 たとえば、以下のコマンドは、デフォルトの設定ソースのキー値を my-panel-setup.entries 内の対応するキーの値に設定します。
# gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults --load my-panel-setup.entries
この節では、ルック&フィールの設定に必須値またはデフォルト値を割り当てる方法を説明します。
フォントを設定するには、2 つの設定キーの値を変更します。 以下の表は、変更するキーと、そのキーに対応するユーザーインタフェース部分を示しています。
GConf の場所 |
ユーザーインタフェースコンポーネント |
---|---|
/desktop/gnome/interface/font_name |
|
/apps/nautilus/preferences/desktop_font |
|
たとえば、Sans 12 を必須アプリケーション用フォントとして設定するには、次のコマンドを実行します。
# gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --type string --set /desktop/gnome/interface/font_name “Sans 12”
palatino 12 をデフォルトのデスクトップオブジェクトフォントとして設定するには、次のコマンドを実行します。
# gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults --type string --set /apps/nautilus/preferences/desktop_font “palatino 12”
デスクトップ背景の設定を行うには、/desktop/gnome/background にある設定キーの値を変更します。 たとえば、背景に必須イメージを設定するには、次のコマンドを実行します。
# gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --type string --set /desktop/gnome/background/picture_filename filename.png
この設定にデフォルト値を設定するには、次のコマンドを実行します。
# gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults --type string --set /desktop/gnome/background/picture_filename filename.png
ほかの背景を設定することもできます。 ほかの背景設定に関する情報については、desktop_gnome_background.schemas スキーマ定義ファイルを参照してください。
スプラッシュイメージを設定するには、/apps/gnome-session/options/ の設定キーの値を変更します。 たとえば、スプラッシュイメージを表示しないように設定するには、必須値を次のように設定します。
# gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --type bool --set /apps/gnome-session/options/show_splash_screen false
この設定にデフォルト値を設定するには、次のコマンドを実行します。
# gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults --type bool --set /apps/gnome-session/options/show_splash_screen false
ほかのスプラッシュイメージを設定することもできます。 ほかのスプラッシュイメージ設定に関する情報については、gnome-session.schemas スキーマ定義ファイルを参照してください。
ユーザーのデフォルト設定値を復元するには、次のコマンドを実行します。
# gconftool-2 --direct --config-source user-configuration-source --recursive-unset
user-configuration-source は、ユーザーのホームディレクトリにある .gconf ディレクトリ内の設定ソースに置き換えます。
このコマンドは、すべてのサブディレクトリで、ユーザー設定からデフォルト設定ソースの設定までを含むすべての設定キーの値をリセットします。