diff --git a/home/wayland/hyprland/config.nix b/home/wayland/hyprland/config.nix new file mode 100644 index 0000000..14e792a --- /dev/null +++ b/home/wayland/hyprland/config.nix @@ -0,0 +1,160 @@ +_: { + wayland.windowManager.hyprland.extraConfig = '' + + monitor = HDMI-A-1,1920x1080@60, 3640x560, 1, transform, 3 #right + monitor = DP-1,1920x1080@60, 0x560, 1, transform, 1 #left + monitor = DP-2,2560x1440@144, 1080x1080, 1 #middle + monitor = DP-3,1920x1080@144, 1400x0, auto #top + + input { + + kb_layout = us + kb_variant = + kb_model = + kb_options = + kb_rules = + + follow_mouse = 1 + + sensitivity = -0.5 # -1.0 - 1.0, 0 means no modification. + force_no_accel = true + } + + general { + + gaps_in = 6 + gaps_out = 15 + border_size = 4 + col.active_border = rgb(f5c2e7) + col.inactive_border = rgb(6c7086) + + layout = dwindle + } + + decoration { + rounding = 8 + blur { + enabled = true + size = 5 + passes = 3 + new_optimizations = true + } + + multisample_edges = true + + #opactity + inactive_opacity = 1.0 + active_opacity = 1.0 + fullscreen_opacity = 1.0 + + # shadow + drop_shadow = yes + shadow_range = 60 + shadow_offset = 0 5 + shadow_render_power = 4 + col.shadow = rgba(00000099) + } + + animations { + + enabled = yes + + bezier = myBezier, 0.05, 0.9, 0.1, 1.05 + + animation = windows, 1, 7, myBezier + animation = windowsOut, 1, 7, default, popin 80% + animation = border, 1, 10, default + animation = fade, 1, 7, default + animation = workspaces, 1, 6, default + } + + dwindle { + + pseudotile = yes + preserve_split = yes + + } + + master { + + new_is_master = true + + } + + gestures { + + workspace_swipe = off + + } + + device:epic mouse V1 { + + sensitivity = -0.5 + } + + exec-once = swww init + + exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP + exec-once = /nix/store/gjbi20m2wz9xhm18ifmcdl45cpgd7hpz-polkit-gnome-0.105/libexec/polkit-gnome-authentication-agent-1 + + # swayidle / lock + exec-once = ~/.local/bin/lock + + #windowrules + windowrulev2 = noshadow, floating:0 + windowrulev2 = float, title:^(Volume Control)$ + windowrulev2 = float, title:^(Picture in picture)$ + windowrulev2 = float, title:^(RuneLite)$ + windowrulev2 = move 500 300, title:^(RuneLite)$ + windowrulev2 = size 810 580, title:^(RuneLite)$ + windowrulev2 = float, title:^(Steam)$ + windowrulev2 = float, title:^(Friends List)$ + windowrulev2 = float, title:^(Cryptomator)$ + windowrulev2 = fullscreen, title:^(wlogout)$ + windowrulev2 = float, title:^(wlogout)$ + + #binds + $mainMod = SUPER + + bind = $mainMod, Return, exec, wezterm + bind = $mainMod, Q, killactive, + bind = $mainMod, V, togglefloating, + bind = $mainMod, R, exec, rofi -modi run -show drun + bind = $mainMod, P, pseudo, # dwindle + bind = $mainMod, J, togglesplit, # dwindle + bind =, Print, exec, grim -g "$(slurp)" - | swappy -f - + bind = $mainMod, left, movefocus, l + bind = $mainMod, right, movefocus, r + bind = $mainMod, up, movefocus, u + bind = $mainMod, down, movefocus, d + + bind = $mainMod, 1, workspace, 1 + bind = $mainMod, 2, workspace, 2 + bind = $mainMod, 3, workspace, 3 + bind = $mainMod, 4, workspace, 4 + bind = $mainMod, 5, workspace, 5 + bind = $mainMod, 6, workspace, 6 + bind = $mainMod, 7, workspace, 7 + bind = $mainMod, 8, workspace, 8 + bind = $mainMod, 9, workspace, 9 + bind = $mainMod, 0, workspace, 10 + + bind = $mainMod SHIFT, 1, movetoworkspace, 1 + bind = $mainMod SHIFT, 2, movetoworkspace, 2 + bind = $mainMod SHIFT, 3, movetoworkspace, 3 + bind = $mainMod SHIFT, 4, movetoworkspace, 4 + bind = $mainMod SHIFT, 5, movetoworkspace, 5 + bind = $mainMod SHIFT, 6, movetoworkspace, 6 + bind = $mainMod SHIFT, 7, movetoworkspace, 7 + bind = $mainMod SHIFT, 8, movetoworkspace, 8 + bind = $mainMod SHIFT, 9, movetoworkspace, 9 + bind = $mainMod SHIFT, 0, movetoworkspace, 10 + + bind = $mainMod, mouse_down, workspace, e+1 + bind = $mainMod, mouse_up, workspace, e-1 + + bindm = $mainMod, mouse:272, movewindow + bindm = $mainMod, mouse:273, resizewindow + + ''; +} diff --git a/home/wayland/hyprland/default.nix b/home/wayland/hyprland/default.nix index aa4bc19..6d4f2bd 100644 --- a/home/wayland/hyprland/default.nix +++ b/home/wayland/hyprland/default.nix @@ -1,6 +1,6 @@ {...}: { imports = [ - ./settings.nix + ./config.nix ]; wayland.windowManager.hyprland = { enable = true; diff --git a/home/wayland/hyprland/settings.nix b/home/wayland/hyprland/settings.nix deleted file mode 100644 index 7caaeb4..0000000 --- a/home/wayland/hyprland/settings.nix +++ /dev/null @@ -1,124 +0,0 @@ -_: { - wayland.windowManager.hyprland = { - settings = { - "$mod" = "SUPER"; - monitor = [ - "HDMI-A-1,1920x1080@60, 3640x560, 1, transform, 3" #right - "DP-1,1920x1080@60, 0x560, 1, transform, 1" #left - "DP-2,2560x1440@144, 1080x1080, 1" #middle - "DP-3,1920x1080@144, 1400x0, auto" #top - ]; - exec-once = [ - "swww init" - "/nix/store/gjbi20m2wz9xhm18ifmcdl45cpgd7hpz-polkit-gnome-0.105/libexec/polkit-gnome-authentication-agent-1" - "~/.local/bin/lock" - ]; - input = { - kb_layout = "us"; - follow_mouse = 1; - sensitivity = "-0.5"; - force_no_accel = true; - }; - general = { - gaps_in = 6; - gaps_out = 15; - border_size = 4; - "col.active_border" = "rgb(f5c2e7)"; - "col.inactive_border" = "rgb(6c7086)"; - layout = "dwindle"; - }; - decoration = { - blur = { - enabled = true; - passes = 3; - new_optimizations = true; - brightness = 1.0; - noise = 0.02; - }; - rounding = 8; - multisample_edges = true; - inactive_opacity = 1; - active_opacity = 1; - fullscreen_opacity = 1; - drop_shadow = true; - shadow_range = 60; - shadow_offset = "0 5"; - shadow_render_power = 4; - "col.shadow" = "rgba(00000099)"; - }; - - animations = { - enabled = true; - animation = [ - "windowsOut, 1, 7, default, popin 80%" - "border, 1, 10, default" - "fade, 1, 7, default" - "workspaces, 1, 6, default" - ]; - }; - dwindle = { - pseudotile = true; - preserve_split = true; - }; - master = { - new_is_master = true; - }; - "device:epic mouse V1" = { - sensitivity = "-0.5"; - }; - windowrulev2 = [ - "noshadow, floating:0" - "float, title:^(Volume Control)$" - "float, title:^(Picture in Picture)$" - "float, title:^(Steam)$" - "float, title:^(Friends List)$" - "float, title:^(Cryptomator)$" - "float, title:^(wlogout)$" - "float, title:^(RuneLite)" - "move 850 360, title:^(RuneLite)" - "size 830 600, title:^(RuneLite)" - ]; - bindm = [ - "$mod, mouse_down, workspace e+1" - "$mod, mouse_up, workspace e-1" - "$mod, mouse:272, movewindow" - "$mod, mouse:273, resizewindow" - ]; - bind = [ - "$mod, Return, exec, wezterm" - "$mod, Q, killactive" - "$mod, V, togglefloating" - "$mod, R, exec, rofi -modi run -show drun" - "$mod, P, pseudo," - "$mod, J, togglesplit," - "$mod, left, movefocus, l" - "$mod, right, movefocus, r" - "$mod, up, movefocus, u" - "$mod, down, movefocus, d" - "$mod, 1, workspace, 1" - "$mod, 2, workspace, 2" - "$mod, 3, workspace, 3" - "$mod, 4, workspace, 4" - "$mod, 5, workspace, 5" - "$mod, 6, workspace, 6" - "$mod, 7, workspace, 7" - "$mod, 8, workspace, 8" - "$mod, 9, workspace, 9" - "$mod, 10, workspace, 10" - "$mod SHIFT, 1, movetoworkspace, 1" - "$mod SHIFT, 2, movetoworkspace, 2" - "$mod SHIFT, 3, movetoworkspace, 3" - "$mod SHIFT, 4, movetoworkspace, 4" - "$mod SHIFT, 5, movetoworkspace, 5" - "$mod SHIFT, 6, movetoworkspace, 6" - "$mod SHIFT, 7, movetoworkspace, 7" - "$mod SHIFT, 8, movetoworkspace, 8" - "$mod SHIFT, 9, movetoworkspace, 9" - "$mod SHIFT, 10, movetoworkspace, 10" - ]; - }; - extraConfig = '' - bind =, Print, exec, grim -g "$(slurp)" - | swappy -f - - ''; - }; -}