A single interface to the settings of different desktop environments

Different desktop environments on *nix usually have different configuration methods for the same setting. This makes it hard for developers to handle desktop settings in their program.

settingsctl is a cross-desktop (*nix) tool to handle desktop settings.

Get settingsctl Get started

settingsctl is Free software (GPL v3+).

Examples


$ settingsctl get appearance.desktop.wallpaper
/path/to/wallpaper

$ settingsctl get power.screen-lock.enabled
true

$ settingsctl set power.screen-lock.timeout 20
power.screen-lock.timeout → 20
		

(All units in SI, so 20 → 20 seconds)

Intended as a replacement for xdg-settings which is a joke.

Usage

settingsctl <command> [setting] [--json]

See: A tutorial on settingsctl