nixos/home/hyprland/waybar/default.nix

175 lines
5.1 KiB
Nix
Raw Normal View History

{ config, lib, pkgs, ... }: {
2023-10-07 10:23:25 +01:00
home.packages = with pkgs; [ networkmanagerapplet bluez ];
stylix.targets.waybar.enable = false;
xdg.configFile."waybar/scheme.css".text =
with config.lib.stylix.colors.withHashtag; ''
@define-color base00 ${base00};
@define-color base01 ${base01};
@define-color base02 ${base02};
@define-color base03 ${base03};
@define-color base04 ${base04};
@define-color base05 ${base05};
@define-color base06 ${base06};
@define-color base07 ${base07};
@define-color base08 ${base08};
@define-color base09 ${base09};
@define-color base0A ${base0A};
@define-color base0B ${base0B};
@define-color base0C ${base0C};
@define-color base0D ${base0D};
@define-color base0E ${base0E};
@define-color base0F ${base0F};
* { font-family: "${config.stylix.fonts.sansSerif.name}" }
'';
2023-07-10 11:24:42 +01:00
programs.waybar = {
enable = true;
style = ./style.css;
2023-10-13 15:00:40 +01:00
systemd = {
enable = true;
target = "hyprland-session.target";
};
settings.main = {
layer = "top";
position = "top";
# Layout
"modules-left" = [ "custom/launcher" "hyprland/workspaces" ];
"modules-center" = [ ];
"modules-right" = [
"mpris"
"pulseaudio"
"battery"
"disk"
"cpu"
"memory"
"temperature"
"clock"
"tray"
];
# Module config
"custom/launcher" = {
2023-11-04 12:02:56 +00:00
format = " 󰛡 ";
tooltip = false;
on-click = "rofi -show combi";
};
"hyprland/workspaces" = {
format = "{icon}";
format-icons = {
# "1" = "󰛡"; # [a]ny (or def[a]ult)
"1" = "󰟀"; # [t]erminal
"2" = "󰳼"; # [e]ditor
"3" = "󰖟"; # [w]eb browser
"4" = "󰝰"; # [f]iles
"5" = "󰲸"; # [s]ongs
"6" = "󰭹"; # [c]hat
"7" = "󰊗"; # [g]aming
"8" = "󰢹"; # [r]emote
default = "󰛡";
special = "󰓎";
urgent = "󰣘";
};
show-special = true;
};
"hyprland/window" = {
format = "{title}";
separate-outputs = true;
};
mpris = {
"format" =
"{player_icon} <b>{title}</b> [{position}/{length}] {status_icon}";
"interval" = 1;
"player-icons" = {
"default" = "󰲸";
"mpv" = "󰤽";
"kdeconnect" = "󱀟";
"ncspot" = "󰓇";
};
"status-icons" = {
"playing" = "󰐊";
"paused" = "󰏤";
"stopped" = "󰓛";
};
"ignored-players" = [ "firefox" ];
};
pulseaudio = {
scroll-step = 5;
format = "{icon} {format_source}";
format-bluetooth = "{icon} {format_source}";
format-bluetooth-muted = "󰝟 {icon} {format_source}";
format-muted = "󰝟 {format_source}";
format-source = "󰍬";
format-source-muted = "󰍭";
format-icons = {
headphone = "󰋋";
hands-free = "󰥰";
headset = "󰋎";
phone = "󰏲";
portable = "󰏳";
car = "󰄍";
default = [ "󰕿" "󰖀" "󰕾" ];
};
on-click = "pavucontrol";
};
backlight = {
format = "{icon}";
tooltip-format = "{percent}%";
format-icons = [ "" "" "" "" "" "" "" "" "" ];
};
battery = {
states = {
warning = 30;
critical = 15;
};
format = "{icon}";
format-charging = "󰂄";
format-plugged = "󰚥";
tooltip-format = "{time} {capacity}%";
format-icons = [ "󱃍" "󰁺" "󰁻" "󰁼" "󰁽" "󰁾" "󰁿" "󰂀" "󰂁" "󰂂" "󰁹" ];
};
disk = {
format = "{percentage_free}% 󰋊";
path = config.home.homeDirectory;
};
cpu = {
format = "{usage}% 󰻠";
tooltip = false;
};
memory = { format = "{}% 󰍛"; };
temperature = {
critical-threshold = 80;
format = "{temperatureC}°C {icon}";
format-icons = [ "󱃃" "󰔏" "󱃂" ];
};
clock = {
format = "{:%a %d %b %R}";
format-alt = "{:%A %F %T}";
tooltip-format = "<tt><small>{calendar}</small></tt>";
calendar = {
mode = "month";
mode-mon-col = 3;
weeks-pos = "left";
on-scroll = 1;
on-click-right = "mode";
format = {
months = "<span color='#ffead3'><b>{}</b></span>";
days = "<span color='#ecc6d9'><b>{}</b></span>";
weeks = "<span color='#99ffdd'><b>W{}</b></span>";
weekdays = "<span color='#ffcc66'><b>{}</b></span>";
today = "<span color='#ff6699'><b><u>{}</u></b></span>";
};
};
actions = {
on-click-right = "mode";
on-scroll-up = "shift_up";
on-scroll-down = "shift_down";
};
};
tray = {
icon-size = 16;
show-passive-items = true;
spacing = 5;
};
};
2023-07-10 11:24:42 +01:00
};
}