mirror of
https://github.com/kittywitch/nixfiles.git
synced 2026-02-09 12:29:19 -08:00
241 lines
5.5 KiB
Nix
241 lines
5.5 KiB
Nix
_: {
|
|
programs.waybar = {
|
|
enable = true;
|
|
systemd.enable = true;
|
|
style = ''
|
|
* {
|
|
border: none;
|
|
border-radius: 0;
|
|
font-family: Monaspace Krypton, monospace;
|
|
font-size: 13px;
|
|
min-height: 0;
|
|
}
|
|
|
|
window#waybar {
|
|
all:unset;
|
|
}
|
|
|
|
|
|
.modules-left, .modules-right, .modules-center {
|
|
background: alpha(@base00, 0.9);
|
|
box-shadow: 0px 0px 2px rgba(0,0,0,0.6);
|
|
color: @base05;
|
|
padding: 5px;
|
|
margin: 2px 4px;
|
|
border: 1px solid @base04;
|
|
}
|
|
|
|
tooltip {
|
|
background: rgba(43, 48, 59, 0.5);
|
|
border: 1px solid rgba(100, 114, 125, 0.5);
|
|
}
|
|
tooltip label {
|
|
color: white;
|
|
}
|
|
|
|
#workspaces {
|
|
border-right: 1px solid @base04;
|
|
}
|
|
|
|
|
|
#workspaces button.persistent {
|
|
background: @base01;
|
|
color: @base05;
|
|
}
|
|
|
|
#workspaces button {
|
|
padding: 2px 5px;
|
|
background: @base01;
|
|
color: @base07;
|
|
border-bottom: 3px solid transparent;
|
|
}
|
|
|
|
#workspaces button.empty {
|
|
background: @base04;
|
|
color: @base01;
|
|
}
|
|
|
|
#workspaces button.visible {
|
|
background: @base02;
|
|
color: @base04;
|
|
border-bottom: 3px solid @base0C;
|
|
}
|
|
|
|
#workspaces button.urgent {
|
|
background: @base08;
|
|
color: @base00;
|
|
}
|
|
|
|
#workspaces button.active, #workspaces button.focused {
|
|
background: @base0C;
|
|
color: @base00;
|
|
border-bottom: 3px solid @base0C;
|
|
}
|
|
|
|
#window {
|
|
padding: 0 10px;
|
|
}
|
|
|
|
window#waybar.empty #window {
|
|
padding: 0px;
|
|
margin: 0px;
|
|
}
|
|
|
|
#mode, #custom-notification, #custom-nvidia-vram, #clock, #battery, #idle_inhibitor, #tray, #wireplumber, #bluetooth, #backlight, #mpris {
|
|
padding: 0 5px;
|
|
margin: 0 5px;
|
|
}
|
|
|
|
#mpris {
|
|
color: @base00;
|
|
}
|
|
|
|
#custom-notification {
|
|
font-size: 150%;
|
|
}
|
|
|
|
#custom-nvidia-vram {
|
|
}
|
|
|
|
#mpris.playing {
|
|
background-color: @base0B;
|
|
}
|
|
|
|
#mpris.paused {
|
|
background-color: @base0A;
|
|
}
|
|
|
|
#mpris.stopped {
|
|
background-color: @base09;
|
|
}
|
|
|
|
#mode {
|
|
background: @base07;
|
|
border-bottom: 3px solid @base0D;
|
|
color: @base02;
|
|
}
|
|
|
|
#clock {
|
|
}
|
|
|
|
#battery {
|
|
}
|
|
|
|
#battery.charging {
|
|
color: @base00;
|
|
background-color: @base0B;
|
|
}
|
|
|
|
@keyframes blink {
|
|
to {
|
|
background-color: @base00;
|
|
color: @base07;
|
|
}
|
|
}
|
|
|
|
#battery.warning:not(.charging) {
|
|
background: @base0F;
|
|
color: @base00;
|
|
animation-name: blink;
|
|
animation-duration: 0.5s;
|
|
animation-timing-function: steps(12);
|
|
animation-iteration-count: infinite;
|
|
animation-direction: alternate;
|
|
}
|
|
'';
|
|
settings.main = {
|
|
layer = "top";
|
|
position = "top";
|
|
mode = "dock";
|
|
exclusive = true;
|
|
modules-left = [
|
|
"niri/workspaces"
|
|
"niri/window"
|
|
];
|
|
|
|
modules-center = [
|
|
"clock"
|
|
"mpris"
|
|
];
|
|
|
|
modules-right = [
|
|
"privacy"
|
|
"bluetooth"
|
|
"wireplumber"
|
|
"idle_inhibitor"
|
|
"power-profiles-daemon"
|
|
"backlight"
|
|
"battery"
|
|
"tray"
|
|
"custom/notification"
|
|
];
|
|
|
|
idle_inhibitor = {
|
|
format = "idin {icon}";
|
|
format-icons = {
|
|
activated = "active";
|
|
deactivated = "inactive";
|
|
};
|
|
};
|
|
|
|
bluetooth = {
|
|
on-click = "blueman-manager";
|
|
format = "bt {status}";
|
|
format-connected-battery = "bt {device_alias} {device_battery_percentage}%";
|
|
format-connected = "bt {num_connections} connected";
|
|
tooltip-format = "{controller_alias}\t{controller_address}\n\n{num_connections} connected";
|
|
tooltip-format-connected = "{controller_alias}\t{controller_address}\n\n{num_connections} connected\n\n{device_enumerate}";
|
|
tooltip-format-enumerate-connected = "{device_alias}\t{device_address}";
|
|
tooltip-format-enumerate-connected-battery = "{device_alias}\t{device_address}\t{device_battery_percentage}%";
|
|
};
|
|
mpris = {
|
|
ignored-players = ["firefox"];
|
|
};
|
|
wireplumber = {
|
|
format = "vol {volume}%";
|
|
max-volume = 150;
|
|
};
|
|
backlight = {
|
|
format = "bl {percent}%";
|
|
};
|
|
battery = {
|
|
format = "bat {capacity}%";
|
|
format-tooltip = "{power}W, {timeTo}, {health}%";
|
|
interval = 60;
|
|
|
|
states = {
|
|
warning = 30;
|
|
critical = 15;
|
|
};
|
|
};
|
|
|
|
tray = {
|
|
spacing = 4;
|
|
};
|
|
"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" = "sleep 0.1 && swaync-client -t -sw";
|
|
"on-click-right" = "sleep 0.1 && swaync-client -d -sw";
|
|
escape = true;
|
|
};
|
|
clock = {
|
|
format = "{:%F %H:%M %Z}";
|
|
interval = 60;
|
|
};
|
|
};
|
|
};
|
|
}
|