nixos/home/hyprland/waybar/default.nix
Evie Litherland-Smith fad083cb25 Change around workspaces and waybar setup
Remove old "all" workspace and bump everything up

Move waybar module files back into default
Add some system stats to waybar output
2023-11-04 12:00:40 +00:00

175 lines
5.1 KiB
Nix

{ config, lib, pkgs, ... }: {
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}" }
'';
programs.waybar = {
enable = true;
style = ./style.css;
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" = {
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;
};
};
};
}