Waybar: use home-manager module

This commit is contained in:
Filippo Berto 2024-01-14 14:33:20 +01:00
parent 39fc8af382
commit 5a28ef416f
No known key found for this signature in database
GPG key ID: FE98AE5EC52B1056
2 changed files with 111 additions and 191 deletions

View file

@ -5,6 +5,7 @@
./nautilus.nix
./nemo.nix
./terminator.nix
./waybar.nix
./wl_update_background.nix
];
@ -244,195 +245,4 @@
bind = , XF86MonBrightnessUp, exec, brillo -A 10
bind = , XF86MonBrightnessDown, exec, brillo -U 10
'';
xdg.configFile."waybar/config.jsonc".text = builtins.toJSON {
layer = "top"; # Waybar at top layer
# "position" = "bottom"; # Waybar position (top|bottom|left|right)
height = 22; # Waybar height (to be removed for auto height)
# "width" = 1280; # Waybar width
# "spacing" = 4; # Gaps between modules (4px)
# Choose the order of the modules
modules-left = [
"hyprland/workspaces"
"hyprland/window"
];
# "modules-center" = ["sway/window"];
modules-right = [
# "hyprland/language"
"idle_inhibitor"
# "custom/media"
"pulseaudio"
"network"
"cpu"
"memory"
"temperature"
"keyboard-state"
"battery"
"battery#bat2"
"clock"
"tray"
];
keyboard-state = {
"numlock" = true;
"capslock" = true;
"format" = "{name} {icon}";
"format-icons" = {
"locked" = "";
"unlocked" = "";
};
};
# "sway/mode"= {
# "format"= "<span style=\"italic\">{}</span>"
# };
# "sway/scratchpad"= {
# "format"= "{icon} {count}";
# "show-empty"= false;
# "format-icons"= ["" ""];
# "tooltip"= true;
# "tooltip-format"= "{app}= {title}"
# };
# "mpd"= {
# "format"= "{stateIcon} {consumeIcon}{randomIcon}{repeatIcon}{singleIcon}{artist} - {album} - {title} ({elapsedTime:%M:%S}/{totalTime:%M:%S}) ⸨{songPosition}|{queueLength}⸩ {volume}% ";
# "format-disconnected"= "Disconnected ";
# "format-stopped"= "{consumeIcon}{randomIcon}{repeatIcon}{singleIcon}Stopped ";
# "unknown-tag"= "N/A";
# "interval"= 2;
# "consume-icons"= {
# "on"= " "
# };
# "random-icons"= {
# "off"= "<span color=\"#f53c3c\"></span> ";
# "on"= " "
# };
# "repeat-icons"= {
# "on"= " "
# };
# "single-icons"= {
# "on"= "1 "
# };
# "state-icons"= {
# "paused"= "";
# "playing"= ""
# };
# "tooltip-format"= "MPD (connected)";
# "tooltip-format-disconnected"= "MPD (disconnected)"
# };
"idle_inhibitor" = {
"format" = "{icon}";
"format-icons" = {
"activated" = "";
"deactivated" = "";
};
};
"tray" = {
# "icon-size"= 21;
"spacing" = 10;
};
"clock" = {
# "timezone"= "America/New_York";
"tooltip-format" = "<big>{=%Y %B}</big>\n<tt><small>{calendar}</small></tt>";
"format-alt" = "{=%Y-%m-%d}";
};
"cpu" = {
"format" = "{usage}% ";
"tooltip" = false;
};
"memory" = {
"format" = "{}% ";
};
"temperature" = {
# "thermal-zone"= 2;
# "hwmon-path"= "/sys/class/hwmon/hwmon2/temp1_input";
"critical-threshold" = 90;
# "format-critical"= "{temperatureC}°C {icon}";
"format" = "{temperatureC}°C {icon}";
"format-icons" = [
# ""
""
# ""
];
};
"backlight" = {
# "device"= "acpi_video1";
"format" = "{percent}% {icon}";
"format-icons" = [
""
""
""
""
""
""
""
""
""
];
};
"battery" = {
"states" = {
# "good"= 95;
"warning" = 30;
"critical" = 15;
};
"format" = "{capacity}% {icon}";
"format-charging" = "{capacity}% ";
"format-plugged" = "{capacity}% ";
"format-alt" = "{time} {icon}";
# "format-good"= ""; # An empty format will hide the module
# "format-full"= "";
"format-icons" = [
""
""
""
""
""
];
};
"battery#bat2" = {
"bat" = "BAT2";
};
"network" = {
# "interface"= "wlp2*"; # (Optional) To force the use of this interface
"format-wifi" = "{essid} ({signalStrength}%) ";
"format-ethernet" = "{ipaddr}/{cidr} ";
"tooltip-format" = "{ifname} via {gwaddr} ";
"format-linked" = "{ifname} (No IP) ";
"format-disconnected" = "Disconnected ";
"format-alt" = "{ifname}= {ipaddr}/{cidr}";
};
"pulseaudio" = {
# "scroll-step"= 1; # %; can be a float
"format" = "{volume}% {icon} {format_source}";
"format-bluetooth" = "{volume}% {icon} {format_source}";
"format-bluetooth-muted" = " {icon} {format_source}";
"format-muted" = " {format_source}";
"format-source" = "{volume}% ";
"format-source-muted" = "";
"format-icons" = {
"headphone" = "";
"hands-free" = "";
"headset" = "";
"phone" = "";
"portable" = "";
"car" = "";
"default" = [
""
""
""
];
};
"on-click" = "pavucontrol";
};
"custom/media" = {
"format" = "{icon} {}";
"return-type" = "json";
"max-length" = 40;
"format-icons" = {
"spotify" = "";
"default" = "🎜";
};
"escape" = true;
"exec" = "$HOME/.config/waybar/mediaplayer.py 2> /dev/null"; # Script in resources folder
# "exec" = "$HOME/.config/waybar/mediaplayer.py --player spotify 2> /dev/null" # Filter player based on name
};
};
}