145 lines
3.6 KiB
KDL
145 lines
3.6 KiB
KDL
config-notification {
|
|
disable-failed
|
|
}
|
|
|
|
gestures {
|
|
hot-corners {
|
|
off
|
|
}
|
|
}
|
|
|
|
hotkey-overlay {
|
|
skip-at-startup
|
|
}
|
|
|
|
animations {
|
|
workspace-switch {
|
|
spring damping-ratio=0.80 stiffness=523 epsilon=0.0001
|
|
}
|
|
window-open {
|
|
duration-ms 150
|
|
curve "ease-out-expo"
|
|
}
|
|
window-close {
|
|
duration-ms 150
|
|
curve "ease-out-quad"
|
|
}
|
|
horizontal-view-movement {
|
|
spring damping-ratio=0.85 stiffness=423 epsilon=0.0001
|
|
}
|
|
window-movement {
|
|
spring damping-ratio=0.75 stiffness=323 epsilon=0.0001
|
|
}
|
|
window-resize {
|
|
spring damping-ratio=0.85 stiffness=423 epsilon=0.0001
|
|
}
|
|
config-notification-open-close {
|
|
spring damping-ratio=0.65 stiffness=923 epsilon=0.001
|
|
}
|
|
screenshot-ui-open {
|
|
duration-ms 200
|
|
curve "ease-out-quad"
|
|
}
|
|
overview-open-close {
|
|
spring damping-ratio=0.85 stiffness=800 epsilon=0.0001
|
|
}
|
|
}
|
|
// Window rules let you adjust behavior for individual windows.
|
|
// Find more information on the wiki:
|
|
// https://github.com/YaLTeR/niri/wiki/Configuration:-Window-Rules
|
|
// Work around WezTerm's initial configure bug
|
|
// by setting an empty default-column-width.
|
|
window-rule {
|
|
// This regular expression is intentionally made as specific as possible,
|
|
// since this is the default config, and we want no false positives.
|
|
// You can get away with just app-id="wezterm" if you want.
|
|
match app-id=r#"^org\.wezfurlong\.wezterm$"#
|
|
default-column-width {}
|
|
}
|
|
window-rule {
|
|
match app-id=r#"^org\.gnome\."#
|
|
draw-border-with-background false
|
|
geometry-corner-radius 12
|
|
clip-to-geometry true
|
|
}
|
|
window-rule {
|
|
match app-id=r#"^gnome-control-center$"#
|
|
match app-id=r#"^pavucontrol$"#
|
|
match app-id=r#"^nm-connection-editor$"#
|
|
default-column-width { proportion 0.5; }
|
|
open-floating false
|
|
}
|
|
window-rule {
|
|
match app-id=r#"^gnome-calculator$"#
|
|
match app-id=r#"^galculator$"#
|
|
match app-id=r#"^blueman-manager$"#
|
|
match app-id=r#"^org\.gnome\.Nautilus$"#
|
|
match app-id=r#"^xdg-desktop-portal$"#
|
|
open-floating true
|
|
}
|
|
window-rule {
|
|
match app-id=r#"^steam$"# title=r#"^notificationtoasts_\d+_desktop$"#
|
|
default-floating-position x=10 y=10 relative-to="bottom-right"
|
|
open-focused false
|
|
}
|
|
window-rule {
|
|
match app-id=r#"^org\.wezfurlong\.wezterm$"#
|
|
match app-id="Alacritty"
|
|
match app-id="zen"
|
|
match app-id="com.mitchellh.ghostty"
|
|
match app-id="kitty"
|
|
draw-border-with-background false
|
|
}
|
|
// Open dms windows as floating by default
|
|
window-rule {
|
|
match app-id=r#"org.quickshell$"#
|
|
open-floating true
|
|
}
|
|
debug {
|
|
honor-xdg-activation-with-invalid-serial
|
|
}
|
|
|
|
// Override to disable super+tab
|
|
recent-windows {
|
|
binds {
|
|
Alt+Tab { next-window scope="output"; }
|
|
Alt+Shift+Tab { previous-window scope="output"; }
|
|
Alt+grave { next-window filter="app-id"; }
|
|
Alt+Shift+grave { previous-window filter="app-id"; }
|
|
}
|
|
}
|
|
|
|
// Include dms files
|
|
include "dms/colors.kdl"
|
|
include "dms/layout.kdl"
|
|
include "dms/alttab.kdl"
|
|
include "dms/binds.kdl"
|
|
include "dms/outputs.kdl"
|
|
include "dms/cursor.kdl"
|
|
|
|
// Niri configuration
|
|
|
|
// Global Settings & Environment
|
|
include "./niri.d/environment.kdl"
|
|
include "./niri.d/startup.kdl"
|
|
|
|
// Hardware & Input
|
|
include "./niri.d/input.kdl"
|
|
include "./niri.d/output.kdl"
|
|
|
|
// Windows and Workspaces
|
|
include "niri.d/workspaces.kdl"
|
|
include "niri.d/window-rules.kdl"
|
|
|
|
// Look & Feel
|
|
include "./niri.d/layout.kdl"
|
|
include "./niri.d/animation.kdl"
|
|
include "./niri.d/gestures.kdl"
|
|
|
|
// Keybinds
|
|
include "./niri.d/keybinds.kdl"
|
|
|
|
// External Configs
|
|
include "./noctalia.kdl"
|
|
|
|
include "dms/windowrules.kdl" |