{pkgs, ...}: { programs.waybar = { enable = true; settings = { mainBar = { layer = "top"; position = "top"; modules-left = [ "hyprland/workspaces" "clock" ]; modules-center = ["hyprland/window"]; modules-right = [ "pulseaudio" "network" "backlight" "battery" "custom/notification" "tray" ]; "hyprland/workspaces" = { disable-scroll = false; sort-by-name = true; format = "{name}"; #format-icons = {default = "";}; on-sroll-up = "hyprctl dispatch workspace e+1"; on-scroll-down = "hyprctl dispatch workspace e-1"; on-click = "activate"; }; "hyprland/window" = { max-length = 200; separate-outputs = true; }; pulseaudio = { format = " {icon} "; format-muted = "ﱝ"; format-icons = [ "奄" "奔" "墳" ]; tooltip = true; tooltip-format = "{volume}%"; }; network = { format-wifi = " "; format-disconnected = "睊"; format-ethernet = " "; tooltip = true; tooltip-format = "{signalStrength}%"; }; backlight = { device = "intel_backlight"; format = "{icon}"; format-icons = [ "" "" "" "" "" "" "" "" "" ]; tooltip = true; tooltip-format = "{percent}%"; }; battery = { states = { warning = 30; critical = 15; catastrophic = 10; }; events = { on-discharging-warning = "${pkgs.libnotify}/bin/notify-send -u normal 'Low Battery'"; on-discharging-critical = "${pkgs.libnotify}/bin/notify-send -u critical 'Very Low Battery' 'Hibernating soon'"; on-discharging-11 = "${pkgs.libnotify}/bin/notify-send -u critical 'Very Low Battery' 'Hibernating now'"; on-discharging-catastrophic = "${pkgs.systemd}/bin/systemctl hibernate --check-inhibitors=no"; }; format = "{capacity}% {icon}"; format-charging = ""; format-plugged = ""; format-icons = [ "" "" "" "" "" "" "" "" "" "" "" "" ]; tooltip = true; tooltip-format = "{capacity}%"; }; # "custom/power" = { # tooltip = false; # on-click = "powermenu"; # format = "襤"; # }; clock = { tooltip-format = '' {:%Y %B} {calendar}''; format-alt = ''{:%d %m %Y}''; format = ''{:%H %M}''; }; tray = { icon-size = 10; spacing = 5; }; "custom/notification" = { tooltip = false; format = "{icon}"; format-icons = { notification = " "; none = " "; dnd-notification = " "; dnd-none = " "; inhibited-notification = " "; inhibited-none = " "; dnd-inhibited-notification = " "; dnd-inhibited-none = " "; }; return-type = "json"; exec-if = "which swaync-client"; exec = "swaync-client -swb"; on-click = "swaync-client -t -sw"; on-click-right = "swaync-client -d -sw"; escape = true; }; }; }; #style = ./style.css; systemd = { enable = true; target = "hyprland-session.target"; }; }; }