{ lib, config, ... }: let inherit (lib) mkIf; cfg = config.horseman.wm.hyprland; easeOut = { startX = 0.23; startY = 1.0; endX = 0.32; endY = 1.0; }; easeInOut = { startX = 0.65; startY = 0.05; endX = 0.36; endY = 1.0; }; linear = { startX = 0.0; startY = 0.0; endX = 1.0; endY = 1.0; }; slowFade = { startX = 0.4; startY = 1.0; endX = 0.4; endY = 1.0; }; in { config = mkIf cfg.enable { nix-hyprland = { animations = { enabled = true; animations = { global = { enabled = false; }; border = { speed = 3; curve = easeOut; }; workspaces = { speed = 4; curve = easeInOut; style = "slidefade 5%"; }; specialWorkspace = { speed = 2; curve = easeInOut; style = "slidefadevert 10%"; }; fadeDpms = { speed = 20; curve = slowFade; }; windows = { speed = 3; curve = easeInOut; style = "gnomed"; }; layers = { speed = 1.5; curve = slowFade; style = "popin"; }; fadeLayers = { speed = 1.5; curve = linear; }; fadeOut = { speed = 10; curve = linear; }; }; }; }; }; }