diff --git a/home-manager/default.nix b/home-manager/default.nix index 84572f9..8b355a3 100644 --- a/home-manager/default.nix +++ b/home-manager/default.nix @@ -16,6 +16,7 @@ in modules/vscode.nix modules/direnv.nix modules/sway.nix + modules/waybar.nix modules/git.nix modules/gpg.nix modules/udiskie.nix @@ -156,112 +157,6 @@ in userEmail = "mail@felixbreidenstein.de"; }; - programs.waybar = { - enable = true; - settings = [{ - layer = "top"; - position = "bottom"; - height = 28; - modules-left = [ - "sway/workspaces" - "sway/window" - ]; - modules-center = [ - ]; - modules-right = [ - "sway/mode" - "disk" - "pulseaudio" - "network" - "memory" - "cpu" - "temperature" - "battery" - "tray" - "clock" - ]; - modules = { - "battery" = { - states = { - warning = 20; - critical = 10; - }; - format = " {capacity}%"; - format-discharging = "{icon} {capacity}%"; - format-icons = [ - "" - "" - "" - "" - "" - "" - "" - "" - "" - "" - ]; - }; - "cpu" = { - format = " {}"; - }; - "clock" = { - format = "{:%H:%M}"; - tooltip = false; - }; - "memory" = { - interval = 5; - format = " {}%"; - tooltip-format = "{used:0.1f}/{total:0.1f} GB"; - states = { - warning = 80; - critical = 90; - }; - }; - "network" = { - interface = "wl*"; - format-wifi = " {essid}"; - format-icons = [ - "" - ]; - tooltip-format-wifi = "{frequency} MHz, {signaldBm} dBm"; - }; - "pulseaudio" = { - scroll-step = 1; - format = "{icon} {volume}%"; - format-bluetooth = "{icon} {volume}% "; - format-muted = ""; - format-icons = { - headphones = ""; - handsfree = ""; - headset = ""; - phone = ""; - portable = ""; - car = ""; - default = [ "" "" ]; - }; - on-click = "pavucontrol"; - }; - "sway/workspaces" = { - all-outputs = false; - disable-scroll = false; - format = "{name}"; - }; - "temperature" = { - format = " {temperatureC}°C"; - hwmon-path = "/sys/class/hwmon/hwmon3/temp1_input"; - critical-threshold = 75; - }; - "disk" = { - interval = 30; - format = "{free} free"; - path = "/"; - }; - }; - }]; - style = builtins.readFile ./waybar.css; - }; - - services.mako = { enable = true; groupBy = "app-name"; diff --git a/home-manager/waybar.css b/home-manager/modules/waybar.css similarity index 100% rename from home-manager/waybar.css rename to home-manager/modules/waybar.css diff --git a/home-manager/modules/waybar.nix b/home-manager/modules/waybar.nix new file mode 100644 index 0000000..750c457 --- /dev/null +++ b/home-manager/modules/waybar.nix @@ -0,0 +1,105 @@ +{ + programs.waybar = { + enable = true; + settings = [{ + layer = "top"; + position = "bottom"; + height = 28; + modules-left = [ + "sway/workspaces" + "sway/window" + ]; + modules-center = [ + ]; + modules-right = [ + "disk" + "pulseaudio" + "network" + "memory" + "cpu" + "temperature" + "battery" + "tray" + "clock" + ]; + modules = { + "battery" = { + states = { + warning = 20; + critical = 10; + }; + format = " {capacity}%"; + format-discharging = "{icon} {capacity}%"; + format-icons = [ + "" + "" + "" + "" + "" + "" + "" + "" + "" + "" + ]; + }; + "cpu" = { + format = " {}"; + }; + "clock" = { + format = "{:%H:%M}"; + tooltip = false; + }; + "memory" = { + interval = 5; + format = " {}%"; + tooltip-format = "{used:0.1f}/{total:0.1f} GB"; + states = { + warning = 80; + critical = 90; + }; + }; + "network" = { + interface = "wl*"; + format-wifi = " {essid}"; + format-icons = [ + "" + ]; + tooltip-format-wifi = "{frequency} MHz, {signaldBm} dBm"; + }; + "pulseaudio" = { + scroll-step = 1; + format = "{icon} {volume}%"; + format-bluetooth = "{icon} {volume}% "; + format-muted = ""; + format-icons = { + headphones = ""; + handsfree = ""; + headset = ""; + phone = ""; + portable = ""; + car = ""; + default = [ "" "" ]; + }; + on-click = "pavucontrol"; + }; + "sway/workspaces" = { + all-outputs = false; + disable-scroll = false; + format = "{name}"; + }; + "temperature" = { + format = " {temperatureC}°C"; + hwmon-path = "/sys/class/hwmon/hwmon3/temp1_input"; + critical-threshold = 75; + }; + "disk" = { + interval = 30; + format = "{free} free"; + path = "/"; + }; + }; + }]; + style = builtins.readFile ./waybar.css; + }; +}