{ pkgs, lib, osConfig, ... }: { config = lib.mkIf (builtins.elem "hyprland" osConfig.desktop || builtins.elem "sway" osConfig.desktop) { programs.waybar = { enable = true; style = ./other-files/waybar.css; settings = { mainBar = { layer = "bottom"; position = "top"; modules-left = [ "hyprland/workspaces" ]; modules-center = [ "hyprland/window" ]; modules-right = [ "idle_inhibitor" "pulseaudio" "network" "cpu" "memory" "temperature" "backlight" "keyboard-state" "battery" "clock" "tray" ]; keyboard-state = { numlock = true; capslock = true; format = "{name} {icon}"; format-icons = { locked = ""; unlocked = ""; }; }; idle_inhibitor = { format = "{icon}"; format-icons = { activated = ""; deactivated = ""; }; }; tray = { spacing = 10; }; clock = { # timezone = "America/Denver"; tooltip-format = "{:%Y %B}\n{calendar}"; format-alt = "{:%Y-%m-%d}"; }; cpu = { format = "{usage}% "; tooltip = false; }; memory = { format = "{}% "; }; temperature = { # thermal-zone = 2; # hwmon-path = "/sys/class/hwmon/hwmon2/temp1_input"; critical-threshold = 80; # format-critical = "{temperatureC}°C {icon}"; format = "{temperatureC}°C {icon}"; format-icons = ["" "" ""]; }; backlight = { format = "{percent}% {icon}"; format-icons = ["" "" "" "" "" "" "" "" ""]; }; battery = { states = { # good = 95; warning = 30; critical = 15; }; format = "{capacity}% {icon}"; format-charging = "{capacity}% "; format-plugged = "{capacity}% "; format-alt = "{time} {icon}"; # format-good = ""; # An empty format will hide the module # format-full = ""; format-icons = ["" "" "" "" ""]; }; network = { # interface = "wlp2*"; # (Optional) To force the use of this interface format-wifi = "{essid} ({signalStrength}%) "; format-ethernet = "{ipaddr}/{cidr} "; tooltip-format = "{ifname} via {gwaddr} "; format-linked = "{ifname} (No IP) "; format-disconnected = "Disconnected ⚠"; format-alt = "{ifname}: {ipaddr}/{cidr}"; }; pulseaudio = { # scroll-step = 1; # %, can be a float format = "{volume}% {icon} {format_source}"; format-bluetooth = "{volume}% {icon} {format_source}"; format-bluetooth-muted = " {icon} {format_source}"; format-muted = " {format_source}"; format-source = "{volume}% "; format-source-muted = ""; format-icons = { headphone = ""; hands-free = ""; headset = ""; phone = ""; portable = ""; car = ""; default = ["" "" ""]; }; on-click = "pavucontrol"; }; }; }; }; }; }