let colors = { fg = "#FFFFFF"; bg = "#191830"; border = "#F72585"; warn = "#f00"; altfg = "#F72585"; invisible = "#00400080"; currentWorkspace = "#FAD000"; seperatorColor = "#FAD000"; }; script = "~/.config/scripts"; in { home-manager.users.grape.services.polybar = { config = { "module/date" = { type = "internal/date"; font-1 = "Jetbrains Mono Nerd font"; interval = 1; time = "%I:%M:%S"; date = "%Y-%m-%d%"; label = "%time% %date%"; format = "%{T2}%{F${colors.bg}}%{F-}%{T-}<label>%{T2}%{F${colors.bg}}%{F-}%{T-}"; label-foreground = "${colors.fg}"; label-background = "${colors.fg}"; }; # TODO include labels right into format for each module instea dof having a different module "module/fs-label-system" = { type = "custom/text"; label = "SYS "; label-foreground = "${colors.seperatorColor}"; }; "module/fs-label-data" = { type = "custom/text"; label = "DAT "; label-foreground = "${ colors. seperatorColor}"; }; "module/ewmh" = { type = "internal/xworkspaces"; pin-workspaces = false; label-active-foreground = "${colors.currentWorkspace}"; }; "module/cpu-temp" = { base-temperature = "20"; format = "%{T2}%{F#191830}%{F-}%{T-}%{B#191830}%{F#FAD000}CPU %{F-}<label>%{B-}"; format-warn = "%{T2}%{F#191830}%{F-}%{T-}%{B#191830}%{F#FAD000}CPU %{F-}<label-warn>%{B-}"; hwmon-path = "/sys/devices/platform/coretemp.0/hwmon/hwmon2/temp1_input"; label-background = "#191830"; label-foreground = "#FFFFFF"; label-warn-foreground = "#f00"; label = "%temperature% "; thermal-zone = 0; type = "internal/temperature"; warn-temperature = 85; zone-type = "x86_pkg_temp"; }; "module/cpu-usage" = { type = "internal/cpu"; interval = "1.5"; label = "CPU %percentage%%"; format = "%{T2}%{F#191830}%{F-}%{T-}%{B${colors.bg}}<label>"; label-foreground = "${colors.fg}"; label-background = "${colors.fg}"; }; "module/gpu-temp" = { type = "custom/script"; interval = "1.5"; exec = "nvidia-smi --query-gpu=temperature.gpu --format=csv,noheader,nounits"; format = "%{T2}%{F#191830}%{F-}%{T-}%{B${colors.bg}}%{F${colors.seperatorColor}}GPU %{F-}%{B-}<label>"; label-foreground = colors.fg; format-suffix = "°C "; }; "module/gpu-usage" = { type = "custom/script"; interval = "1.5"; exec = "nvidia-smi --query-gpu=memory.used --format=csv,noheader,nounits"; format = "<label> mb%{T2}%{F#191830}%{F-}%{T-}"; }; "module/memory" = { type = "internal/memory"; interval = 1; format = "%{F${colors.seperatorColor}}RAM%{F-} <label>"; label = "%used%"; label-warn = "%used%"; warn-percentage = 60; label-warn-foreground = "${colors.warn}"; }; "fs-base" = { type = "internal/fs"; label-unmounted = "?"; format-prefix-foreground = "${colors.fg}"; warn-precentage = "80%"; }; "module/fs-system" = { "inherit" = "fs-base"; mount-0 = "/"; interval = 30; label-mounted = "%free%(%total%)"; }; "module/fs-data" = { "inherit" = "fs-base"; mount-0 = "/mnt/terra"; interval = 30; label-mounted = "%free%(%total%)"; }; "module/battery" = { type = "internal/battery"; full-at = 95; low-at = 20; battery = "BAT0"; adapter = "AC0"; poll-interval = 4; }; "module/keyboard" = { type = "internal/xkeyboard"; format = "%{T2}%{F#191830}%{F-}%{T-}%{B#191830}<label-layout>%{B-}%{B#191830}%{F#FAD000} <label-indicator>%{T-}%{B-}%{T2}%{F#191830}%{F-}%{T-}"; label-layout-background = "#191830"; label-layout-foreground = "#FFFFFF"; label-indicator-on-capslock = "CAPS"; }; "global/wm" = { override-redirect = false; }; "bar/default" = { background = "#00191830"; border-color = "#00400080"; border-size = "10px"; bottom = "false"; font-0 = "Jetbrains Mono Nerd font:size=11;3"; font-1 = "Jetbrains Mono Nerd font:size=22;5"; foreground = "#FFFFFF"; height = 34; modules-center = "ewmh"; modules-left = "date s keyboard battery"; modules-right = " fs-data s fs-system s memory s start gpu-temp gpu-usage end s cpu-temp cpu-usage"; padding-left = 2; padding-right = 2; radius = 15; width = "100%"; }; }; }; }