diff --git a/modules/hm/hyprland.nix b/modules/hm/hyprland.nix
index 7897840..da9cc04 100644
--- a/modules/hm/hyprland.nix
+++ b/modules/hm/hyprland.nix
@@ -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"= "{}"
- # };
- # "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"= " ";
- # "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" = "{=%Y %B}\n{calendar}";
- "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
- };
- };
}
diff --git a/modules/hm/waybar.nix b/modules/hm/waybar.nix
new file mode 100644
index 0000000..1b0c8a0
--- /dev/null
+++ b/modules/hm/waybar.nix
@@ -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" = "{=%Y %B}\n{calendar}";
+ "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";
+ };
+ };
+ };
+ };
+}