{ pkgs, ... }: { home = { username = "nerf"; homeDirectory = "/home/nerf"; stateVersion = "25.05"; packages = [ pkgs.pavucontrol ]; }; programs = { kitty.enable = true; wofi.enable = true; helix.enable = true; waybar = { enable = true; settings = { mainBar = { layer = "bottom"; height = 30; modules-left = [ "hyprland/workspaces" "hyprland/window" ]; modules-center = [ ]; modules-right = [ "idle_inhibitor" "pulseaudio" "network" "cpu" "memory" "temperature" "backlight" "battery" "clock" "tray" ]; idle_inhibitor = { format = "{icon}"; format-icons = { activated = ""; deactivated = ""; }; }; tray = { spacing = 10; }; cpu = { format = "{usage}% "; tooltip = false; }; memory.format = "{}% "; }; }; }; }; wayland.windowManager.hyprland = { enable = true; package = null; portalPackage = null; systemd.variables = [ "--all" ]; # import environment (like PATH) into the systemd unit settings = { exec-once = [ "waybar" "nmcli" ]; input = { kb_layout = "de"; kb_variant = "neo"; }; general = { gaps_in = 0; gaps_out = 0; border_size = 1; "col.active_border" = "rgba(22ccffee) rgba(00ff99ee) 45deg"; "col.inactive_border" = "rgba(595959aa)"; layout = "master"; allow_tearing = false; }; decoration = { rounding = 0; blur = { enabled = false; size = 3; passes = 1; }; }; animations = { enabled = true; bezier = "myBezier, 0.05, 0.9, 0.1, 1.05"; animation = [ "windows, 1, 7, myBezier" "windowsOut, 1, 7, default, popin 80%" "border, 1, 8, default" "fade, 1, 7, default" "workspaces, 1, 6, default" ]; }; master = { new_on_top = true; }; "$mainMod" = "SUPER"; "$menu" = "wofi --show drun"; bind = [ "$mainMod, Return, exec, kitty" "$mainMod, C, killactive," "$mainMod, M, exit," "$mainMod, V, togglefloating," "$mainMod, P, exec, $menu" "$mainMod, Space, layoutmsg, swapwithmaster auto" "$mainMod, N, layoutmsg, cyclenext" "$mainMod, R, layoutmsg, cycleprev" "$mainMod, S, togglespecialworkspace, magic" "$mainMod SHIFT, S, movetoworkspace, special:magic" ] ++ (builtins.concatLists ( builtins.genList ( i: let ws = i + 1; in [ "$mainMod, code:1${toString i}, workspace, ${toString ws}" "$mainMod SHIFT, code:1${toString i}, movetoworkspace, ${toString ws}" ] ) 9 )); bindm = [ "$mainMod, mouse:272, movewindow" "$mainMod, mouse:273, resizewindow" ]; }; }; }