summaryrefslogtreecommitdiffstats
path: root/hyprland.nix
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--hyprland.nix81
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
+ )
+ );
+ };
+ };
+
+}