diff options
Diffstat (limited to 'home/desktops')
| -rw-r--r-- | home/desktops/default.nix | 7 | ||||
| -rw-r--r-- | home/desktops/hyprland/binds.nix | 93 | ||||
| -rw-r--r-- | home/desktops/hyprland/default.nix | 6 | ||||
| -rw-r--r-- | home/desktops/hyprland/settings.nix | 49 | ||||
| -rw-r--r-- | home/desktops/hyprland/wallpaper.nix | 8 |
5 files changed, 96 insertions, 67 deletions
diff --git a/home/desktops/default.nix b/home/desktops/default.nix index 0c2ce1c..a3b4a1f 100644 --- a/home/desktops/default.nix +++ b/home/desktops/default.nix @@ -28,7 +28,7 @@ in { # xdg libnotify # fonts - charis-sil + charis dejavu_fonts doulos-sil fira-code @@ -66,6 +66,11 @@ in { sf-compact ]); + # set uwsm vars + xdg.configFile = { + "uwsm/env".source = "${config.home.sessionVariablesPackage}/etc/profile.d/hm-session-vars.sh"; + }; + # user fonts fonts.fontconfig = { enable = true; diff --git a/home/desktops/hyprland/binds.nix b/home/desktops/hyprland/binds.nix index df4ecc0..3266938 100644 --- a/home/desktops/hyprland/binds.nix +++ b/home/desktops/hyprland/binds.nix @@ -1,66 +1,67 @@ -{config, ...}: { +{config, ...}: let + mod = "SUPER"; +in { wayland.windowManager.hyprland.settings = { # Keybinds - "$mod" = "SUPER"; bind = [ # Launch programs - "$mod, W, exec, ${config.default.browser}" - "$mod, D, exec, ${config.default.appLauncher}" - "$mod, L, exec, ${config.default.lockScreen}" - "$mod, Return, exec, ${config.default.terminal}" + "${mod}, W, exec, ${config.default.browser}" + "${mod}, D, exec, ${config.default.appLauncher}" + "${mod}, L, exec, ${config.default.lockScreen}" + "${mod}, Return, exec, ${config.default.terminal}" ", Print, exec, grimblast copy area" # Misc - "$mod SHIFT, L, exit" - #"$mod, tab, hyprexpo:expo, toggle" + "${mod} SHIFT, L, exit" + #"${mod}, tab, hyprexpo:expo, toggle" # Window operations - "$mod SHIFT, Q, killactive" - "$mod SHIFT, SPACE, togglefloating" - "$mod, F, fullscreen" - "$mod, J, togglesplit" + "${mod} SHIFT, Q, killactive" + "${mod} SHIFT, SPACE, togglefloating" + "${mod}, F, fullscreen" + "${mod}, J, togglesplit" # Move focus with mod + arrow keys - "$mod, left, movefocus, l" - "$mod, right, movefocus, r" - "$mod, up, movefocus, u" - "$mod, down, movefocus, d" + "${mod}, left, movefocus, l" + "${mod}, right, movefocus, r" + "${mod}, up, movefocus, u" + "${mod}, down, movefocus, d" # Move window across workspace with mod + arrow keys - "$mod SHIFT, left, hy3:movewindow, l" - "$mod SHIFT, right, hy3:movewindow, r" - "$mod SHIFT, up, hy3:movewindow, u" - "$mod SHIFT, down, hy3:movewindow, d" + "${mod} SHIFT, left, hy3:movewindow, l" + "${mod} SHIFT, right, hy3:movewindow, r" + "${mod} SHIFT, up, hy3:movewindow, u" + "${mod} SHIFT, down, hy3:movewindow, d" # Switch workspaces with mod + [0-9] - "$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}, 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" # Move active window to a workspace with mod + SHIFT + [0-9] - "$mod SHIFT, 1, movetoworkspacesilent, 1" - "$mod SHIFT, 2, movetoworkspacesilent, 2" - "$mod SHIFT, 3, movetoworkspacesilent, 3" - "$mod SHIFT, 4, movetoworkspacesilent, 4" - "$mod SHIFT, 5, movetoworkspacesilent, 5" - "$mod SHIFT, 6, movetoworkspacesilent, 6" - "$mod SHIFT, 7, movetoworkspacesilent, 7" - "$mod SHIFT, 8, movetoworkspacesilent, 8" - "$mod SHIFT, 9, movetoworkspacesilent, 9" - "$mod SHIFT, 0, movetoworkspacesilent, 10" + "${mod} SHIFT, 1, movetoworkspacesilent, 1" + "${mod} SHIFT, 2, movetoworkspacesilent, 2" + "${mod} SHIFT, 3, movetoworkspacesilent, 3" + "${mod} SHIFT, 4, movetoworkspacesilent, 4" + "${mod} SHIFT, 5, movetoworkspacesilent, 5" + "${mod} SHIFT, 6, movetoworkspacesilent, 6" + "${mod} SHIFT, 7, movetoworkspacesilent, 7" + "${mod} SHIFT, 8, movetoworkspacesilent, 8" + "${mod} SHIFT, 9, movetoworkspacesilent, 9" + "${mod} SHIFT, 0, movetoworkspacesilent, 10" # Move to tab @@ -75,14 +76,14 @@ "LALT, 9, hy3:focustab, index, 09" "LALT, 0, hy3:focustab, index, 10" - "$mod SHIFT, B, hy3:makegroup, h" - "$mod SHIFT, V, hy3:makegroup, v" - "$mod SHIFT, C, hy3:changegroup, toggletab" + "${mod} SHIFT, B, hy3:makegroup, h" + "${mod} SHIFT, V, hy3:makegroup, v" + "${mod} SHIFT, C, hy3:changegroup, toggletab" # Scroll through existing workspaces with mod + scroll - "$mod, mouse_down, workspace, e+1" - "$mod, mouse_up, workspace, e-1" + "${mod}, mouse_down, workspace, e+1" + "${mod}, mouse_up, workspace, e-1" ]; bindn = [ @@ -96,8 +97,8 @@ bindm = [ # Move/resize windows with mod + LMB/RMB and dragging - "$mod, mouse:272, movewindow" - "$mod, mouse:273, resizewindow" + "${mod}, mouse:272, movewindow" + "${mod}, mouse:273, resizewindow" ]; binde = [ diff --git a/home/desktops/hyprland/default.nix b/home/desktops/hyprland/default.nix index 5fd0d75..913ca57 100644 --- a/home/desktops/hyprland/default.nix +++ b/home/desktops/hyprland/default.nix @@ -3,6 +3,7 @@ config, lib, system, + pkgs, ... }: let inherit (lib) mkIf; @@ -18,13 +19,14 @@ in { ]; config = mkIf cfg.enable { - home.packages = [ - inputs.rose-pine-hyprcursor.packages.${system}.default + home.packages = with pkgs; [ + rose-pine-hyprcursor ]; wayland.windowManager.hyprland = { enable = true; package = inputs.hyprland.packages.${system}.hyprland; + portalPackage = inputs.hyprland.packages.${system}.xdg-desktop-portal-hyprland; xwayland.enable = true; systemd.enable = true; diff --git a/home/desktops/hyprland/settings.nix b/home/desktops/hyprland/settings.nix index 219467e..98fc12b 100644 --- a/home/desktops/hyprland/settings.nix +++ b/home/desktops/hyprland/settings.nix @@ -65,19 +65,27 @@ enabled = true; bezier = [ - "windowIn, 0.06, 0.71, 0.25, 1" - "windowResize, 0.04, 0.67, 0.38, 1" + "default, 0.12, 0.92, 0.08, 1.0" + "wind, 0.12, 0.92, 0.08, 1.0" + "overshot, 0.18, 0.95, 0.22, 1.03" + "linear, 1, 1, 1, 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" + "windows, 1, 5, wind, popin 60%" + "windowsIn, 1, 6, overshot, popin 60%" + "windowsOut, 1, 4, overshot, popin 60%" + "windowsMove, 1, 4, overshot, slide" + "layers, 1, 4, default, popin" + "fadeIn, 1, 7, default" + "fadeOut, 1, 7, default" + "fadeSwitch, 1, 7, default" + "fadeShadow, 1, 7, default" + "fadeDim, 1, 7, default" + "fadeLayers, 1, 7, default" + "workspaces, 1, 5, overshot, slide" + "border, 1, 1, linear" + "borderangle, 1, 24, linear, loop" ]; }; @@ -95,6 +103,22 @@ sensitivity = 0; }; + # Layer rules + layerrule = [ + # fix weird borders + "blur true, match:namespace wofi" + "ignore_alpha 0, match:namespace wofi" + "blur true, match:namespace notificaations" + "ignore_alpha 0, match:namespace notifications" + "blur true, match:namespace swaync-notificaation-window" + "ignore_alpha 0, match:namespace swaync-notification-window" + "blur true, match:namespace swaync-control-center" + "ignore_alpha 0, match:namespace swaync-control-center" + + # dont animate slurp + "no_anim true, match:namespace selection" + ]; + # XWayland xwayland = { force_zero_scaling = "true"; @@ -116,11 +140,6 @@ no_update_news = true; no_donation_nag = true; }; - - # Experimental - experimental = { - xx_color_management_v4 = true; - }; }; # end settings }; # end hyprland } diff --git a/home/desktops/hyprland/wallpaper.nix b/home/desktops/hyprland/wallpaper.nix index e8fc861..33fdec5 100644 --- a/home/desktops/hyprland/wallpaper.nix +++ b/home/desktops/hyprland/wallpaper.nix @@ -1,10 +1,12 @@ {config, ...}: { services.hyprpaper = { - enable = config.desktops.hyprland.enable; + enable = config.desktops.hyprland.enable && !config.apps.caelestia.enable; settings = { - preload = config.theme.wallpaper; - wallpaper = ",${config.theme.wallpaper}"; + wallpaper = { + monitor = ""; + path = config.theme.wallpaper; + }; splash = false; }; }; |