2023-01-20 21:43:16 +01:00
|
|
|
{ config, pkgs, ... }:
|
|
|
|
{
|
|
|
|
programs.waybar = {
|
|
|
|
enable = true;
|
|
|
|
package = pkgs.waybar.overrideAttrs (oldAttrs: {
|
|
|
|
mesonFlags = oldAttrs.mesonFlags ++ [ "-Dexperimental=true" ];
|
|
|
|
});
|
|
|
|
settings = {
|
|
|
|
mainBar = {
|
|
|
|
layer = "top";
|
|
|
|
position = "top";
|
|
|
|
height = 26;
|
|
|
|
modules-left = [ "wlr/workspaces" ];
|
|
|
|
modules-right = [ "network" "cpu" "temperature" "pulseaudio" "battery" "tray" "clock" ];
|
|
|
|
network = {
|
|
|
|
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}";
|
|
|
|
};
|
|
|
|
cpu = {
|
|
|
|
format = "{usage}% ";
|
|
|
|
};
|
|
|
|
temperature = {
|
2023-01-20 23:23:51 +01:00
|
|
|
hwmon-path = "/sys/class/hwmon/hwmon2/temp1_input";
|
2023-01-20 21:43:16 +01:00
|
|
|
critical-threshold = 80;
|
|
|
|
format = "{temperatureC}°C {icon}";
|
|
|
|
format-icons = [ "" ];
|
|
|
|
};
|
|
|
|
pulseaudio = {
|
|
|
|
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 = "";
|
|
|
|
headset = "";
|
|
|
|
default = [ "" "" "" ];
|
|
|
|
};
|
|
|
|
on-click = "pavucontrol";
|
|
|
|
};
|
|
|
|
battery = {
|
|
|
|
states = {
|
|
|
|
warning = 30;
|
|
|
|
critical = 15;
|
|
|
|
};
|
|
|
|
format = "{capacity}% {icon}";
|
|
|
|
format-charging = "{capacity}% ";
|
|
|
|
format-plugged = "{capacity}% ";
|
|
|
|
format-icons = [ "" "" "" "" "" ];
|
|
|
|
};
|
|
|
|
tray = {
|
|
|
|
spacing = 10;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
xdg.configFile."waybar/style.css".text = ''
|
|
|
|
* {
|
|
|
|
font-family: FontAwesome, Roboto, Helvetica, Arial, sans-serif;
|
|
|
|
font-size: 13px;
|
|
|
|
}
|
|
|
|
|
|
|
|
window#waybar {
|
|
|
|
background-color: transparent;
|
|
|
|
color: #${config.colorScheme.colors.base05};
|
|
|
|
transition-property: background-color;
|
|
|
|
transition-duration: .5s;
|
|
|
|
}
|
|
|
|
|
|
|
|
window#waybar.hidden {
|
|
|
|
background-color: transparent;
|
|
|
|
}
|
|
|
|
|
|
|
|
#workspaces button {
|
|
|
|
padding: 0 5px;
|
|
|
|
background-color: transparent;
|
|
|
|
color: #${config.colorScheme.colors.base05};
|
|
|
|
}
|
|
|
|
|
|
|
|
#workspaces button.active {
|
|
|
|
background-color: #${config.colorScheme.colors.base04};
|
|
|
|
box-shadow: inset 0 -3px #${config.colorScheme.colors.base05};
|
|
|
|
}
|
|
|
|
|
|
|
|
#workspaces button.urgent {
|
|
|
|
background-color: #eb4d4b;
|
|
|
|
}
|
|
|
|
|
|
|
|
#clock,
|
|
|
|
#battery,
|
|
|
|
#cpu,
|
|
|
|
#memory,
|
|
|
|
#temperature,
|
|
|
|
#network,
|
|
|
|
#pulseaudio,
|
|
|
|
#tray{
|
|
|
|
border-radius: 30px;
|
|
|
|
padding: 0 10px;
|
|
|
|
color: #${config.colorScheme.colors.base05};
|
|
|
|
}
|
|
|
|
|
|
|
|
#window,
|
|
|
|
#workspaces {
|
|
|
|
margin: 0 4px;
|
|
|
|
}
|
|
|
|
|
|
|
|
#clock {
|
|
|
|
background-color: #${config.colorScheme.colors.base00};
|
|
|
|
}
|
|
|
|
|
|
|
|
#battery {
|
|
|
|
background-color: #${config.colorScheme.colors.base02};
|
|
|
|
color: #${config.colorScheme.colors.base05};
|
|
|
|
}
|
|
|
|
|
|
|
|
#battery.charging, #battery.plugged {
|
|
|
|
color: #${config.colorScheme.colors.base05};
|
|
|
|
background-color: #${config.colorScheme.colors.base02};
|
|
|
|
}
|
|
|
|
|
|
|
|
#battery.critical:not(.charging) {
|
|
|
|
background-color: #${config.colorScheme.colors.base08};
|
|
|
|
color: #${config.colorScheme.colors.base01};
|
|
|
|
}
|
|
|
|
|
|
|
|
#cpu {
|
|
|
|
background-color: #${config.colorScheme.colors.base06};
|
|
|
|
color: #${config.colorScheme.colors.base01};
|
|
|
|
}
|
|
|
|
|
|
|
|
#network {
|
|
|
|
background-color: #${config.colorScheme.colors.base07};
|
|
|
|
color: #${config.colorScheme.colors.base01};
|
|
|
|
}
|
|
|
|
|
|
|
|
#network.disconnected {
|
|
|
|
background-color: #${config.colorScheme.colors.base08};
|
|
|
|
}
|
|
|
|
|
|
|
|
#pulseaudio {
|
|
|
|
background-color: #${config.colorScheme.colors.base03};
|
|
|
|
color: #${config.colorScheme.colors.base05};
|
|
|
|
}
|
|
|
|
|
|
|
|
#temperature {
|
|
|
|
background-color: #${config.colorScheme.colors.base05};
|
|
|
|
color: #${config.colorScheme.colors.base01};
|
|
|
|
}
|
|
|
|
|
|
|
|
#temperature.critical {
|
|
|
|
background-color: #${config.colorScheme.colors.base08};
|
|
|
|
color: #${config.colorScheme.colors.base01};
|
|
|
|
}
|
|
|
|
|
|
|
|
#tray {
|
|
|
|
background-color: #${config.colorScheme.colors.base01};
|
|
|
|
color: #${config.colorScheme.colors.base05};
|
|
|
|
}
|
|
|
|
|
|
|
|
'';
|
|
|
|
}
|