omniflake/dotfiles/niri/config.kdl
2026-04-15 22:04:14 +02:00

203 lines
4 KiB
Text
Executable file

/-output "eDP-1" {
mode "1920x1080@120.030"
scale 2
transform "normal"
position x=1280 y=0
}
layout {
preset-column-widths {
proportion 0.381966
proportion 0.5
proportion 0.618034
}
default-column-width { proportion 0.5; }
}
environment {
TERMINAL "foot"
XDG_CURRENT_DESKTOP "niri"
}
hotkey-overlay {
skip-at-startup
}
prefer-no-csd
screenshot-path "~/media/img/screenshots/screenshot_%Y-%m-%d_%H-%M-%S.png"
// debug {
// honor-xdg-activation-with-invalid-serial
// }
recent-windows {
binds {
Super+Tab { next-window scope="output"; }
Super+Shift+Tab { previous-window scope="output"; }
Super+grave { next-window filter="app-id"; }
Super+Shift+grave { previous-window filter="app-id"; }
}
}
animations {
workspace-switch {
spring damping-ratio=0.9 stiffness=2000 epsilon=0.001
}
window-open {
duration-ms 50
curve "ease-out-expo"
}
window-close {
duration-ms 50
curve "ease-out-quad"
}
horizontal-view-movement {
spring damping-ratio=0.9 stiffness=2000 epsilon=0.001
}
window-movement {
// spring damping-ratio=0.75 stiffness=323 epsilon=0.0001
spring damping-ratio=0.9 stiffness=2000 epsilon=0.001
}
window-resize {
spring damping-ratio=0.9 stiffness=2000 epsilon=0.001
}
config-notification-open-close {
spring damping-ratio=0.9 stiffness=2000 epsilon=0.001
}
screenshot-ui-open {
duration-ms 50
curve "ease-out-quad"
}
overview-open-close {
spring damping-ratio=0.9 stiffness=2000 epsilon=0.001
}
}
input {
keyboard {
xkb {
layout "us,de,th"
variant "altgr-intl"
options "grp:alt_space_toggle"
}
numlock
}
touchpad {
tap
natural-scroll
click-method "clickfinger"
}
trackball {
natural-scroll
accel-speed -0.3
}
mouse {
}
trackpoint {
}
// warp-mouse-to-focus
focus-follows-mouse max-scroll-amount="0%"
}
layer-rule {
match namespace="^quickshell$"
place-within-backdrop false
}
layer-rule {
match namespace="dms:blurwallpaper"
place-within-backdrop true
}
window-rule {
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
}
window-rule {
match app-id=r#"firefox$"# title="^Picture-in-Picture$"
match app-id="zoom"
open-floating true
}
window-rule {
match app-id="firefox"
default-column-width {}
open-on-workspace "browser"
}
window-rule {
match app-id=r#"org.quickshell$"#
open-floating true
}
window-rule {
match app-id=r#"org.quickshell$"# title="^Settings$"
open-floating false
}
// include optional=true "user-config.kdl"
include "user-config.kdl"
// Include dms files
include "dms/colors.kdl"
include "dms/layout.kdl"
include "dms/alttab.kdl"
include "dms/outputs.kdl"
include "dms/cursor.kdl"
include "dms/binds.kdl"