forked from foxora/nix
100 lines
2.6 KiB
Nix
100 lines
2.6 KiB
Nix
{upkgs, ...}: {
|
|
programs.waybar = {
|
|
enable = true;
|
|
settings = {
|
|
mainBar = {
|
|
layer = "top";
|
|
position = "top";
|
|
height = 20;
|
|
modules-left = ["hyprland/workspaces" "wlr/taskbar" "custom/media"];
|
|
modules-center = ["clock"];
|
|
modules-right = ["cpu" "memory" "network" "pulseaudio" "privacy" "tray"];
|
|
|
|
# left
|
|
"hyprland/workspaces" = {
|
|
format = "{id}";
|
|
};
|
|
"wlr/taskbar" = {
|
|
format = "{icon}";
|
|
icon-size = 12;
|
|
};
|
|
"custom/media" = {
|
|
exec = "auroramedia";
|
|
return-type = "json";
|
|
escape = true;
|
|
restart-interval = 1;
|
|
};
|
|
|
|
# center
|
|
"clock" = {
|
|
format = "{:%Y %b %a %d %H:%M:%S}";
|
|
interval = 1;
|
|
tooltip = false;
|
|
};
|
|
|
|
# right
|
|
"cpu" = {
|
|
format = " {usage}%";
|
|
interval = 1;
|
|
};
|
|
"memory" = {
|
|
format = " {used:0.1f} / {total:0.1f} GiB";
|
|
interval = 1;
|
|
};
|
|
"network" = {
|
|
format = "{bandwidthUpBytes} {bandwidthDownBytes} {ifname}";
|
|
format-wifi = " {bandwidthUpBytes} {bandwidthDownBytes} ";
|
|
format-ethernet = " {bandwidthUpBytes} {bandwidthDownBytes} ";
|
|
format-disconnected = "no internet ~ rawr! ~ x3"; # empty format hides module
|
|
interval = 1;
|
|
max-length = 32;
|
|
};
|
|
"pulseaudio" = {
|
|
format = "{icon} {volume}%";
|
|
format-muted = " {volume}%";
|
|
format-icons = {
|
|
default = [
|
|
""
|
|
""
|
|
""
|
|
];
|
|
};
|
|
"scroll-step" = 5;
|
|
};
|
|
"privacy" = {
|
|
icon-size = 12;
|
|
icon-spacing = 5;
|
|
transition-duration = 200;
|
|
modules = [
|
|
{
|
|
type = "screenshare";
|
|
tooltip = true;
|
|
tooltip-icon-size = 12;
|
|
}
|
|
{
|
|
type = "audio-in";
|
|
tooltip = true;
|
|
tooltip-icon-size = 12;
|
|
}
|
|
];
|
|
};
|
|
"tray" = {
|
|
icon-size = 12;
|
|
spacing = 10;
|
|
# fixes spotify not showing up when "close button should minimize the Spotify window" is false
|
|
show-passive-items = true;
|
|
};
|
|
|
|
# i only enable this for debugging of window rules lol
|
|
"hyprland/window" = {
|
|
format = "{class} | {title}";
|
|
};
|
|
};
|
|
};
|
|
|
|
style = upkgs.writeTextFile {
|
|
name = "waybar-style.css";
|
|
text = builtins.readFile ./style.css;
|
|
};
|
|
};
|
|
}
|