Penguin
Annotated edit history of GConf version 2, including all changes. View license author blame.
Rev Author # Line
2 AristotlePagaltzis 1 GConf is [GNOME]'s configuration storage system. It is not tied to [GNOME] and can be used by any other program as well, though.
1 CraigBox 2
2 AristotlePagaltzis 3 If you're looking for configuration for Gnome 2 user applications like [Evolution], you'll find it in GConf. Settings are stored in __.gconf/__ by default (and not normally changed). You can edit the settings using __gconf-editor__ if you want a [GTK] [GUI] or using __gconftool__ from the CommandLine.
4
5 Comparisons with MicrosoftWindows's registry are inevitable. GConf is a database rather than a series of configuration files, but it's XML, it's open and it actually works.
1 CraigBox 6
7 The Windows registry fails because:
8
9 * It's very difficult to manage a large number of computers; system administrators can't install defaults, or push changes out to multiple user computers. Proprietary add-on tools exist that try to resolve this problem in various (rather frightening) ways.
10 * The registry contains lots of undocumented, cryptically-formatted data, and regedit is therefore dangerous and difficult to use.
11 * The registry becomes corrupted, and this tends to destroy the whole operating system installation.
12
13 GConf attempts to leapfrog the registry concept. It's a library which provides a simple configuration data storage interface to applications, and also an architecture that tries to make things easy for system administrators.
14
15 Here are some of the features of GConf:
16
2 AristotlePagaltzis 17 ; Replaceable backend architecture : GConf currently has a single backend that stores configuration data in XML-format text files; however, the architecture allows a Registry-like binary database backend, an LDAP backend, or even a full-blown SQL database backend. The backend used is configurable by the system administrator. This is a valuable feature for IS deparatments managing large numbers of computers.
18 ; Configuration key documentation : Applications can install documentation along with their configuration data, explaining the possible settings and the effect of each configuration key. A regedit-style tool can display this documentation, making it much easier to customize applications without breaking them. The GConf database also stores useful meta-information such as the application that owns a key, when the key was last changed, etc.
19 ; Data change notification service : If configuration data is changed, all interested applications are notified. The notification service works across the network, affecting all login sessions for a single user.
1 CraigBox 20
2 AristotlePagaltzis 21 This means that programs built from components (where each component may be in a separate process) are much easier to write, because if one component changes a setting the others can discover the change and update themselves. [GNOME]'s [Nautilus] file manager f.ex. is actually a collection of applications, including an embedded web browser and various navigation components, which communicate via [CORBA]. However, you want a single preferences dialog located in the top-level "shell" component. Without GConf, a custom protocol would have to be invented for preferences settings to notify embedded components of changes to user preferences.
1 CraigBox 22
23 Notification is also useful if multiple application instances are running. GNOME 2.0 uses this feature to let user interface configuration take effect on-the-fly without restarting any applications; if you turn off toolbar icons, for example, toolbar icons will immediately disappear in all running apps.
24
2 AristotlePagaltzis 25 See also: http://developer.gnome.org/feature/archive/gconf/gconf.html

PHP Warning

lib/blame.php:177: Warning: Invalid argument supplied for foreach() (...repeated 2 times)