dconf

Its main purpose is to provide a back end to GSettings on platforms that don't already have configuration storage systems.

PolicyKit integration is planned so that a normal user may temporarily gain the ability to, for example, write to the keys under /system/ (or /default/).

This means that programs like the GNOME Display Manager configuration utility no longer have to be run as root.

Typically, reading a key from dconf involves zero system calls and zero context switches.

Avoiding round trips and context switches is desirable in itself, but the real advantage[citation needed] comes from allowing the I/O scheduler in the kernel to do a better job by saturating it with requests coming from all of the applications trying to read their keys (as opposed to a common configuration server serially requesting a single key at a time).

Having all of the keys in a single compact binary format also avoids the intense fragmentation problems currently experienced by the tree-of-directories-of-xml-files approach.

It is a simple database file format that stores a mapping from strings to GVariant values in a way that is extremely efficient for lookups.

GVariant is useful whenever data needs to be serialized, for example when sending method parameters in DBus, or when saving settings using GSettings.

GNOME Tweak Tool gives access to a certain popular subset of the desktop settings.
dconf Architecture
dconf Architecture