cbrst/nix
ModulesHome Manager

Niri

The scrolling tiling Wayland compositor configuration and keybindings.

Niri is the Wayland compositor on Asgard. The NixOS desktop module installs it; the Home Manager module in modules/home/niri/ writes its configuration.

How the configuration is built

config.kdl is a template. Its window-border gradient and inactive colour come from the active theme family. When the host sets gaming.vrrOutput, an output block enabling on-demand variable refresh rate for that display is prepended; other hosts get no VRR output block.

The module also installs the Bibata Modern Classic cursor (24 px) for Wayland, GTK, and X11 applications.

Layout and appearance

  • Columns default to half the screen, with ⅓, ½, and ⅔ presets. A single column is centred, and the focused column is centred when it would overflow.
  • 12 px gaps, a 2 px gradient border instead of a focus ring, rounded 8 px corners that also clip window content, and soft shadows. Applications are asked not to draw their own decorations so the rounded geometry stays clean.
  • Tabbed columns show a gradient indicator on the left.
  • Animations run slightly faster than default.
  • Mouse acceleration is off (flat profile).

Window rules

WindowsRule
Steam games and GamescopeVariable refresh rate enabled (when the output allows it)
Firefox and BraveOpen at 80% width
Firefox Picture-in-PictureFloating, 480×270, in the bottom-right corner
Volume, Bluetooth, and network settings dialogsFloating

Noctalia's bar, notifications, panels, dock, and on-screen displays get blur, a little noise, and extra saturation. Noctalia is started with QT_QPA_PLATFORMTHEME=gtk3 so it follows the GTK appearance without changing the environment for other applications.

Keybindings

Mod is the Super key.

KeysAction
Mod+ReturnGhostty
Mod+BFirefox
Mod+SpaceNoctalia launcher
Mod+VNoctalia clipboard history
Mod+QClose window
Mod+OOverview
Mod+TToggle tabbed column
Mod+H/J/K/LFocus left, down, up, right
Mod+Alt+H/J/K/LMove column or window
Mod+F, Mod+Shift+FMaximise column, full screen
Mod+Shift+SpaceToggle floating
Mod+, / Mod+.Narrow or widen the column by 10%
Mod+Alt+, / Mod+Alt+.Shrink or grow the window height by 10%
Mod+- / Mod+=Move the window into or out of the neighbouring column
Mod+1…Mod+8Focus workspace
Mod+Alt+1…Mod+Alt+8Move the column to a workspace
Mod+I / Mod+N, Mod+wheelPrevious or next workspace
Media keysVolume and playback through Noctalia, also while locked
Print, Ctrl+PrintScreenshot the screen or the window
Mod+Shift+EQuit Niri

Last updated on

On this page