My Nix Configuration
2
fork

Configure Feed

Select the types of activity you want to include in your feed.

at main 291 lines 8.5 kB view raw
1input { 2 warp-mouse-to-focus 3 focus-follows-mouse max-scroll-amount="0%" 4 5 keyboard { 6 repeat-delay 200 7 repeat-rate 20 8 xkb { 9 options "caps:escape" 10 } 11 } 12 13 touchpad { 14 tap 15 dwt 16 drag false 17 tap-button-map "left-middle-right" 18 scroll-factor 1.5 19 } 20 21 mouse { 22 scroll-factor 1.5 23 } 24} 25 26output "Acer Technologies SA241Y 0x1497CF17" { 27 mode "1920x1080@74.973" 28 scale 1 29 transform "normal" 30 position x=2560 y=0 31 focus-at-startup 32} 33 34output "eDP-1" { 35 mode "2560x1600@165" 36 scale 1 37 transform "normal" 38 position x=0 y=0 39 variable-refresh-rate 40 focus-at-startup 41} 42 43layout { 44 gaps 5 45 background-color "transparent" 46 center-focused-column "never" 47 48 preset-column-widths { 49 proportion 0.33333 50 proportion 0.5 51 proportion 0.66667 52 proportion 0.75 53 proportion 1.0 54 } 55 preset-window-heights { 56 proportion 0.33333 57 proportion 0.5 58 proportion 0.75 59 proportion 1.0 60 } 61 default-column-width { proportion 0.75; } 62 63 focus-ring { 64 width 4 65 active-color "#a6e3a1" 66 inactive-color "#6c7086" 67 } 68 border { 69 off 70 } 71 struts { 72 left 5 73 right 5 74 top 5 75 bottom 5 76 } 77} 78 79prefer-no-csd 80 81environment { 82 XDG_CURRENT_DESKTOP "niri" 83 QT_QPA_PLATFORM "wayland" 84 ELECTRON_OZONE_PLATFORM_HINT "auto" 85 QT_QPA_PLATFORMTHEME "gtk3" 86 QT_QPA_PLATFORMTHEME_QT6 "gtk3" 87 GDK_BACKEND "wayland,x11,*" 88 WAYLAND_DISPLAY "wayland-1" 89} 90 91spawn-sh-at-startup "sleep 2 && systemctl restart --user 'xdg-desktop-portal*'" 92spawn-at-startup "feishin" 93spawn-at-startup "equibop" 94spawn-at-startup "ghostty" 95spawn-at-startup "fluffychat" 96spawn-at-startup "firefox" 97 98hotkey-overlay { 99 skip-at-startup 100} 101 102workspace "terminal" { 103 open-on-output "Acer Technologies SA241Y 0x1497CF17" 104} 105workspace "browser" { 106 open-on-output "Acer Technologies SA241Y 0x1497CF17" 107} 108workspace "chat" { 109 open-on-output "Acer Technologies SA241Y 0x1497CF17" 110} 111 112screenshot-path "~/Pictures/screenshots/%Y/%m/%d-%H-%M-%S.png" 113 114window-rule { 115 match app-id=r#"firefox$"# title="^Picture-in-Picture$" 116 open-floating true 117} 118window-rule { 119 match title="Celeste" 120 open-fullscreen true 121} 122 123window-rule { 124 match app-id="SpaceIdle" 125 match app-id="equibop" 126 match app-id="firefox" 127 open-maximized true 128} 129 130window-rule { 131 match at-startup=true app-id="equibop" 132 match at-startup=true app-id="fluffychat" 133 match at-startup=true app-id="feishin" 134 open-on-workspace "chat" 135} 136window-rule { 137 match at-startup=true app-id="com.mitchellh.ghostty" 138 open-on-workspace "terminal" 139} 140 141window-rule { 142 match at-startup=true app-id="firefox" 143 open-on-workspace "browser" 144} 145 146 147window-rule { 148 match title=r#"^Borderlands 2"# 149 open-fullscreen true 150 open-on-output "Acer Technologies SA241Y 0x1497CF17" 151} 152 153binds { 154 Super+Shift+Slash { show-hotkey-overlay; } 155 156 Super+Space hotkey-overlay-title="Launcher" { spawn "dms" "ipc" "spotlight" "toggle"; } 157 Super+B hotkey-overlay-title="Bitwarden" { spawn "dms" "ipc" "spotlight" "openQuery" "bw "; } 158 Super+Return hotkey-overlay-title="Open Terminal" { spawn "ghostty"; } 159 Super+X hotkey-overlay-title="Power Menu" { spawn "dms" "ipc" "powermenu" "toggle"; } 160 Super+Shift+X hotkey-overlay-title="Lock Session" { spawn "dms" "ipc" "lock" "lock"; } 161 162 XF86AudioRaiseVolume hotkey-overlay-title="Volume Up" allow-when-locked=true { spawn "dms" "ipc" "audio" "increment" "5"; } 163 XF86AudioLowerVolume hotkey-overlay-title="Volume Down" allow-when-locked=true { spawn "dms" "ipc" "audio" "decrement" "5"; } 164 XF86AudioMute hotkey-overlay-title="Mute Audio" allow-when-locked=true { spawn "dms" "ipc" "audio" "mute"; } 165 XF86AudioPlay allow-when-locked=true { spawn "dms" "ipc" "mpris" "playPause"; } 166 XF86AudioStop allow-when-locked=true { spawn "dms" "ipc" "mpris" "stop"; } 167 XF86AudioPrev allow-when-locked=true { spawn "dms" "ipc" "mpris" "previous"; } 168 XF86AudioNext allow-when-locked=true { spawn "dms" "ipc" "mpris" "next"; } 169 170 XF86MonBrightnessUp allow-when-locked=true { spawn "dms" "ipc" "brightness" "increment" "5" ""; } 171 XF86MonBrightnessDown allow-when-locked=true { spawn "dms" "ipc" "brightness" "decrement" "5" ""; } 172 173 Super+O repeat=false { toggle-overview; } 174 175 Super+Q repeat=false { close-window; } 176 177 Mod+Left { focus-column-left; } 178 Mod+Down { focus-window-down; } 179 Mod+Up { focus-window-up; } 180 Mod+Right { focus-column-right; } 181 Mod+H { focus-column-left; } 182 Mod+J { focus-window-down; } 183 Mod+K { focus-window-up; } 184 Mod+L { focus-column-right; } 185 186 Mod+Shift+Left { move-column-left; } 187 Mod+Shift+Down { move-window-down-or-to-workspace-down; } 188 Mod+Shift+Up { move-window-up-or-to-workspace-up; } 189 Mod+Shift+Right { move-column-right; } 190 Mod+Shift+H { move-column-left; } 191 Mod+Shift+J { move-window-down-or-to-workspace-down; } 192 Mod+Shift+K { move-window-up-or-to-workspace-up; } 193 Mod+Shift+L { move-column-right; } 194 195 Mod+Home { focus-column-first; } 196 Mod+End { focus-column-last; } 197 Mod+Ctrl+Home { move-column-to-first; } 198 Mod+Ctrl+End { move-column-to-last; } 199 200 Mod+Shift+Ctrl+Left { move-column-to-monitor-left; } 201 Mod+Shift+Ctrl+Down { move-column-to-monitor-down; } 202 Mod+Shift+Ctrl+Up { move-column-to-monitor-up; } 203 Mod+Shift+Ctrl+Right { move-column-to-monitor-right; } 204 Mod+Shift+Ctrl+H { move-column-to-monitor-left; } 205 Mod+Shift+Ctrl+J { move-column-to-monitor-down; } 206 Mod+Shift+Ctrl+K { move-column-to-monitor-up; } 207 Mod+Shift+Ctrl+L { move-column-to-monitor-right; } 208 209 Mod+WheelScrollDown cooldown-ms=150 { focus-workspace-down; } 210 Mod+WheelScrollUp cooldown-ms=150 { focus-workspace-up; } 211 Mod+Ctrl+WheelScrollDown cooldown-ms=150 { move-column-to-workspace-down; } 212 Mod+Ctrl+WheelScrollUp cooldown-ms=150 { move-column-to-workspace-up; } 213 214 Mod+WheelScrollRight { focus-column-right; } 215 Mod+WheelScrollLeft { focus-column-left; } 216 Mod+Ctrl+WheelScrollRight { move-column-right; } 217 Mod+Ctrl+WheelScrollLeft { move-column-left; } 218 219 // Usually scrolling up and down with Shift in applications results in 220 // horizontal scrolling; these binds replicate that. 221 Mod+Shift+WheelScrollDown { focus-column-right; } 222 Mod+Shift+WheelScrollUp { focus-column-left; } 223 Mod+Ctrl+Shift+WheelScrollDown { move-column-right; } 224 Mod+Ctrl+Shift+WheelScrollUp { move-column-left; } 225 226 Mod+1 { focus-workspace 1; } 227 Mod+2 { focus-workspace 2; } 228 Mod+3 { focus-workspace 3; } 229 Mod+4 { focus-workspace 4; } 230 Mod+5 { focus-workspace 5; } 231 Mod+6 { focus-workspace 6; } 232 Mod+7 { focus-workspace 7; } 233 Mod+8 { focus-workspace 8; } 234 Mod+9 { focus-workspace 9; } 235 Mod+Shift+1 { move-window-to-workspace 1; } 236 Mod+Shift+2 { move-window-to-workspace 2; } 237 Mod+Shift+3 { move-window-to-workspace 3; } 238 Mod+Shift+4 { move-window-to-workspace 4; } 239 Mod+Shift+5 { move-window-to-workspace 5; } 240 Mod+Shift+6 { move-window-to-workspace 6; } 241 Mod+Shift+7 { move-window-to-workspace 7; } 242 Mod+Shift+8 { move-window-to-workspace 8; } 243 Mod+Shift+9 { move-window-to-workspace 9; } 244 245 Mod+Tab { focus-workspace-previous; } 246 247 Mod+BracketLeft { consume-or-expel-window-left; } 248 Mod+BracketRight { consume-or-expel-window-right; } 249 250 // Consume one window from the right to the bottom of the focused column. 251 Mod+Comma { consume-window-into-column; } 252 // Expel the bottom window from the focused column to the right. 253 Mod+Period { expel-window-from-column; } 254 255 Mod+R { switch-preset-column-width; } 256 Mod+Shift+R { switch-preset-window-height; } 257 Mod+Ctrl+R { reset-window-height; } 258 Mod+F { maximize-column; } 259 Mod+Shift+F { fullscreen-window; } 260 261 Mod+Ctrl+F { expand-column-to-available-width; } 262 263 Mod+C { center-column; } 264 265 Mod+Ctrl+C { center-visible-columns; } 266 267 Mod+Shift+Equal { toggle-window-floating; } 268 Mod+Equal { switch-focus-between-floating-and-tiling; } 269 270 Mod+W { toggle-column-tabbed-display; } 271 272 Print { screenshot; } 273 Shift+F3 { screenshot-screen; } 274 Shift+F4 { screenshot; } 275 276 Mod+Shift+E { quit; } 277 278 Ctrl+Alt+L { spawn "loginctl" "lock-session"; } 279} 280 281gestures { 282 hot-corners { 283 off 284 } 285} 286 287// DMS Integration 288layer-rule { 289 match namespace="quickshell" 290 place-within-backdrop true 291}