{ ... }: { programs.waybar = { enable = true; systemd.enable = true; settings = { mainBar = { layer = "top"; "modules-left" = [ "hyprland/workspaces" ]; "modules-right" = [ "tray" "clock" "pulseaudio" "bluetooth" ]; "hyprland/window" = { format = "{title}"; "max-length" = 333; "seperate-outputs" = true; }; clock = { format = "{:%c}"; "tooltip-format" = "{calendar}"; calendar = { mode = "month"; "mode-mon-col" = 3; "on-scroll" = 1; "on-click-right" = "mode"; format = { months = "{}"; days = "{}"; weeks = "{%W}"; weekdays = "{}"; today = "{}"; }; }; actions = { "on-click-middle" = "mode"; "on-click-right" = "shift_up"; "on-click" = "shift_down"; }; }; cpu = { format = "󰯳 {usage}%"; }; memory = { format = "󰍛 {}%"; interval = 1; }; "hyprland/workspaces" = { format = "{icon}"; "active-only" = false; "sort-by-number" = true; "on-click" = "activate"; "all-outputs" = false; "format-icons" = { "1" = "1"; "2" = "2"; "3" = "3"; "4" = "4"; "5" = "5"; "6" = "6"; "7" = "7"; "8" = "8"; "9" = "9"; "10" = "10"; }; }; network = { format = "󰤭 Off"; "format-wifi" = "{essid} ({signalStrength}%)"; "format-ethernet" = "󰈀"; "format-disconnected" = "󰤭 Disconnected"; "tooltip-format" = "{ifname} via {gwaddr} "; "tooltip-format-wifi" = "{essid}({signalStrength}%)  "; "tooltip-format-ethernet" = "󰈀 {ifname}"; "tooltip-format-disconnected" = "Disconnected"; }; pulseaudio = { format = "{icon} {volume}% {format_source}"; "format-bluetooth" = "{icon} {volume}% {format_source}"; "format-bluetooth-muted" = "󰖁 {format_source}"; "format-muted" = "󰖁 {format_source}"; "format-source" = " {volume}%"; "format-source-muted" = ""; "format-icons" = { headphone = ""; phone = ""; portable = ""; default = [ "" "" "" ]; }; "on-click-left" = "pavucontrol"; input = true; }; "custom/playerctl" = { format = "{icon} {}"; "return-type" = "json"; "max-length" = 333; exec = "playerctl -a metadata --format '{\"text\": \"{{artist}} ~ {{markup_escape(title)}}\", \"tooltip\": \"{{playerName}} : {{markup_escape(title)}}\", \"alt\": \"{{status}}\", \"class\": \"{{status}}\"}' -F"; "on-click-middle" = "playerctl play-pause"; "on-click" = "playerctl previous"; "on-click-right" = "playerctl next"; "format-icons" = { Playing = ""; Paused = ""; }; }; tray = { format = "{icon}"; "icon-size" = 14; spacing = 5; }; idle_inhibitor = { format = "{icon}"; "format-icons" = { activated = "󱠛"; deactivated = "󱤱"; }; }; "custom/subs" = { format = "󰗃 {}"; exec = "/usr/local/bin/subsfile.sh"; "on-click" = "vivaldi-stable https://youtube.com/thelinuxcast"; "restart-interval" = 1; }; "custom/spacer" = { format = " "; }; "wlr/taskbar" = { format = "{name}"; "icon-size" = 14; "icon-theme" = "Numix-Circle"; "tooltip-format" = "{title}"; "on-click" = "activate"; "on-click-middle" = "close"; "ignore-list" = [ "Alacritty" ]; "app_ids-mapping" = { firefoxdeveloperedition = "firefox-developer-edition"; }; }; bluetooth = { "on-click" = "./scripts/bluetooth-control"; "on-click-right" = "./scripts/rofi-bluetooth"; "on-click-middle" = "./scripts/rofi-bluetooth"; format = "{icon}"; interval = 15; "format-icons" = { on = ""; off = "󰂲"; disabled = "󰂲"; connected = ""; }; "tooltip-format" = "{device_alias} {status}"; }; }; }; }; }