summary refs log tree commit diff
path: root/.config/waybar/config.jsonc
diff options
context:
space:
mode:
Diffstat (limited to '.config/waybar/config.jsonc')
-rw-r--r--.config/waybar/config.jsonc326
1 files changed, 326 insertions, 0 deletions
diff --git a/.config/waybar/config.jsonc b/.config/waybar/config.jsonc
new file mode 100644
index 0000000..eac00c8
--- /dev/null
+++ b/.config/waybar/config.jsonc
@@ -0,0 +1,326 @@
+{
+  "position": "top",
+  "spacing": 0,
+  "reload_style_on_change": true,
+
+  // ------------------------------------------------------------------------ //
+
+  "modules-left": [
+    "custom/launcher",
+    "river/mode",
+    "river/tags",
+    "river/window",
+  ],
+
+  "custom/launcher": {
+    "format": "",
+    "tooltip": false,
+    "on-click": "riverctl spawn fuzzel",
+  },
+
+  "river/mode": {},
+
+  "river/tags": {
+    "format": ":{}",
+    "num-tags": 9,
+    "hide-vacant": true,
+  },
+
+  "river/window": {
+    "expand": true,
+    "max-length": 50,
+  },
+
+  // ------------------------------------------------------------------------ //
+
+  "modules-center": [
+    "privacy",
+    "custom/screenrec",
+    "clock#local",
+    "clock#utc",
+    "custom/calendar",
+    "custom/timew",
+  ],
+
+  "privacy": {
+    "icon-size": 9,
+    "modules": [
+      { "type": "screenshare" },
+      { "type": "audio-in" },
+    ],
+  },
+
+  "custom/screenrec": {
+    "format": "{icon}",
+    "format-icons": {
+      "running": "󰹑"
+    },
+    "exec": "~/.config/waybar/module-screenrec.sh",
+    "return-type": "json",
+    "interval": "once",
+    "signal": 1,
+  },
+
+  "clock#local": {
+    "format": "<i>{:%a</i> %d %b <b>%H:%M}</b>",
+    "tooltip-format": "TZ: {:%Z %z}\n\n<tt>{calendar}</tt>",
+    "locale": "",
+    "calendar": {
+      "mode": "year",
+      "mode-mon-col": 3,
+      "weeks-pos": "",
+      "on-scroll": 1,
+      "format": {
+        "today": "<span color='red'><b><u>{}</u></b></span>",
+      },
+    },
+    "actions": {
+      "on-click-right": "mode",
+    },
+  },
+
+  "clock#utc": {
+    "format": "<small>{:%Z</small> %H:%M}",
+    "format-alt": "<small>{:%Z %z</small> %a %b %d %H:%M}",
+    "tooltip-format": "{tz_list}",
+    "timezones": [
+      "Etc/UTC",
+
+      "America/Los_Angeles",
+      "Europe/Berlin",
+      "Europe/Istanbul",
+      "Asia/Kolkata",
+      "Asia/Tokyo",
+    ],
+    "actions": {
+      "on-scroll-up": "tz_up",
+      "on-scroll-down": "tz_down",
+    },
+  },
+
+  "custom/calendar": {
+    "exec": "~/.config/waybar/module-calendar.sh",
+    "return-type": "json",
+    "interval": 10800,
+    "on-click": "calm",
+  },
+
+  "custom/timew": {
+    "exec": "~/.config/waybar/module-timew.sh",
+    "return-type": "json",
+    "interval": 900,
+  },
+
+  // ------------------------------------------------------------------------ //
+
+  "modules-right": [
+    "mpris",
+    "tray",
+    "group/tailscale",
+    "group/net",
+    "bluetooth",
+    "group/sys",
+    "idle_inhibitor",
+    "backlight",
+    "pulseaudio",
+    "power-profiles-daemon",
+    "upower",
+  ],
+
+  "mpris": {
+    "max-length": 50,
+    "format": "{player_icon} {dynamic}",
+    "format-paused": "{status_icon} <i>{dynamic}</i>",
+    "dynamic-order": ["artist", "title", "length"],
+    "player-icons": {
+      "default": "󰲸",
+      "firefox": "",
+      "librewolf": "",
+      "spotify": "󰓇",
+      "mpv": "",
+    },
+    "status-icons": {
+      "paused": "",
+      "playing": "",
+      "stopped": "",
+    }
+  },
+
+  "tray": {
+    "icon-size": 13,
+    "spacing": 2
+  },
+
+  "group/net": {
+    "orientation": "inherit",
+    "drawer": {
+      "transition-duration": 0,
+      "click-to-reveal": true,
+    },
+    "modules": [
+      "network#primary",
+      "network#bandwidth",
+    ],
+  },
+
+  "network#primary": {
+    "format-wifi": "󰖩{signalStrength}%",
+    "format-ethernet": "󰈀",
+    "format-disconnected": "󰌙",
+    //  SSID:      {essid}
+    //             {bssid}
+    // 󱄙 Signal:    {signaldBm} dBm
+    //  Frequency: {frequency} MHz
+    //
+    // 󰛳 Interface: {ifname}
+    // 󰩟 IP:        {ipaddr}
+    // 󱂇 Gateway:   {gwaddr}/{cidr}
+    "tooltip-format-wifi": " SSID:      {essid}\n            {bssid}\n󱄙 Signal:    {signaldBm} dBm\n Frequency: {frequency} MHz\n\n󰛳 Interface: {ifname}\n󰩟 IP:        {ipaddr}\n󱂇 Gateway:   {gwaddr}/{cidr}",
+    "tooltip-format-ethernet": "󰛳 Interface: {ifname}\n󰩟 IP:        {ipaddr}\n󱂇 Gateway:   {gwaddr}/{cidr}",
+    "menu": "on-click-right",
+    "menu-file": "~/.config/waybar/menu-network.xml",
+    "menu-actions": {
+      "open-netm": "netm",
+      "airplane-mode": "fyi todo",
+    },
+    "on-click": "netm",
+  },
+
+  "network#bandwidth": {
+    "format": "󱦲{bandwidthUpBytes} 󱦳{bandwidthDownBytes}",
+  },
+
+  "group/tailscale": {
+    "orientation": "inherit",
+    "modules": [
+      "network#tailscale",
+      "custom/tailscale",
+    ],
+  },
+
+  "network#tailscale": {
+    "interface": "tailscale0",
+    "format": "󱗼",
+    "format-disconnected": "",
+    "format-disabled": "",
+    "format-linked": "",
+    "tooltip-format": "{ifname}: {bandwidthUpBits} {bandwidthDownBits}",
+    "tooltip-format-disconnected": "disconnected",
+    "on-click": "vpnm",
+  },
+
+  "custom/tailscale": {
+    "format": "{icon}",
+    "format-icons": {
+      "exit-node": "󰞀",
+      "work": "work",
+    },
+    "exec": "~/.config/waybar/module-tailscale.sh",
+    "return-type": "json",
+    "signal": 2,
+    "on-click": "vpnm",
+  },
+
+  "bluetooth": {
+    "format-on": "󰂯",
+    "format-off": "󰂲",
+    "format-disabled": "󰂲",
+    "format-no-controller": "󰂲",
+    "format-connected": "󰂱",
+    "format-connected-battery": "󰂱{icon}",
+    "format-icons": ["󰂎","󱊡","󱊢","󱊣"],
+    "tooltip-format": "{device_enumerate}",
+    "tooltip-format-enumerate-connected": "{device_alias} {device_address}",
+    "tooltip-format-enumerate-connected-battery": "{device_alias} {device_address} {device_battery_percentage}%",
+    "on-click": "blum"
+  },
+
+  "group/sys": {
+    "orientation": "inherit",
+    "drawer": {
+      "transition-duration": 0,
+      "click-to-reveal": true,
+    },
+    "modules": [
+      "load",
+      "cpu",
+      "memory",
+      "temperature",
+    ],
+  },
+
+  "load": {
+    "format": "{load1} {load5} {load15}",
+    "on-right-click": "foot -a foot-float -W 120x40 -- btop"
+  },
+
+  "cpu": {
+    "format": "cpu:{usage}%",
+    "format-icons": ["󰍛","󰍛","󰍛","󰍛","󰀦"],
+  },
+
+  "memory": {
+    "format": "mem:{percentage}%",
+    "format-icons": ["󰘚"],
+  },
+
+  "temperature": {
+    "critical-threshold": 100,
+    "format": "{icon}{temperatureC}℃",
+    "format-icons": ["󱃃", "󰔏", "󰸁", "󱜜"]
+  },
+
+  "idle_inhibitor": {
+    "format": "{icon}",
+    "format-icons": {
+      "activated": "󰅶",
+      "deactivated": "󰾪"
+    }
+  },
+
+  "backlight": {
+    "device": "auto",
+    "format": "󰃠{percent}%",
+    "actions": {
+      "on-scroll-up": "brightnessctl set 5%+",
+      "on-scroll-down": "brightnessctl set 5%-",
+    },
+    "reverse-scrolling": true,
+  },
+
+  "pulseaudio": {
+    "format": "{icon}{volume}%",
+    "format-muted": "󰖁{volume}%",
+    "format-icons": {
+      "headphones": "󰋋",
+      "headset": "󰋎",
+      "phone": "󰏲",
+      "portable": "󱀞",
+      "default": ["󰕿", "󰖀", "󰕾"]
+    },
+    "reverse-scrolling": true,
+    "on-click": "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle",
+    "on-click-right": "audm",
+  },
+
+  "power-profiles-daemon": {
+    "format": "{icon}",
+    "tooltip-format": "Power profile: {profile}\nDriver: {driver}",
+    "tooltip": true,
+    "format-icons": {
+      "default": "",
+      "performance": "󰚌",
+      "balanced": "󰫕",
+      "power-saver": ""
+    }
+  },
+
+  "upower": {
+    "format": "{percentage} {time}",
+    "format-alt": "{percentage}",
+    "icon-size": 9,
+    "hide-if-empty": true,
+    "tooltip": true,
+  },
+}
+// vim: et sw=2