diff options
Diffstat (limited to 'accounts/gkleen@sif')
| -rw-r--r-- | accounts/gkleen@sif/niri/default.nix | 33 |
1 files changed, 27 insertions, 6 deletions
diff --git a/accounts/gkleen@sif/niri/default.nix b/accounts/gkleen@sif/niri/default.nix index 50f8ba44..8b95f00f 100644 --- a/accounts/gkleen@sif/niri/default.nix +++ b/accounts/gkleen@sif/niri/default.nix | |||
| @@ -417,7 +417,7 @@ in { | |||
| 417 | (leaf "position" { x = 2560; y = 0; }) | 417 | (leaf "position" { x = 2560; y = 0; }) |
| 418 | ]) | 418 | ]) |
| 419 | (node "output" "HP Inc. HP 727pu CN4417143K" [ | 419 | (node "output" "HP Inc. HP 727pu CN4417143K" [ |
| 420 | (leaf "mode" "2560x1440@120") # 119.998 | 420 | (leaf "mode" "2560x1440@119.998") |
| 421 | (leaf "scale" 1) | 421 | (leaf "scale" 1) |
| 422 | (leaf "position" { x = 2560; y = 0; }) | 422 | (leaf "position" { x = 2560; y = 0; }) |
| 423 | (flag "variable-refresh-rate") | 423 | (flag "variable-refresh-rate") |
| @@ -440,7 +440,7 @@ in { | |||
| 440 | (leaf "top" 0) | 440 | (leaf "top" 0) |
| 441 | (leaf "bottom" 0) | 441 | (leaf "bottom" 0) |
| 442 | ]) | 442 | ]) |
| 443 | (plain "focus-ring" [ | 443 | (plain "border" [ |
| 444 | (leaf "width" 2) | 444 | (leaf "width" 2) |
| 445 | (leaf "active-gradient" { | 445 | (leaf "active-gradient" { |
| 446 | from = "hsla(195 100% 45% 1)"; | 446 | from = "hsla(195 100% 45% 1)"; |
| @@ -455,9 +455,12 @@ in { | |||
| 455 | relative-to = "workspace-view"; | 455 | relative-to = "workspace-view"; |
| 456 | }) | 456 | }) |
| 457 | ]) | 457 | ]) |
| 458 | (plain "focus-ring" [ | ||
| 459 | (flag "off") | ||
| 460 | ]) | ||
| 458 | 461 | ||
| 459 | (plain "preset-column-widths" (map (prop: leaf "proportion" prop) [ | 462 | (plain "preset-column-widths" (map (prop: leaf "proportion" prop) [ |
| 460 | (1. / 4.) (1. / 3.) (1. / 2.) (2. / 3.) (3. / 4.) | 463 | (1. / 4.) (1. / 3.) (1. / 2.) (2. / 3.) (3. / 4.) (1.) |
| 461 | ])) | 464 | ])) |
| 462 | (plain "default-column-width" [ (leaf "proportion" (1. / 2.)) ]) | 465 | (plain "default-column-width" [ (leaf "proportion" (1. / 2.)) ]) |
| 463 | (plain "preset-window-heights" (map (prop: leaf "proportion" prop) [ | 466 | (plain "preset-window-heights" (map (prop: leaf "proportion" prop) [ |
| @@ -467,8 +470,10 @@ in { | |||
| 467 | (flag "always-center-single-column") | 470 | (flag "always-center-single-column") |
| 468 | 471 | ||
| 469 | (plain "tab-indicator" [ | 472 | (plain "tab-indicator" [ |
| 470 | (leaf "gap" (-6)) | 473 | (leaf "gap" 4) |
| 471 | (leaf "width" 6) | 474 | (leaf "width" 8) |
| 475 | (leaf "gaps-between-tabs" 4) | ||
| 476 | (flag "place-within-column") | ||
| 472 | (leaf "length" { total-proportion = 1.; }) | 477 | (leaf "length" { total-proportion = 1.; }) |
| 473 | (leaf "active-gradient" { | 478 | (leaf "active-gradient" { |
| 474 | from = "hsla(195 100% 60% 0.75)"; | 479 | from = "hsla(195 100% 60% 0.75)"; |
| @@ -499,9 +504,13 @@ in { | |||
| 499 | ) ["comm" "web" "vid" "bmr"]) | 504 | ) ["comm" "web" "vid" "bmr"]) |
| 500 | 505 | ||
| 501 | (plain "window-rule" [ | 506 | (plain "window-rule" [ |
| 507 | (leaf "clip-to-geometry" true) | ||
| 508 | ]) | ||
| 509 | |||
| 510 | (plain "window-rule" [ | ||
| 502 | (leaf "match" { is-floating = true; }) | 511 | (leaf "match" { is-floating = true; }) |
| 503 | (leaf "geometry-corner-radius" 8) | 512 | (leaf "geometry-corner-radius" 8) |
| 504 | (leaf "clip-to-geometry" true) | 513 | (plain "shadow" [ (flag "on") ]) |
| 505 | ]) | 514 | ]) |
| 506 | 515 | ||
| 507 | (plain "window-rule" [ | 516 | (plain "window-rule" [ |
| @@ -626,6 +635,7 @@ in { | |||
| 626 | exec -- kitty --app-id kitty-play --directory "$HOME"/media mpv "$(wl-paste)" | 635 | exec -- kitty --app-id kitty-play --directory "$HOME"/media mpv "$(wl-paste)" |
| 627 | ''; | 636 | ''; |
| 628 | })); | 637 | })); |
| 638 | "Mod+Alt+M".action = spawn (lib.getExe' pkgs.screen-message "sm") "-n" "Fira Mono" "-a" "1" "-f" "#fff" "-b" "#000"; | ||
| 629 | 639 | ||
| 630 | "Mod+U".action = spawn (lib.getExe (pkgs.writeShellApplication { | 640 | "Mod+U".action = spawn (lib.getExe (pkgs.writeShellApplication { |
| 631 | name = "qalc-fuzzel"; | 641 | name = "qalc-fuzzel"; |
| @@ -810,6 +820,17 @@ in { | |||
| 810 | "Mod+Shift+Semicolon".action = spawn makoctl "dismiss" "--all"; | 820 | "Mod+Shift+Semicolon".action = spawn makoctl "dismiss" "--all"; |
| 811 | "Mod+Period".action = spawn makoctl "menu" (lib.getExe config.programs.fuzzel.package) "--dmenu"; | 821 | "Mod+Period".action = spawn makoctl "menu" (lib.getExe config.programs.fuzzel.package) "--dmenu"; |
| 812 | "Mod+Comma".action = spawn makoctl "restore"; | 822 | "Mod+Comma".action = spawn makoctl "restore"; |
| 823 | |||
| 824 | "Mod+Control+W".action = spawn (lib.getExe (pkgs.writeShellApplication { | ||
| 825 | name = "focus-empty-unnamed-workspace"; | ||
| 826 | runtimeInputs = [ niri pkgs.gojq pkgs.socat ]; | ||
| 827 | text = '' | ||
| 828 | workspaces_json="$(niri msg -j workspaces)" | ||
| 829 | active_output="$(jq '.[] | select(.is_focused) | .output' <<<"$workspaces_json")" | ||
| 830 | target_workspace_id="$(jq --argjson active_output "$active_output" 'map(select(.active_window_id == null and .name == null and .output == $active_output)) | sort_by(.idx) | .[0].id' <<<"$workspaces_json")" | ||
| 831 | jq --argjson workspace_id "$target_workspace_id" -nc '{"Action":{"FocusWorkspace":{"reference":{"Id": $workspace_id}}}}' | tee /dev/stderr | socat STDIO "$NIRI_SOCKET" | ||
| 832 | ''; | ||
| 833 | })); | ||
| 813 | })) | 834 | })) |
| 814 | (map ({ name, selector, spawn, key, ...}: if key != null && selector != null && spawn != null then bind key { action = focus-or-spawn-action selector name spawn; } else null) cfg.scratchspaces) | 835 | (map ({ name, selector, spawn, key, ...}: if key != null && selector != null && spawn != null then bind key { action = focus-or-spawn-action selector name spawn; } else null) cfg.scratchspaces) |
| 815 | ] | 836 | ] |
