diff --git a/settings/hyprland.nix b/settings/hyprland.nix index f7e3556..7452994 100644 --- a/settings/hyprland.nix +++ b/settings/hyprland.nix @@ -57,12 +57,6 @@ enable = true; systemd.variables = [ "--all" ]; - # Native `plugin = ...` directive crashes Hyprland on the current - # nixpkgs combo (compositor 0.52.1 vs plugin built for 0.52.0). - # HM's plugins list routes through `hyprctl plugin load` at runtime, - # which tolerates the patch-level skew. - plugins = [ pkgs.hyprlandPlugins.hyprspace ]; - settings = { # Pin the OC'd 190 Hz mode so we don't fall back to 60. monitor = "DP-2,3440x1440@190,0x0,1"; @@ -91,13 +85,18 @@ decoration = { rounding = 8; + # Blur disabled — two passes at 3440x1440 was the biggest + # contributor to per-frame compositor latency. Re-enable with + # smaller size/passes if you miss the look. blur = { - enabled = true; - size = 6; - passes = 2; + enabled = false; }; }; + render = { + direct_scanout = true; # fullscreen apps bypass compositor + }; + animations = { enabled = true; # speed = tenths of a second; 2 = 0.2s. Drop to 1 for instant-ish. @@ -132,7 +131,7 @@ disable_hyprland_logo = true; disable_splash_rendering = true; focus_on_activate = true; - vrr = 1; # 1 = on for fullscreen, 2 = always + vrr = 2; # 1 = on for fullscreen, 2 = always vfr = false; # keep compositor ticking, don't idle between frames }; @@ -143,17 +142,6 @@ "immediate, class:^(gamescope)$" ]; - # Hyprspace overview plugin — see README for full option set - plugin.overview = { - centerAligned = true; - hideTopLayers = true; - hideOverlayLayers = true; - showNewWorkspace = true; - exitOnClick = true; - exitOnSwitch = true; - dragAlpha = 0.8; - }; - # Mirror the GNOME bindings so muscle memory carries over bind = [ "$mod, T, exec, $term" @@ -168,9 +156,6 @@ "$mod, P, pseudo" "$mod, S, togglesplit" - # Hyprspace overview — routed via hyprctl because home-manager - # loads the plugin in exec-once, after config parse. - "$mod, SPACE, exec, hyprctl dispatch overview:toggle" # Focus "$mod, left, movefocus, l"