{ pkgs, enable, }: { inherit enable; package = pkgs.waybar-hyprland; settings = { mainBar = { layer = "top"; height = 30; modules-left = ["wlr/workspaces"]; modules-center = ["clock"]; modules-right = ["pulseaudio" "memory" "cpu" "tray"]; "hyprland/workspaces" = { format = "{icon}"; on-click = "activate"; on-scroll-up = "hyprctl dispatch workspace e+1"; on-scroll-down = "hyprctl dispatch workspace e-1"; #format-icons = { # "1" = ""; # "2" = ""; # "3" = ""; # "4" = ""; # "5" = ""; # urgent = ""; # active = ""; # default = ""; #}; sort-by-number = true; }; "wlr/window" = { max-length = 50; }; mpris = { format = "DEFAULT: {player_icon} {dynamic}"; format-paused = "DEFAULT: {status_icon} {dynamic}"; player-icons = { default = "▶"; mpv = "🎵"; }; status-icons = { paused = "⏸"; }; }; pulseaudio = { format = "{volume}% {icon}"; format-bluetooth = " {volume}% {icon}"; format-muted = ""; format-icons = { headphone = ""; hands-free = ""; headset = ""; phone = ""; portable = ""; car = ""; default = ["" ""]; }; scroll-step = 1; on-click = "pavucontrol"; ignored-sinks = ["Easy Effects Sink"]; }; cpu = { interval = 10; format = " {load}% {icon}"; format-icons = ["▁" "▂" "▃" "▄" "▅" "▆" "▇" "█"]; }; memory = { interval = 30; format = " {used:0.1f}G / {total:0.1f}G"; }; clock = { # TODO: Fix that calendar width is too small format = "{:%H:%M}  "; format-alt = "{:%A, %B %d, %Y (%R)}"; tooltip-format = "{calendar}"; calendar = { mode = "year"; mode-mon-col = 3; weeks-pos = "right"; on-scroll = 1; on-click-right = "mode"; format = { months = "{}"; days = "{}"; weeks = "W{}"; weekdays = "{}"; today = "{}"; }; }; actions = { on-click-right = "mode"; on-click-forward = "tz_up"; on-click-backward = "tz_down"; on-scroll-up = "shift_up"; on-scroll-down = "shift_down"; }; }; tray = { "icon-size" = 21; "spacing" = 10; }; }; }; }