Window rules
Rules match windows by app-id (Wayland) or class (XWayland), with optional title, and are evaluated in order; every matching rule’s properties merge.
window-rule {
match app-id="signal"
open-on-workspace "10"
}
window-rule {
match app-id="pavucontrol"
open-floating true
}
window-rule {
match app-id=r#"firefox$"# title="^Picture-in-Picture$"
open-floating true
}
window-rule {
match app-id=r#"^org\.wezfurlong\.wezterm$"#
default-window-width {}
}
Match values are regular expressions. open-on-workspace takes a workspace name or index. open-floating, default-window-width, and iconify-action are the rule properties Atrium adds to what niri already supports; the niri rule properties (opacity, borders, block-out-from screencast, and so on) apply as documented upstream.
Find an app’s id with atrium msg pick-window or atrium msg windows.