diff --git a/home-manager/home.nix b/home-manager/home.nix index b7aa27e..6d217dd 100644 --- a/home-manager/home.nix +++ b/home-manager/home.nix @@ -24,6 +24,7 @@ ./packages.nix ./plasma.nix ./thunderbird.nix + ./niri.nix ]; home.stateVersion = "24.05"; diff --git a/home-manager/niri.nix b/home-manager/niri.nix index 85e85bd..d7f8891 100644 --- a/home-manager/niri.nix +++ b/home-manager/niri.nix @@ -1,30 +1,34 @@ -{...}: { +{ pkgs, config, ... }: { programs.niri = { enable = true; + package = pkgs.niri; settings = { - outputs = { - "eDP-2" = { - position = { - x = 0; - y = 0; - }; - }; - # "lenovo-1" = { - # position = { - # x = -960; - # y = -1080; - # }; - # }; - # "lenovo-2" = { - # position = { - # x = 960; - # y = 1080; - # }; - # }; - }; - binds = { - "Mod+1".action.spawn = "alacritty"; - "Mod+1".hotkey-overlay.hidden = false; + input.mod-key = "SUPER"; + binds = with config.lib.niri.actions; { + "Mod+1".action = spawn "kitty"; + "Mod+2".action = show-hotkey-overlay; + "Mod+F11".action = fullscreen-window; + "Mod+F".action = spawn "librewolf"; + "Mod+D".action = spawn "vesktop"; + "Mod+Space".action = spawn "sh -c 'wofi --show drun, run'"; + "Print".action = screenshot; + "Mod+Alt+L".action = spawn "hyprlock"; + "Mod+x".action = close-window; + "Mod+Tab".action = toggle-window-floating; + "Mod+h".action = focus-column-or-monitor-left; + "Mod+j".action = focus-window-or-monitor-down; + "Mod+k".action = focus-window-or-monitor-up; + "Mod+l".action = focus-column-or-monitor-right; + "Mod+Shift+h".action = consume-or-expel-window-left; # no idea if this should be swap-window-left instead + "Mod+Shift+j".action = move-window-down-or-to-workspace-down; + "Mod+Shift+k".action = move-window-up-or-to-workspace-up; + "Mod+Shift+l".action = consume-or-expel-window-right; # see above comment + "Mod+WheelScrollUp".action = focus-workspace-up; + "Mod+WheelScrollDown".action = focus-workspace-down; # not sure if these mouse scroll keybinds are in the right direction + "Mod+Up".action = focus-workspace-up; + "Mod+Down".action = focus-workspace-down; + # not sure how to do the "send window to workspace" keybinds from the hyprland config + }; }; };