{
...
}:
{
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}";
};
};
};
};
}