summaryrefslogtreecommitdiffstats
path: root/waybar.nix
diff options
context:
space:
mode:
authorAndrew <admonty1@protonmail.com>2025-08-21 12:55:58 -0400
committerAndrew <admonty1@protonmail.com>2025-08-21 12:55:58 -0400
commit645f9c407eaca470fea0837274e419b0d54bfa77 (patch)
treec6ea42ea0fc35bcd63b86662277de4b4a98ad671 /waybar.nix
parentmodularize brave config and rmpc config and theme (diff)
downloadnixos-645f9c407eaca470fea0837274e419b0d54bfa77.tar.gz
nixos-645f9c407eaca470fea0837274e419b0d54bfa77.tar.bz2
nixos-645f9c407eaca470fea0837274e419b0d54bfa77.zip
format
Diffstat (limited to '')
-rw-r--r--waybar.nix175
1 files changed, 175 insertions, 0 deletions
diff --git a/waybar.nix b/waybar.nix
new file mode 100644
index 0000000..59a66ba
--- /dev/null
+++ b/waybar.nix
@@ -0,0 +1,175 @@
+{ config, pkgs, ... }:
+{
+ programs.waybar = {
+ enable = true;
+
+ settings = [
+ {
+ output = [ "DP-3" ];
+ height = 37; # Waybar height
+ spacing = 4; # Gaps between modules
+
+ modules-left = [
+ "hyprland/workspaces"
+ "hyprland/window"
+ ];
+
+ modules-center = [
+ "mpris"
+ ];
+ modules-right = [
+ "idle_inhibitor"
+ "load"
+ "wireplumber"
+ "clock"
+ "battery"
+ "tray"
+ ];
+
+ "hyprland/workspaces" = {
+ all-outputs = true;
+ warp-on-scroll = false;
+ enable-bar-scroll = true;
+ disable-scroll-wraparound = true;
+ format = "{icon}";
+ format-icons = {
+ "1" = "";
+ "2" = "";
+ "3" = "";
+ "4" = "";
+ "5" = "";
+ "9" = "";
+ "10" = "";
+ };
+ };
+
+ "hyprland/window" = {
+ format = "{title}";
+ max-length = 40;
+ all-outputs = true;
+ };
+
+ mpris = {
+ format = " {status_icon} {dynamic}";
+ interval = 1;
+ dynamic-len = 40;
+ dynamic-order = [
+ "title"
+ "artist"
+ ];
+ ignored-players = [ "firefox" ];
+ status-icons = {
+ playing = "▶";
+ paused = "⏸";
+ stopped = "";
+ };
+ };
+
+ idle_inhibitor = {
+ format = "{icon}";
+ format-icons = {
+ activated = "";
+ deactivated = "";
+ };
+ };
+
+ tray = {
+ icon-size = 14;
+ spacing = 10;
+ };
+
+ load = {
+ format = " {}";
+ };
+
+ clock = {
+ tooltip-format = "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>";
+ format-alt = "{:%Y-%m-%d}";
+ };
+
+ battery = {
+ states = {
+ warning = 30;
+ critical = 15;
+ };
+ format = "{icon} {capacity}%";
+ format-full = "{icon} {capacity}%";
+ format-charging = " {capacity}%";
+ format-plugged = " {capacity}%";
+ format-alt = "{icon} {time}";
+ format-icons = [
+ ""
+ ""
+ ""
+ ""
+ ""
+ ];
+ };
+
+ wireplumber = {
+ scroll-step = 5;
+ format = "{icon} {volume}%";
+ format-bluetooth = "{icon} {volume}% ";
+ format-bluetooth-muted = " {icon}";
+ format-muted = "";
+ format-icons = {
+ headphone = "";
+ hands-free = "";
+ headset = "";
+ phone = "";
+ portable = "";
+ car = "";
+ default = [
+ ""
+ ""
+ ""
+ ];
+ };
+ on-click = "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle";
+ };
+ }
+
+ # Bar for DP-2 only
+ {
+ output = [ "DP-2" ];
+ height = 24;
+ spacing = 4;
+
+ modules-left = [
+ "hyprland/workspaces"
+ "hyprland/window"
+ ];
+
+ modules-center = [ ];
+ modules-right = [ "clock" ];
+
+ "hyprland/workspaces" = {
+ all-outputs = true;
+ warp-on-scroll = true;
+ enable-bar-scroll = true;
+ format = "{icon}";
+ format-icons = {
+ "1" = "";
+ "2" = "";
+ "3" = "";
+ "4" = "";
+ "5" = "";
+ "9" = "";
+ "10" = "";
+ };
+ };
+
+ "hyprland/window" = {
+ format = "{title}";
+ max-length = 40;
+ all-outputs = true;
+ };
+
+ clock = {
+ tooltip-format = "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>";
+ format-alt = "{:%Y-%m-%d}";
+ };
+ }
+ ];
+ };
+}