Contenida dentro deEncontrar más documentaciónRecursos de soporte técnico destacados de | Descargar este libro en PDF (576 KB)
Chapter 1 Using GConfThe information in this chapter describes how to use Introducing GConf
GConf RepositoryEach preference in the The repository is structured like a simple hierarchical file system. The repository contains the following:
Preference keys typically have simple values such as strings, integers, or lists of strings and integers. The format of the preference key in the repository depends on the backend module that is used to read the repository. The following is an example of the /desktop/gnome/interface/font_name preference key when an Extensible Markup Language (XML) backend module is used to read the repository: <entry name="font_name" mtime="1038323555" muser="user123" type="string"> <stringvalue>avantgarde 10</stringvalue></entry> Note – When this guide refers to a preference key, the path to the key is added to the name of the key. For example, the font_name preference key in the /desktop/gnome/interface subdirectory is referred to as /desktop/gnome/interface/font_name. GConf Configuration SourcesThe
By default, the contents of the xml:readonly:/etc/gconf/gconf.xml.mandatory include "$(HOME)/.gconf.path" xml:readwrite:$(HOME)/.gconf xml:readonly:/etc/gconf/gconf.xml.defaults When
The sequence of the configuration sources in the path file ensures that
mandatory preference settings override user preference settings. The sequence
also ensures that user preference settings override default preference settings.
That is,
The include instruction in the GConf SchemasA GConf schema is a collective term for a GConf schema key and a GConf schema object. The following table describes schema keys and schema objects and the relationship of these items to preference keys:
The following table gives examples of a preference key, a schema key, and a schema object:
You can associate a schema key with a preference key. For example, the following /desktop/gnome/interface/font_name key includes a schema key: <entry name="font_name" mtime="1034873859" schema="/schemas/desktop/gnome/interface/font_name"/> When you associate a schema key with a preference key, the preference uses the suggested value that is specified in the schema object of the schema key. The suggested value is contained in the <default> element in the schema object. By default, all the preference keys in the default configuration source are associated with schema keys. Typically, schemas are stored in the default configuration source. GConf Schema Definition FilesSchemas are generated from schema definition files. A schema definition file defines the characteristics of all of the keys in a particular application. Schema definition files have a .schemas extension. The schema definition files are included in the /etc/gconf/schemas directory. You can use the schema definition files to create a new configuration source. Some schema definition files correspond closely to a part of the GNOME
Desktop user interface. For example, system_http_proxy.schemas
corresponds to the Some parts of the GNOME Desktop user interface contain preferences that
represent preference keys from more than one schema definition file. For example,
the GConf DaemonThe An instance of the When an application requests the value of a preference key, the daemon searches the configuration sources as follows:
The To terminate the # gconftool-2 --shutdown GConf Command Line Tool
For example, use the following command to display the values of all keys in the /desktop/gnome directory and subdirectories. # gconftool-2 --recursive-list /desktop/gnome Table 1–1 lists some of the options that you can use with the gconftool-2 command. Table 1–1 gconftool-2 Command Options
To Set Preference ValuesYou can set a mandatory value or a
default value for a preference key. Before you change mandatory preference
values or default preference values for users, you must ensure that the To set a mandatory value or a default value for a preference key, use the gconftool-2 command, as follows: # gconftool-2 --direct --config-source configuration-source --type data-type --set preference-key value For example, to set wwwproxy.xyz.com as the mandatory HTTP proxy host, run the following command: # gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --type string --set /system/http_proxy/host wwwproxy.xyz.com The user cannot override this preference value. You can also use the gconftool-2 command to set default values. For example, to set the default number of workspaces to five, run the following command: # gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults --type int --set /apps/metacity/general/num_workspaces 5 The user can override this preference value. Before you change mandatory preference values or default preference values for users, you must ensure that all users are logged out. Setting General PreferencesThe following sections describe how to assign mandatory or default values to general preferences. To Set HTTP Proxy PreferencesTo set HTTP proxy preferences, you modify the values of the preference keys in the /system/http_proxy/ location. For example, to set a mandatory value for the HTTP proxy host, run the following command: # gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --type string --set /system/http_proxy/host proxy-name To set a default value for the HTTP proxy host, run the following command: # gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults --type string --set /system/http_proxy/host proxy-name You can also set other HTTP proxy-related preferences. For information on the other HTTP proxy preferences, see the system_http_proxy.schemas schema definition file. To Set Print Manager PreferencesTo set print manager preferences, you modify the values of the preference keys in the /apps/gnome-print-manager location. For example, if you do not want users to view the print jobs of other users, set a mandatory value as follows: # gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --type bool --set /apps/gnome-print-manager/show_all_jobs false To set a default value for this preference, run the following command: # gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults --type bool --set /apps/gnome-print-manager/show_all_jobs false You can also set other print manager preferences. For information on the other print manager preferences, see the gnome-print-manager.schemas schema definition file. To Set the Number of WorkspacesTo set a mandatory number of workspaces, use the following command: # gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --type int --set /apps/metacity/general/num_workspaces integer To set a default number of workspaces, use the following command: # gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults --type int --set /apps/metacity/general/num_workspaces integer You can also set other window manager preferences. For information on the other window manager preferences, see the metacity.schemas schema definition file. To Set Keyboard Accessibility PreferencesTo set keyboard accessibility preferences, you modify the values of the preference keys in the /desktop/gnome/accessibility/keyboard location. For example, if you want to set a mandatory value so that keyboard accessibility features are enabled, run the following command: # gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --type bool --set /desktop/gnome/accessibility/keyboard/enable true To set a default value for this preference, run the following command: # gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults --type bool --set desktop/gnome/accessibility/keyboard/enable false You can also set other keyboard accessibility preferences. For information on the other keyboard accessibility preferences, see the desktop_gnome_accessibility_keyboard.schemas schema definition file. To Set Keyboard Shortcut PreferencesTo set keyboard shortcut preferences, you modify the values of preference keys in two locations. The following table shows the locations to modify, and the part of the user interface to which the locations correspond:
For example, you might want users to use only the Alt + F3 keyboard shortcut to open the Run Program dialog. To set this mandatory value, run the following command: # gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --type string --set /apps/panel/global/run_key '<Alt>F3' You might want users to use Alt + F11 to maximize windows, by default. To set this default value, run the following command: # gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults --type string --set /apps/metacity/window_keybindings/maximize '<Alt>F11' You can also set other keyboard shortcut preferences. For information on the other keyboard shortcut preferences, see the panel-global-config.schemas and metacity.schemas schema definition files. To Set Global Panel PreferencesTo set global preferences for panels, you modify the values of the preference keys in the /apps/panel/global location. For example, if you do not want users to ever use panel animation, set a mandatory value as follows: # gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --type bool --set /apps/panel/global/enable_animations false To set a default value for this preference, run the following command: # gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults --type bool --set /apps/panel/global/enable_animations false You can also set other global panel preferences. For information on the other global panel preferences, see the panel-global-config.schemas schema definition file. To Set Preferences for Individual Panels and Panel ObjectsThe panel-per-panel-config.schemas schema definition file specifies the following details of the panels in the desktop environment:
The configuration of individual panels and of panel objects is a complex task. To configure individual panels and panel objects, you must first understand the structure of the panel-per-panel-config.schemas schema definition file. For more information on the panel-per-panel-config.schemas schema definition file, see the next section. To set preferences for individual panels and panel objects, you must set the values of many preferences in a configuration source. The easiest way to set the values of many preferences is to use a script. For a sample script that sets preferences for a panel and objects on the panel, see Sample Script for Setting Individual Panel Preferences. Schema Definition File for Individual Panels and Panel ObjectsThe schema definition file panel-per-panel-config.schemas contains sections that specify panels and panel contents for small, medium, and large screens. The section for small screens and the section for large screens are not functional at the time of publication of this guide. To learn about preference keys for panels or panel objects, read the section for medium screens only. The medium section of the file panel-per-panel-config.schemas is structured as follows:
Sample Script for Setting Individual Panel PreferencesThis section contains a sample script that sets the preferences for a panel that has the following major characteristics:
The sample script also sets other minor preferences. All of the preferences have default values, not mandatory values. The sample script follows: # Usage is: set_key <type> <key> <value> <extra options if any>
function set_key()
{
TYPE="$1"
shift
KEY="$1"
shift
VALUE="$1"
shift
OTHER_ARGS="$*"
gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults
--owner=panel $OTHER_ARGS --type "$TYPE" --set "$KEY" "$VALUE"
}
# Define the number of panels, the number of launchers, and the number of applets
set_key list /apps/panel/default_profiles/medium/general
/panel_id_list [00000001] --list-type string
set_key list /apps/panel/default_profiles/medium/general
/object_id_list [00000001,00000002] --list-type string
set_key list /apps/panel/default_profiles/medium/general
/applet_id_list [00000001] --list-type string
# Define the characteristics of the panel
set_key string /apps/panel/default_profiles/medium/panels
/00000001/panel_type edge-panel
set_key string /apps/panel/default_profiles/medium/panels
/00000001/panel_size panel-size-x-small
set_key string /apps/panel/default_profiles/medium/panels
/00000001/screen_edge panel-edge-bottom
set_key bool /apps/panel/default_profiles/medium/panels
/00000001/hide_buttons_enabled false
set_key string /apps/panel/default_profiles/medium/panels
/00000001/panel_background_type no-background
# Define the first launcher
set_key string /apps/panel/default_profiles/medium/objects
/00000001/object_type launcher-object
set_key string /apps/panel/default_profiles/medium/objects
/00000001/launcher_location 'applications:///nautilus.desktop'
set_key string /apps/panel/default_profiles/medium/objects
/00000001/panel_id 00000001
set_key int /apps/panel/default_profiles/medium/objects
/00000001/position 20
# Define the second launcher
set_key string /apps/panel/default_profiles/medium/objects
/00000002/object_type launcher-object
set_key string /apps/panel/default_profiles/medium/objects
/00000002/launcher_location 'applications:///System/gnome-terminal.desktop'
set_key string /apps/panel/default_profiles/medium/objects
/00000002/panel_id 00000001
set_key int /apps/panel/default_profiles/medium/objects
/00000002/position 25
# Define the applet
set_key string /apps/panel/default_profiles/medium/applets
/00000001/object_type bonobo-applet
set_key string /apps/panel/default_profiles/medium/applets
/00000001/bonobo_iid OAFIID:GNOME_TasklistApplet
set_key string /apps/panel/default_profiles/medium/applets
/00000001/panel_id 00000001
set_key int /apps/panel/default_profiles/medium/applets
/00000001/position 25
Setting Look-and-Feel PreferencesThe following sections describe how to assign mandatory or default values to look-and-feel preferences. To Set Font PreferencesTo set font preferences, you modify the values of two preference keys. The following table shows the keys to modify, and the part of the user interface to which the keys correspond:
For example, to set Sans 12 as the mandatory application font, run the following command: # gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --type string --set /desktop/gnome/interface/font_name “Sans 12” To set palatino 12 as the default desktop object font, run the following command: # gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults --type string --set /apps/nautilus/preferences/desktop_font “palatino 12” To Set Desktop Background PreferencesTo set desktop background preferences, you modify the values of the preference keys in the /desktop/gnome/background location. For example, to set a mandatory image for the desktop background, run the following command: # gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --type string --set /desktop/gnome/background/picture_filename filename.png To set a default value for this preference, run the following command: # gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults --type string --set /desktop/gnome/background/picture_filename filename.png You can also set other desktop background preferences. For information on the other desktop background preferences, see the desktop_gnome_background.schemas schema definition file. To Set Splash Image PreferencesTo set splash image preferences, you modify the value of the preference keys in the /apps/gnome-session/options/ location. For example, if you do not want users ever to see a splash image, set a mandatory value as follows: # gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory --type bool --set /apps/gnome-session/options/show_splash_screen false To set a default value for this preference, run the following command: # gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults --type bool --set /apps/gnome-session/options/show_splash_screen false You can also set other splash image preferences. For information on the other splash image preferences, see the gnome-session.schemas schema definition file. To Restore Default Preference ValuesTo restore the default preference values for a user, run the following command: # gconftool-2 --direct --config-source user-configuration-source --recursive-unset Replace user-configuration-source with the configuration source in the .gconf directory in the home directory of the user. This command resets the values of all preference keys, in all subdirectories, from the user setting to the setting in the default configuration source. |
||||||||||||||||||||||||||||