diff options
Diffstat (limited to '')
| -rw-r--r-- | hyprland.nix | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/hyprland.nix b/hyprland.nix new file mode 100644 index 0000000..e332a47 --- /dev/null +++ b/hyprland.nix @@ -0,0 +1,81 @@ +{ config, pkgs, ... }: + +{ + wayland.windowManager.hyprland = { + enable = true; + settings = { + monitor = [ + "DP-3,2560x1440@180.00,0x0,1" + "DP-2,1920x1080@165.00,2560x360,1" + ]; + "$mod" = "SUPER"; + input = { + kb_layout = "us"; + kb_options = "caps:escape"; + numlock_by_default = true; + + }; + workspace = [ + "1, monitor:DP-3" + "2, monitor:DP-3" + "3, monitor:DP-3" + "4, monitor:DP-3" + "5, monitor:DP-3" + "6, monitor:DP-2" + "7, monitor:DP-2" + "8, monitor:DP-2" + "9, monitor:DP-2" + "0, monitor:DP-2" + ]; + exec-once = [ + "xrandr --output DP-3 --primary" + "[workspace 1 silent] ghostty" + "[workspace 2 silent] ghostty -e rmpc" + "[workspace 3 silent] obsidian" + "[workspace 6 silent] brave" + "[workspace 7 silent] discord" + "[workspace 8 silent] steam" + ]; + windowrule = [ + "workspace 7 silent, class:(discord)" + "workspace 8 silent, class:(steam)" + ]; + + bind = [ + "$mod, f, exec, ghostty" + "$mod, d, exec, brave" + "$mod, space, exec, rofi -show drun" + ", XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+ && notify-send 'Volume Up'" + ", XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%- && notify-send 'Volume Down'" + ", XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle && notify-send 'Mute Toggled'" + ", XF86AudioNext, exec, playerctl next && notify-send 'Next Song'" + ", XF86AudioPrev, exec, playerctl previous && notify-send 'Previous Song'" + ", XF86AudioPlay, exec, playerctl play-pause && notify-send 'Pause/Play Toggled'" + ", XF86AudioStop, exec, playerctl stop && notify-send 'Music Stopped'" + ", F10, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+ && notify-send 'Volume Up'" + ", F11, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%- && notify-send 'Volume Down'" + ", F9, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle && notify-send 'Mute Toggled'" + ", F6, exec, playerctl next && notify-send 'Next Song'" + ", F5, exec, playerctl previous && notify-send 'Previous Song'" + ", F7, exec, playerctl play-pause && notify-send 'Pause/Play Toggled'" + ", F8, exec, playerctl stop && notify-send 'Music Stopped'" + ] + ++ ( + # workspaces + builtins.concatLists ( + builtins.genList ( + i: + let + ws = i + 1; + in + [ + "$mod, code:1${toString i}, workspace, ${toString ws}" + "$mod SHIFT, code:1${toString i}, movetoWorkspace, ${toString ws}" + ] + ) 9 + ) + ); + }; + }; + +} |
