gsettings-schema-convert
Convert GSettings schemas to binary format
SYNOPSIS
gsettings-schema-convert [--dry-run] SCHEMA [SCHEMA ...]
PARAMETERS
--dry-run
Preview conversion actions without modifying files.
Useful for testing schema availability and output.
DESCRIPTION
gsettings-schema-convert is a GLib utility for migrating configuration schemas from the obsolete GConf system—used in GNOME 2—to the modern GSettings framework introduced in GNOME 3. GConf relied on a client-server model with XML schemas defining keys, types, defaults, and ranges. GSettings uses a simpler keyfile-based XML format with compiled binary caches for faster access.
The tool automatically locates GConf schema files named after the provided SCHEMA argument (e.g., org.gnome.example.schemas) in standard paths like /usr/share/gconf/schemas/ and system-wide GConf directories. It generates equivalent .gschema.xml files in /usr/share/glib-2.0/schemas/, mapping keys, types (boolean, int, string, etc.), defaults, summaries, and descriptions. Complex GConf features like locales or lists may require manual adjustments post-conversion.
Usage is straightforward for package maintainers or sysadmins during upgrades. Run it as root for system schemas. Always follow with glib-compile-schemas /usr/share/glib-2.0/schemas/ to generate binary .gschema files, enabling applications to read the new schemas.
In contemporary Linux distributions, GConf is unmaintained, making this tool niche for legacy app support, distro migrations, or Flatpak/Snap schema handling. It ensures backward compatibility without rewriting app code.
CAVEATS
Requires root for system directories.
Post-conversion, run glib-compile-schemas to activate schemas.
Not all GConf features (e.g., advanced locales) convert perfectly; manual review needed.
GConf deprecated since 2011.
INPUT/OUTPUT PATHS
Reads from:
/usr/share/gconf/schemas/SCHEMA.schemas
Writes to:
/usr/share/glib-2.0/schemas/SCHEMA.gschema.xml
EXAMPLE USAGE
gsettings-schema-convert org.gnome.nautilus
Converts Nautilus GConf schema.
gsettings-schema-convert --dry-run org.gnome.*
Previews all GNOME schemas.
HISTORY
Debuted in GLib 2.28 (March 2010) for GNOME 3's GConf-to-GSettings shift. Integral to Fedora 14+, Ubuntu 11.04 migrations. Usage declined post-2012 as native GSettings adoption grew; now legacy maintenance tool.
SEE ALSO
gsettings(1), glib-compile-schemas(1), gconftool-2(1)


