{ config, lib }: let cfg = config.jhome.gui; in { mainBar = { layer = "top"; position = "top"; margin = "2 2 2 2"; # Choose the order of the modules modules-left = [ "sway/workspaces" ]; modules-center = [ "clock" ]; modules-right = [ "pulseaudio" "backlight" "battery" "sway/language" "memory" ] ++ lib.optional (cfg.tempInfo != null) "temperature" ++ [ "tray" ]; "sway/workspaces" = { disable-scroll = true; persistent-workspaces = { "1" = [ ]; "2" = [ ]; "3" = [ ]; "4" = [ ]; "5" = [ ]; "6" = [ ]; "7" = [ ]; "8" = [ ]; "9" = [ ]; }; }; "sway/language" = { format = "{} "; min-length = 5; tooltip = false; }; memory = { format = "{used:0.1f}/{total:0.1f}GiB "; interval = 3; }; clock = { timezone = "Europe/Berlin"; tooltip-format = "{:%Y %B}\n{calendar}"; format = "{:%a, %d %b, %H:%M}"; }; pulseaudio = { reverse-scrolling = 1; format = "{volume}% {icon} {format_source}"; format-bluetooth = "{volume}% {icon} {format_source}"; format-bluetooth-muted = "{volume}% 󰖁 {icon} {format_source}"; format-muted = "{volume}% 󰖁 {format_source}"; format-source = "{volume}% "; format-source-muted = "{volume}% 󰍭"; format-icons = { headphone = "󰋋"; hands-free = ""; headset = "󰋎"; phone = "󰘂"; portable = ""; car = ""; default = [ "󰕿" "󰖀" "󰕾" ]; }; on-click = "pavucontrol"; min-length = 13; }; temperature = lib.optionalAttrs (cfg.tempInfo != null) { inherit (cfg.tempInfo) hwmon-path; critical-threshold = 80; format = "{temperatureC}°C {icon}"; format-icons = [ "" "" "" "" "" ]; tooltip = false; }; backlight = { device = "intel_backlight"; format = "{percent}% {icon}"; format-icons = [ "󰃚" "󰃛" "󰃜" "󰃝" "󰃞" "󰃟" "󰃠" ]; min-length = 7; }; battery = { states.warning = 30; states.critical = 15; format = "{capacity}% {icon}"; format-charging = "{capacity}% 󰂄"; format-plugged = "{capacity}% 󰚥"; format-alt = "{time} {icon}"; format-icons = [ "󰁺" "󰁻" "󰁼" "󰁽" "󰁾" "󰁿" "󰂀" "󰂁" "󰂂" "󰁹" ]; }; tray = { icon-size = 16; spacing = 0; }; }; }