Skip to content

Wallpaper ​

[wallpaper] sets the desktop background. An image can differ between light and dark mode, and each monitor can have its own.

[wallpaper]

Show a second background surface, glimpse-backdrop, behind your Overview in niri. Add a place-within-backdrop layer rule matching this namespace to see it.

Its settings are listed under [wallpaper.backdrop].

colorstring default "#000000"

Your wallpaper's background color, visible when an image is missing or doesn't fill the screen.

fitone of default "cover"

How your wallpaper image fits the screen.

  • "cover"
  • "contain"
  • "fill"
  • "center" Center your image without stretching it.
imagestring

The wallpaper image, used as-is or under the light color scheme when image-dark is set.

Default
"/usr/share/glimpse/themes/adwaita/default.jpg"
image-darkstringnot set by default

The wallpaper image under the dark color scheme. Falls back to image when unset.

outputslist of tables

Separate wallpaper settings for each monitor, matched by connector name such as DP-1. Settings you leave unset use the values above.

Its settings are listed under [[wallpaper.outputs]].

transitionone of default "fade"

How one image replaces another.

  • "none" Switch immediately.
  • "fade" Fade between images.
transition-msinteger from 0 to 5000 default 500

Duration of that transition, in milliseconds.

Beyond the path rules in the guide, a relative image path is also tried in the installed wallpapers data directory. PNG, JPEG, WebP, GIF and BMP render. color takes any CSS color string, and one that does not parse becomes opaque black. A bad color, a missing image file and an unreadable one are only logged, never caught by glimpsectl config validate; the guide covers what shows for the file cases.

[[wallpaper.outputs]]

A per-output override of the wallpaper (and backdrop) shown on one connector. Every field but monitor is optional and falls back to the corresponding value in [wallpaper], or [wallpaper.backdrop] for the nested backdrop fields, when unset.

backdropvaluenot set by default

Overrides [wallpaper.backdrop] for this connector.

colorstringnot set by default

Overrides [wallpaper] color for this connector.

fitvaluenot set by default

Overrides [wallpaper] fit for this connector.

imagestringnot set by default

Overrides [wallpaper] image for this connector.

image-darkstringnot set by default

Overrides [wallpaper] image-dark for this connector.

monitorstringnot set by default

The connector this override applies to, e.g. "DP-2".

transitionvaluenot set by default

Overrides [wallpaper] transition for this connector.

transition-msinteger from 0 to 5000not set by default

Overrides [wallpaper] transition-ms for this connector.

[wallpaper.backdrop]

Show a second background surface, glimpse-backdrop, behind your Overview in niri. Add a place-within-backdrop layer rule matching this namespace to see it.

blur-radiusinteger from 0 to 128 default 24

How much you blur your overview background, in pixels, from 0 to 128.

downscale-factorinteger from 1 to 16 default 4

How much you shrink your overview background before blurring it, from 1 to 16. Higher values use less memory but lose detail.

enabledboolean default true

Show a separate background in your overview.

imagestringnot set by default

Source image. Unset derives it from [wallpaper] image.

image-darkstringnot set by default

Source image under the dark color scheme. Unset derives it from [wallpaper] image-dark.

The backdrop is a blurred copy of the wallpaper on its own surface, created by default. It shows only where your compositor places it; in niri this layer rule puts it behind the Overview:

kdl
// ~/.config/niri/config.kdl
layer-rule {
    match namespace="^glimpse-backdrop$"
    place-within-backdrop true
}

A different image for an external monitor, in both modes:

toml
[wallpaper]
image = "~/Pictures/walls/dunes.jpg"
image-dark = "~/Pictures/walls/dunes-night.jpg"

[[wallpaper.outputs]]
monitor = "DP-1"
image = "~/Pictures/walls/coast.jpg"
image-dark = "~/Pictures/walls/coast-night.jpg"

Released under the BSD 3-Clause license.