Skip to content

gnoblin.configure ​

Set Gnoblin's compositor, input, session, and window-management options with a Lua table:

lua
gnoblin.configure {shell = {minimize_duration = 150}}

Defaults apply before your config loads. Files supplied by your desktop shell can change them. Map values merge, lists replace, and later values win.

Sizes use logical pixels. Window rules distinguish application windows (type = "window") from layer surfaces such as bars and docks (type = "layer").

Settings ​

Each entry below is a real top-level key accepted by gnoblin.configure.

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.

lua
gnoblin.configure {
    shell = {...}?,
    keybindings = {...}?,
    window_management = {...}?,
    compositor = {...}?,
    input = {...}?,
    input_sources = {...}?,
    permissions = {...}?,
    layer_shell = {...}?,
    protocols = {...}?,
    frame_renderers = {...}?,
    cursor = {...}?,
    shortcuts = {...}?,
    autostart = {...}?,
}