Waybar: use home-manager module
This commit is contained in:
parent
39fc8af382
commit
5a28ef416f
2 changed files with 111 additions and 191 deletions
|
|
@ -5,6 +5,7 @@
|
||||||
./nautilus.nix
|
./nautilus.nix
|
||||||
./nemo.nix
|
./nemo.nix
|
||||||
./terminator.nix
|
./terminator.nix
|
||||||
|
./waybar.nix
|
||||||
./wl_update_background.nix
|
./wl_update_background.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
@ -244,195 +245,4 @@
|
||||||
bind = , XF86MonBrightnessUp, exec, brillo -A 10
|
bind = , XF86MonBrightnessUp, exec, brillo -A 10
|
||||||
bind = , XF86MonBrightnessDown, exec, brillo -U 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
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
110
modules/hm/waybar.nix
Normal file
110
modules/hm/waybar.nix
Normal file
|
|
@ -0,0 +1,110 @@
|
||||||
|
{
|
||||||
|
programs.waybar = {
|
||||||
|
enable = true;
|
||||||
|
systemd.enable = true;
|
||||||
|
settings = {
|
||||||
|
mainBar = {
|
||||||
|
layer = "top";
|
||||||
|
height = 22;
|
||||||
|
modules-left = [
|
||||||
|
"hyprland/workspaces"
|
||||||
|
"hyrpland/window"
|
||||||
|
];
|
||||||
|
modules-right = [
|
||||||
|
# "hyprland/language"
|
||||||
|
"idle_inhibitor"
|
||||||
|
# "custom/media"
|
||||||
|
"pulseaudio"
|
||||||
|
"network"
|
||||||
|
"cpu"
|
||||||
|
"memory"
|
||||||
|
"temperature"
|
||||||
|
"keyboard-state"
|
||||||
|
"backlight"
|
||||||
|
"battery"
|
||||||
|
"battery#bat2"
|
||||||
|
"clock"
|
||||||
|
"tray"
|
||||||
|
];
|
||||||
|
|
||||||
|
"keyboard-state" = {
|
||||||
|
"numlock" = true;
|
||||||
|
"capslock" = true;
|
||||||
|
"format" = "{name} {icon}";
|
||||||
|
"format-icons" = { "locked" = ""; "unlocked" = ""; };
|
||||||
|
};
|
||||||
|
"idle_inhibitor" = {
|
||||||
|
"format" = "{icon}";
|
||||||
|
"format-icons" = { "activated" = ""; "deactivated" = ""; };
|
||||||
|
};
|
||||||
|
"tray" = { "spacing" = 10; };
|
||||||
|
"clock" = {
|
||||||
|
"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" = "{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";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue