gnoblin.configure
Set Gnoblin's compositor, input, session, and window-management options with
gnoblin.configure:
On this page
gnoblin.configure {
window_management = {focus_mode = "click"},
}Defaults apply before your config loads. Included files merge maps, replace lists, and later values win. Shell clients keep their own presentation settings; Gnoblin config controls compositor and session behavior.
Sizes use logical pixels. Window rules distinguish application windows
(type = "window") from layer surfaces such as bars and docks
(type = "layer").
Settings
For the active file path, bundled defaults, and restoring the default config tree, see Configuration files.
Each entry below is a real top-level key accepted by gnoblin.configure.
An unknown top-level key does nothing. The reload still succeeds, but
gnoblinctl config reload includes the diagnostic in its warnings list.
Gnoblin also logs it and publishes a configuration notice for the shell.
A clean reload returns an empty list and clears the configuration notice.
An existing previous-session crash notice takes priority and survives reloads; warnings remain available in the reload result.
For example, touchpad belongs under input.touchpad, not at the top level.
Use the touchpad reference for its fields.
Diagnostics use normalized names, so not_a_section appears as
not-a-section. See reload feedback
for the result and event fields.
gnoblin.configure.keybindingsgnoblin.configure.window_managementgnoblin.configure.compositorgnoblin.configure.inputgnoblin.configure.input_sourcesgnoblin.configure.monitorsgnoblin.configure.touchpad_gesturesgnoblin.configure.locationgnoblin.configure.promptsgnoblin.configure.authgnoblin.configure.portalsgnoblin.configure.layer_shellgnoblin.configure.protocolsgnoblin.configure.frame_renderersgnoblin.configure.cursorgnoblin.configure.xwaylandgnoblin.configure.shortcutsgnoblin.configure.autostart
Use gnoblin.snapshot() to inspect the config assembled
so far.
Use Lua events to set values from the window under the pointer when the config loads.
To follow GNOME's light or dark preference in window rules, see light and dark appearance.
See recipes for complete examples and file loading for include order and reload behavior.
Type definition
Schema pseudocode: ? marks an optional section. See each page for its
nested fields and accepted values.
gnoblin.configure {
keybindings = {...}?,
window_management = {...}?,
compositor = {...}?,
input = {...}?,
input_sources = {...}?,
monitors = {...}?,
touchpad_gestures = {...}?,
location = {...}?,
prompts = {...}?,
auth = {...}?,
portals = {...}?,
layer_shell = {...}?,
protocols = {...}?,
frame_renderers = {...}?,
cursor = {...}?,
xwayland = {...}?,
shortcuts = {...}?,
autostart = {...}?,
}