diff options
Diffstat (limited to '')
-rw-r--r-- | modules/desktops/hyprland/settings.nix | 117 |
1 files changed, 117 insertions, 0 deletions
diff --git a/modules/desktops/hyprland/settings.nix b/modules/desktops/hyprland/settings.nix new file mode 100644 index 0000000..fdeeadc --- /dev/null +++ b/modules/desktops/hyprland/settings.nix @@ -0,0 +1,117 @@ +{ + config, + pkgs, + lib, + inputs, + ... +}: { + home-manager.users.${config.user} = { + wayland.windowManager.hyprland.settings = { + # Monitors + monitor = + map ( + monitor: "${monitor.name}, highres, auto, ${toString monitor.scale}, bitdepth, ${toString monitor.bitdepth}" + ) + config.monitors; + + # Autostart + exec-once = config.autoRun; + + # General + general = { + gaps_in = config.theme.innerGap; + gaps_out = config.theme.outerGap; + layout = "hy3"; + resize_on_border = "yes"; + extend_border_grab_area = 20; + border_size = config.theme.borderWidth; + "col.active_border" = "rgb(${config.theme.colors.primary})"; + "col.inactive_border" = "rgb(${config.theme.colors.surface})"; + }; + + # Gestures + gestures = { + workspace_swipe = true; + workspace_swipe_fingers = 3; + workspace_swipe_forever = true; + workspace_swipe_cancel_ratio = 0.15; + }; + + # Decoration + decoration = { + rounding = config.theme.outerRadius; + shadow.enabled = false; + blur = { + enabled = config.theme.blur; + size = 4; + passes = 2; + noise = 0.008; + contrast = 0.8916; + brightness = 0.8; + }; + }; + + # Animations + animations = { + enabled = true; + + bezier = [ + "windowIn, 0.06, 0.71, 0.25, 1" + "windowResize, 0.04, 0.67, 0.38, 1" + ]; + + animation = [ + "windowsIn, 1, 3, windowIn, slide #popin 20%" + "windowsOut, 1, 3, windowIn, slide #popin 70%" + "windowsMove, 1, 2.5, windowResize" + "border, 1, 10, default" + "borderangle, 1, 8, default" + "fade, 1, 3, default" + "workspaces, 1, 6, default" + "layers, 1, 5, windowIn, slide" + ]; + }; + + # Input + input = { + kb_layout = "us"; + kb_variant = ""; + kb_model = ""; + kb_options = "gtp:alt_shift_toggle, compose:ralt"; + kb_rules = ""; + follow_mouse = 1; + touchpad = { + natural_scroll = "yes"; + }; + sensitivity = 0; + }; + + # XWayland + xwayland = { + force_zero_scaling = "true"; + use_nearest_neighbor = "false"; + }; + + # Misc + misc = { + disable_hyprland_logo = true; + disable_splash_rendering = true; + key_press_enables_dpms = true; + mouse_move_enables_dpms = true; + enable_anr_dialog = false; + vrr = 1; + }; + + # Ecosystem + ecosystem = { + no_update_news = true; + no_donation_nag = true; + }; + + # Experimental + experimental = { + xx_color_management_v4 = true; + }; + }; # end hyprland + }; # end home-manager +} |