nixos/home/waybar.nix

151 lines
5.4 KiB
Nix
Executable File

{ config, lib, ... }:
{
programs.waybar = {
enable = false;
systemd.enable = true;
style = ''
* {
font-size: 14px;
font-weight: 600;
}
window#waybar {
background-color: transparent;
border-radius: ${toString config.wayland.windowManager.hyprland.settings.decoration.rounding};
}
#workspaces button {
all: unset;
padding: 1px 3px;
color: alpha(@base05, 0.5);
border-radius: ${toString config.wayland.windowManager.hyprland.settings.decoration.rounding};
}
#workspaces button.active {
color: @base05;
}
#workspaces {
margin: 0px;
padding: 2px 6px;
background-color: @base00;
border-radius: ${toString config.wayland.windowManager.hyprland.settings.decoration.rounding};
}
#mpris,
#backlight,
#tray,
#pulseaudio,
#window,
#upower,
#clock,
#power-profiles-daemon {
padding: 2px 10px;
background-color: @base00;
color: @base05;
border-radius: ${toString config.wayland.windowManager.hyprland.settings.decoration.rounding};
}
#tray {
padding: 0px 8px;
}
window#waybar.empty #window {
background: none;
padding: 0px;
margin: 0px;
}
#custom-sep {
color: alpha(@base05, 0.5);
}
'';
settings = {
mainBar = {
margin-top = config.wayland.windowManager.hyprland.settings.general.gaps_out;
margin-left = config.wayland.windowManager.hyprland.settings.general.gaps_out;
margin-right = config.wayland.windowManager.hyprland.settings.general.gaps_out;
layer = "top";
position = "top";
spacing = 4;
modules-left = [
"hyprland/workspaces"
"mpris"
];
modules-center = [
"hyprland/window"
];
modules-right = [
"pulseaudio"
"upower"
"clock"
"tray"
];
"custom/sep" = {
format = " | ";
};
"mpris" = {
player = "spotify";
format = "{title} - {artist}";
};
"hyprland/window" = {
format = "{}";
max-length = 40;
};
"tray" = {
icon-size = 14;
spacing = 5;
};
"hyprland/workspaces" = {
format = "{name}";
};
"upower" = {
format = "{percentage}";
format-alt = "{time}";
icon-size = 12;
hide-if-empty = true;
tooltip = false;
tooltip-spacing = 20;
};
"backlight" = {
format = "{icon} {percent}%";
format-icons = [
""
""
""
""
""
""
""
""
""
];
};
"pulseaudio" = {
format = "{icon} {volume}%";
format-muted = "󰝟 {volume}%";
on-click = "pavucontrol";
format-icons = [
"󰕿"
"󰖀"
"󰕾"
];
};
"clock" = {
interval = 1;
format = "{:%H:%M | %d.%m.%Y}";
format-alt = "{:%H:%M | %d.%m.%Y}";
tooltip-format = "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>";
};
};
};
};
}