mirror of
https://github.com/ryan4yin/nix-config.git
synced 2026-03-31 06:33:07 +02:00
69 lines
1.8 KiB
Nix
69 lines
1.8 KiB
Nix
niri: {
|
|
programs.niri.config =
|
|
let
|
|
inherit (niri.lib.kdl)
|
|
node
|
|
plain
|
|
leaf
|
|
flag
|
|
;
|
|
in
|
|
[
|
|
# ============= Window Rules =============
|
|
# Get all the window's information via:
|
|
# niri msg windows
|
|
|
|
# --------------- Terminal ---------------
|
|
# foot → ws 13
|
|
(plain "window-rule" [
|
|
(leaf "match" { app-id = "foot"; })
|
|
(leaf "open-on-workspace" "1terminal")
|
|
(leaf "open-maximized" true)
|
|
])
|
|
|
|
# Alacritty → ws 10
|
|
(plain "window-rule" [
|
|
(leaf "match" { app-id = "Alacritty"; })
|
|
(leaf "open-on-workspace" "1terminal")
|
|
(leaf "open-maximized" true)
|
|
])
|
|
|
|
# Ghostty → ws 14
|
|
(plain "window-rule" [
|
|
(leaf "match" { app-id = "com.mitchellh.ghostty"; })
|
|
(leaf "open-on-workspace" "1terminal")
|
|
(leaf "open-maximized" true)
|
|
])
|
|
|
|
# --------------- Networking ---------------
|
|
|
|
# Clash Verge → ws 7
|
|
(plain "window-rule" [
|
|
(leaf "match" { app-id = "clash-verge"; })
|
|
(leaf "open-on-workspace" "0other")
|
|
])
|
|
|
|
# --------------- Browser ---------------
|
|
|
|
# Firefox → ws 11
|
|
(plain "window-rule" [
|
|
(leaf "match" { app-id = "firefox"; })
|
|
(leaf "open-on-workspace" "2browser")
|
|
(leaf "open-maximized" true)
|
|
])
|
|
# Google Chrome → ws 12
|
|
(plain "window-rule" [
|
|
(leaf "match" { app-id = "google-chrome"; })
|
|
(leaf "open-on-workspace" "2browser")
|
|
(leaf "open-maximized" true)
|
|
])
|
|
|
|
# --------------- Chatting ---------------
|
|
# Telegram → ws 6
|
|
(plain "window-rule" [
|
|
(leaf "match" { app-id = "org.telegram.desktop"; })
|
|
(leaf "open-on-workspace" "3chat")
|
|
])
|
|
];
|
|
}
|