{ config, lib, pkgs, ... }: let cfg = config.modules.desktop; in { config = lib.mkIf (cfg.name == "bspwm") { home-manager.users.moritz = { services.polybar = { enable = true; package = pkgs.polybar.override { pulseSupport = true; }; script = '' for m in $(polybar --list-monitors | ${pkgs.coreutils}/bin/cut -d":" -f1); do MONITOR=$m polybar --reload bottom & done ''; config = with config.scheme.withHashtag; { "global/wm" = { margin-top = 5; }; "bar/bottom" = { # position monitor = "\${env:MONITOR}"; bottom = true; width = "100%:-20"; heigth = 25; background = base00; foreground = base05; radius = 10; offset-x = 10; offset-y = 5; padding = 1; line-size = 3; line-color = base06; module-margin = 1; separator = "%{F${base03}}◆%{F-}"; font-0 = "FiraCode Nerd Font:size=10;0"; modules-left = "cpu memory network battery"; modules-center = "bspwm"; modules-right = "pulseaudio date time"; tray-position = "right"; tray-padding = 2; wm-restack = "bspwm"; cursor-click = "pointer"; cursor-scroll = "ns-resize"; }; "module/battery" = { type = "internal/battery"; battery = "BATT"; adapter = "ACAD"; time-format = "%H:%M"; format-charging = "%{F${base0B}}%{F-} "; format-discharging = "%{F${base08}}%{F-} "; format-full = "%{F${base08}} %{F-} "; label-charging = "%percentage%% %time% remaining"; label-discharging = "%percentage%% %time% remaining"; label-full = "Fully charged"; animation-charging-0 = " "; animation-charging-1 = " "; animation-charging-2 = " "; animation-charging-3 = " "; animation-charging-4 = " "; animation-charging-framerate = 500; animation-discharging-0 = " "; animation-discharging-1 = " "; animation-discharging-2 = " "; animation-discharging-3 = " "; animation-discharging-4 = " "; animation-discharging-framerate = 500; }; "module/bspwm" = { type = "internal/bspwm"; label-focused = ""; label-focused-foreground = base0E; label-focused-padding = 1; label-occupied = ""; label-occupied-foreground = base03; label-occupied-padding = 1; label-urgent = ""; label-urgent-foreground = base08; label-urgent-padding = 1; label-empty = ""; label-empty-foreground = base03; label-empty-padding = 1; label-separator = " "; label-separator-foreground = base0C; label-separator-padding = 1; pin-workspaces = true; }; "module/cpu" = { type = "internal/cpu"; interval = 2; format = "