{ lib, ... }: { wayland.windowManager.hyprland.settings = { monitor = [ "DP-1, 1920x1080@144, 0x0, 1" "DP-3, 2560x1440@59.95, 1920x0, 1" ]; "$browser" = "io.github.zen_browser.zen"; "$terminal" = "kitty"; "$fileManager" = "nautilus"; "$menu" = "rofi -show drun"; # Autostart exec-once = [ "$browser" "nextcloud" "$terminal" "hypridle" "systemctl --user start hyprpolkitagent" "swaync" "waybar" "waypaper --restore" ]; env = [ "XCURSOR_SIZE,24" "HYPRCURSOR_SIZE,24" "HYPRCURSOR_THEME,rose-pine-hyprcursor" "ELECTRON_OZONE_PLATFORM_HINT,auto" "HYPRSHOT_DIR,$HOME/Pictures/screenshots" # Store screenshots here ]; # TODO move to common file "$rosewater" = "rgb(f5e0dc)"; "$rosewaterAlpha" = "f5e0dc"; "$flamingo" = "rgb(f2cdcd)"; "$flamingoAlpha" = "f2cdcd"; "$pink" = "rgb(f5c2e7)"; "$pinkAlpha" = "f5c2e7"; "$mauve" = "rgb(cba6f7)"; "$mauveAlpha" = "cba6f7"; "$red" = "rgb(f38ba8)"; "$redAlpha" = "f38ba8"; "$maroon" = "rgb(eba0ac)"; "$maroonAlpha" = "eba0ac"; "$peach" = "rgb(fab387)"; "$peachAlpha" = "fab387"; "$yellow" = "rgb(f9e2af)"; "$yellowAlpha" = "f9e2af"; "$green" = "rgb(a6e3a1)"; "$greenAlpha" = "a6e3a1"; "$teal" = "rgb(94e2d5)"; "$tealAlpha" = "94e2d5"; "$sky" = "rgb(89dceb)"; "$skyAlpha" = "89dceb"; "$sapphire" = "rgb(74c7ec)"; "$sapphireAlpha" = "74c7ec"; "$blue" = "rgb(89b4fa)"; "$blueAlpha" = "89b4fa"; "$lavender" = "rgb(b4befe)"; "$lavenderAlpha" = "b4befe"; "$text" = "rgb(cdd6f4)"; "$textAlpha" = "cdd6f4"; "$subtext1" = "rgb(bac2de)"; "$subtext1Alpha" = "bac2de"; "$subtext0" = "rgb(a6adc8)"; "$subtext0Alpha" = "a6adc8"; "$overlay2" = "rgb(9399b2)"; "$overlay2Alpha" = "9399b2"; "$overlay1" = "rgb(7f849c)"; "$overlay1Alpha" = "7f849c"; "$overlay0" = "rgb(6c7086)"; "$overlay0Alpha" = "6c7086"; "$surface2" = "rgb(585b70)"; "$surface2Alpha" = "585b70"; "$surface1" = "rgb(45475a)"; "$surface1Alpha" = "45475a"; "$surface0" = "rgb(313244)"; "$surface0Alpha" = "313244"; "$base" = "rgb(1e1e2e)"; "$baseAlpha" = "1e1e2e"; "$mantle" = "rgb(181825)"; "$mantleAlpha" = "181825"; "$crust" = "rgb(11111b)"; "$crustAlpha" = "11111b"; general = { gaps_in = 5; gaps_out = 20; border_size = 2; "col.active_border" = lib.mkDefault "$mauve $teal 45deg"; "col.inactive_border" = lib.mkDefault "rgba(595959aa)"; resize_on_border = true; allow_tearing = false; layout = "dwindle"; }; decoration = { rounding = 10; # Change transparency of focused and unfocused windows active_opacity = 1.0; inactive_opacity = 1.0; shadow = { enabled = true; range = 4; render_power = 3; color = lib.mkDefault "$base"; }; blur = { enabled = true; size = 3; passes = 1; vibrancy = 0.1696; }; }; animations = { enabled = "yes, please :)"; bezier = [ "easeOutQuint,0.23,1,0.32,1" "easeInOutCubic,0.65,0.05,0.36,1" "linear,0,0,1,1" "almostLinear,0.5,0.5,0.75,1.0" "quick,0.15,0,0.1,1" ]; animation = [ "global, 1, 10, default" "border, 1, 5.39, easeOutQuint" "windows, 1, 4.79, easeOutQuint" "windowsIn, 1, 4.1, easeOutQuint, popin 87%" "windowsOut, 1, 1.49, linear, popin 87%" "fadeIn, 1, 1.73, almostLinear" "fadeOut, 1, 1.46, almostLinear" "fade, 1, 3.03, quick" "layers, 1, 3.81, easeOutQuint" "layersIn, 1, 4, easeOutQuint, fade" "layersOut, 1, 1.5, linear, fade" "fadeLayersIn, 1, 1.79, almostLinear" "fadeLayersOut, 1, 1.39, almostLinear" "workspaces, 1, 1.94, almostLinear, fade" "workspacesIn, 1, 1.21, almostLinear, fade" "workspacesOut, 1, 1.94, almostLinear, fade" ]; }; dwindle = { pseudotile = true; # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below preserve_split = true; # You probably want this }; master = { new_status = "master"; }; misc = { force_default_wallpaper = -1; # Set to 0 or 1 to disable the anime mascot wallpapers disable_hyprland_logo = false; # If true disables the random hyprland logo / anime girl background. :( }; debug.disable_logs = false; # TODO fetch values from common file. Must match configs in nixos! input = { kb_layout = "gb,no"; kb_options = "grp:alt_shift_toggle"; follow_mouse = 1; sensitivity = 0; # -1.0 - 1.0, 0 means no modification. touchpad.natural_scroll = false; }; gestures.workspace_swipe = false; device = { name = "logitech-g502-hero-gaming-mouse"; sensitivity = -0.10; }; windowrulev2 = [ # Ignore maximize requests from apps "suppressevent maximize, class:.*" # Fix some dragging issues with XWayland "nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0" # Avoid locking in fullscreen "idleinhibit fullscreen, class:^(*)$" "idleinhibit fullscreen, title:^(*)$" "idleinhibit fullscreen, fullscreen:1" ]; }; }