Waybar

Thanks for checking out my Waybar literate configuration. Please, if you appreciate my work, consider making a donation.

Table of Contents   toc

Sway Laptop Bar

This Org documents contains my Waybar configurations for three different Wayland compositors: Sway, River, and LabWC. It has a total of six separate status bars, one for each of my two outputs, on each of the three compositors. If you’ve ever seen me use a Wayland compositor in a video, I was using a Waybar from this document.

This Org document outputs to three separate files: config.json, rconfig.json for River, and lconfig.json for LabWC. In turn, these bars use the stylesheets style.css, river.css, and labwc.css respectively.

Appearance

[{
    "position": "bottom",
    "height": 42,
    "spacing": 0,
    "output": "eDP-1",
    "reload_style_on_change": true,
    "mode": "dock",
    "modules-left": ["sway/workspaces", "sway/mode"],
    "modules-right": ["mpd", "pulseaudio", "cpu", "memory", "battery", "disk", "backlight", "custom/clock"],
    "sway/workspaces": {
         "disable-scroll": false,
         "disable-scroll-wraparound": true,
         "enable-bar-scroll": true,
         "all-outputs": false,
         "format": "{icon}",
         "format-icons": {
             "1": "",
             "2": "爵",
             "3": "",
             "4": "",
             "5": "",
             "6": "",
             "7": "",
             "8": "",
             "9": "",
             "urgent": "",
             "default": ""
         }
    },
    "sway/mode": {
        "format": "<span style=\"italic\">{}</span>"
    },

MPD

"mpd": {
    "server": "127.0.0.2",
    "format": "{consumeIcon}{artist} - <span style=\"italic\">{title}</span>{singleIcon}{repeatIcon}{randomIcon}{stateIcon}",
    "format-disconnected": " ",
    "format-stopped": "{consumeIcon}{singleIcon}{repeatIcon}{randomIcon} ",
    "title-len": 42,
    "unknown-tag": "N/A",
    "interval": 1,
    "on-click": "mpc --host=127.0.0.2 toggle > /dev/null",
    "on-click-right": "mpc --host=127.0.0.2 next > /dev/null",
    "on-click-middle": "mpc --host=127.0.0.2 prev > /dev/null",
    "consume-icons": {
        "on": " "
    },
    "random-icons": {
        "off": " ",
        "on": " "
    },
    "repeat-icons": {
        "on": " "
    },
    "single-icons": {
        "on": "1 "
    },
    "state-icons": {
        "playing": " ",
        "paused": " "
    },
    "tooltip-format": "{artist} - {album} ({date})",
},

Image

"image#album-art": {
    "path": "/tmp/mpd_cover.jpg",
    "size": 40,
    "interval": 1,
    "on-click": "swayimg /tmp/mpd_cover.jpg"
},

Clock

"custom/clock": {
    "exec": "date +'%I:%M:%S  %a, %b %d'",
    "interval": 1,
    "format": " {}",
    "align": 1,
    "tooltip": false
},

CPU

"cpu": {
    "format": " {usage}%",
    "format-alt": " {avg_frequency} GHz {max_frequency} GHz",
},

Memory

"memory": {
    "format": " {}%",
    "format-alt": "󰍛 {used:0.1f} GB  {swapUsed:0.1f} GB",
    "tooltip-format": "󰍛 {used:0.2f} GB  {swapUsed:0.2f} GB"
},

Disk

"disk": {
    "path": "/mnt/mega/",
    "interval": 1,
    "format": "󰋊 <span style=\"italic\">{free}</span>",
    "format-alt": "󰋊 {used}",
    "tooltip": true,
    "tooltip-format": "{percentageUsed}% of {total}"
},

Battery

"battery": {
    "states": {
        "good": 99,
        "warning": 50,
        "critical": 20
    },
    "full-at": 94,
    "format": "{icon}  <span style=\"italic\">{capacity}%</span>",
    "format-charging": " <span style=\"italic\">{capacity}%</span>",
    "format-plugged": " {capacity}%",
    "format-alt": "{icon}   {time}",
    "format-time": "{H}:{m}",
    "format-icons": ["", "", "", "", "", ""],
    "tooltip": true,
    "tooltip-format": " {time} 󱐋 {power} watts"
},

Backlight

"backlight": {
    "device": "intel_backlight",
    "tooltip": false,
    "format": "{icon} {percent}%",
    "format-icons": ["", "󰪞", "󰪟", "󰪠", "󰪡", "󰪢", "󰪣", "󰪤", "󰪥"],
    "on-click-right": "pkill -x gammastep; gammastep -O 4500K",
    "on-click-middle": "pkill -x gammastep",
    "on-click": "light -S 20 && light -G && echo 20 > .wob.sock",
    "on-scroll-up": "light -A 1 && light -G | cut -d'.' -f1 > /home/babkock/.wob.sock",
    "on-scroll-down": "light -U 1 && light -G | cut -d'.' -f1 > /home/babkock/.wob.sock",
},

Pulseaudio

"pulseaudio": {
    "format": "{icon} <span style=\"italic\">{volume}%</span> {format_source}",
    "format-bluetooth": "{icon}  <span style=\"italic\">{volume}%</span>",
    "format-bluetooth-muted": "  {volume}%",
    "format-muted": " {volume}%",
    "format-source": " {volume}%",
    "format-source-muted": "",
    "tooltip": true,
    "tooltip-format": "{desc}",
    "format-icons": {
        "headphone": "",
        "hands-free": "",
        "headset": "",
        "phone": "",
        "portable": "",
        "car": "",
        "default": ["", "", ""]
    },
    "on-click-right": "pavucontrol",
    "on-click": "pactl set-sink-mute @DEFAULT_SINK@ toggle && pactl get-sink-volume @DEFAULT_SINK@ | head -n 1 | awk '{print substr($5, 1, length($5)-1)}' > /home/babkock/.wob.sock",
    "on-scroll-up": "pactl set-sink-volume @DEFAULT_SINK@ +2% && pactl get-sink-volume @DEFAULT_SINK@ | head -n 1 | awk '{print substr($5, 1, length($5)-1)}' > /home/babkock/.wob.sock",
    "on-scroll-down": "pactl set-sink-volume @DEFAULT_SINK@ -2% && pactl get-sink-volume @DEFAULT_SINK@ | head -n 1 | awk '{print substr($5, 1, length($5)-1)}' > /home/babkock/.wob.sock",
}

Sway Monitor Bar

This is the second bar that Sway uses, and it places it on my monitor (HDMI-A-2), to the right of the bar detailed above.

Appearance

}, {
    "position": "bottom",
    "height": 42,
    "spacing": 0,
    "output": "HDMI-A-2",
    "reload_style_on_change": true,
    "mode": "dock",
    "modules-left": ["sway/workspaces", "sway/window"],
    "modules-right": ["disk", "privacy", "network", "idle_inhibitor", "wireplumber", "temperature", "keyboard-state", "tray"],
    "sway/workspaces": {
        "disable-scroll": false,
        "disable-scroll-wraparound": true,
        "enable-bar-scroll": true,
        "all-outputs": false,
        "format": "{icon}",
        "format-icons": {
            "1": "",
            "2": "爵",
            "3": "",
            "4": "",
            "5": "󰭹",
            "6": "",
            "7": "",
            "8": "",
            "9": "",
            "urgent": "",
            "default": ""
        }
    },

Window

"sway/window": {
    "format": "{title}",
    "separate-outputs": false,
    "tooltip": false,
    "rewrite": {
        "foot": " ",
        "Alacritty": " ",
        "st": " ",
        "\\[spaceman\\] (.*)": " $1",
        "\\[spaceman\\] exit (.*)": " $1",
        "Steam": " ",
        "Sign in to Steam": " ",
        "Shutdown": " ",
        "cava": " ",
        "ncmpcpp (.*)": " <span style=\"italic\">$1</span>",
        "zncmpcpp (.*) - (.*)": " $1 - <span style=\"italic\">$2</span>",
        "ranger:(.*)": " $1",
        "Mozilla Firefox": " ",
        "Mozilla Thunderbird": " ",
        "YouTube": " ",
        "GitHub": " ",
        "Explore GitHub": " ",
        "GitHub Dashboard": " ",
        "(.*) - Void Linux Handbook": " <span style=\"italic\">$1</span>",
        "(.*) - Void Linux Handbook — Mozilla Firefox": " <span style=\"italic\">$1</span>",
        "Tumblr": " ",
        "(.*) Tumblr": " <span style=\"italic\">$1</span>",
        "(.*) - Gmail": "󰊫 <span style=\"italic\">$1</span>",
        "(.*) \\| Proton Mail": " <span style=\"italic\">$1</span>",
        "(.*) on Tumblr": " <span style=\"italic\">$1</span>",
        "(.*) - (.*) - Stack Overflow": " <span style=\"italic\">$2</span>",
        "(.*) - (.*) - Stack Overflow — Mozilla Firefox": " <span style=\"italic\">$2</span>",
        "(.*) - (.*) - Ask Ubuntu": " <span style=\"italic\">$2</span>",
        "(.*) - (.*) - Ask Ubuntu — Mozilla Firefox": " <span style=\"italic\">$2</span>",
        "(.*) - (.*) - Unix &amp; Linux Stack Exchange": " <span style=\"italic\">$2</span>",
        "(.*) - (.*) - Unix &amp; Linux Stack Exchange — Mozilla Firefox": " <span style=\"italic\">$2</span>",
        "(.*) Tumblr — Mozilla Firefox": " <span style=\"italic\">$1</span>",
        "(.*) on Tumblr — Mozilla Firefox": " <span style=\"italic\">$1</span>",
        "(.*) \\| Last.fm": " <span style=\"italic\">$1</span>",
        "(.*) \\| Last.fm — Mozilla Firefox": " <span style=\"italic\">$1</span>",
        "(.*) · GitLab": " <span style=\"italic\">$1</span>",
        "(.*) - ArchWiki": "󰣇 <span style=\"italic\">$1</span>",
        "(.*) - ArchWiki — Mozilla Firefox": "󰣇 <span style=\"italic\">$1</span>",
        "(.*) - Wikipedia — Mozilla Firefox": "󰖬 <span style=\"italic\">$1</span>",
        "(.*) :: PassThePopcorn — Mozilla Firefox": " <span style=\"italic\">$1</span>",
        "(.*) :: Empornium — Mozilla Firefox": " <span style=\"italic\">$1</span>",
        "(.*) :: PassThePopcorn": " <span style=\"italic\">$1</span>",
        "(.*) :: Empornium": " <span style=\"italic\">$1</span>",
        "(.*) :: Orpheus": " <span style=\"italic\">$1</span>",
        "(.*) :: Orpheus — Mozilla Firefox": " <span style=\"italic\">$1</span>",
        "(.*) - IPTorrents - \\#1 Private Tracker": " <span style=\"italic\">$1</span>",
        "(.*) - IPTorrents - \\#1 Private Tracker — Mozilla Firefox": " <span style=\"italic\">$1</span>",
        "(.*) • Letterboxd": " <span style=\"italic\">$1</span>",
        "Letterboxd • Social film discovery.": " ",
        "(.*) - Rate Your Music": " <span style=\"italic\">$1</span>",
        "(.*) - Rate Your Music — Mozilla Firefox": " <span style=\"italic\">$1</span>",
        "Hacker News": " ",
        "(.*) \\| Hacker News": " <span style=\"italic\">$1</span>",
        "(.*) - Invidious — Mozilla Firefox": " <span style=\"italic\">$1</span>",
        "(.*) - YouTube — Mozilla Firefox": " <span style=\"italic\">$1</span>",
        "(.*) - Invidious": " <span style=\"italic\">$1</span>",
        "(.*) - YouTube": " <span style=\"italic\">$1</span>",
        "(.*) - 4chan": "󰠖 <span style=\"italic\">$1</span>",
        "(.*) - 4chan — Mozilla Firefox": "󰠖 <span style=\"italic\">$1</span>",
        "(.*) - (.*) - 4chan": "󰠖 <span style=\"italic\">$1</span>",
        "(.*) - (.*) - 4chan — Mozilla Firefox": "󰠖 <span style=\"italic\">$1</span>",
        "(.*) - Gmail — Mozilla Firefox": "󰊫 <span style=\"italic\">$1</span>",
        "(.*) at DuckDuckGo": "󰇥 <span style=\"italic\">$1</span>",
        "(.*) - Google Search": " <span style=\"italic\">$1</span>",
        "(.*) - Google Search — Mozilla Firefox": " <span style=\"italic\">$1</span>",
        "(.*) \\| Proton Mail — Mozilla Firefox": " <span style=\"italic\">$1</span>",
        "(.*) \\| Hacker News — Mozilla Firefox": " <span style=\"italic\">$1</span>",
        "(.*) at DuckDuckGo — Mozilla Firefox": "󰇥 <span style=\"italic\">$1</span>",
        "(.*) · GitLab — Mozilla Firefox": " <span style=\"italic\">$1</span>",
        "• Discord \\| (.*) \\| (.*) — (.*)": "󰙯 <span style=\"italic\">$1</span>: $2",
        "(.*) \\| Stash": " <span style=\"italic\">$1</span>",
        "Stash":  " ",
        "(.*) - Raspberry Pi Documentation": " <span style=\"italic\">$1</span>",
        "(.*) - Raspberry Pi": " <span style=\"italic\">$1</span>",
        "(.*) — Mozilla Firefox": " <span style=\"italic\">$1</span>",
        "(.*) — Mozilla Thunderbird": " <span style=\"italic\">$1</span>",
        "(.*) - Mozilla Thunderbird": " <span style=\"italic\">$1</span>",
        "GNU Emacs at thing": " ",
        "(.*) – Doom Emacs": " <span style=\"italic\">$1</span>",
        "(.*) — Doom Emacs": " <span style=\"italic\">$1</span>",
        "(.*) - Chromium": " <span style=\"italic\">$1</span>",
        "swayimg: (.*)": " <span style=\"italic\">$1</span>",
        "feh \\[1 of 1\\] - (.*)": " <span style=\"italic\">$1</span>",
        "feh \\[1 of 2\\] - (.*)": " <span style=\"italic\">$1</span>",
        "feh \\[2 of 2\\] - (.*)": " <span style=\"italic\">$1</span>",
        "(.*) - mpv": " <span style=\"italic\">$1</span>",
        "(.*) - VLC Media Player": "󰕼 <span style=\"italic\">$1</span>",
        "VLC media player": "󰕼 ",
        "Current Media Information": "󰕼 ",
        "Simple Preferences": "󰕼 ",
        "Adjustments and Effects": "󰕼 ",
        "File Upload": " ",
        "(.*) - Discord": "󰙯 <span style=\"italic\">$1</span>",
        "Discord Updater": "󰙯 ",
        "• Discord \\| (.*) \\| (.*)": "󰙯 <span style=\"italic\">$1</span>: $2",
        "(.*) - Sublime Text \\(UNREGISTERED\\)": " <span style=\"italic\">$1</span>",
        "(.*) - Sublime Text": " $1",
        " \\*Minibuf-1\\* — Doom Emacs": " ",
        " \\*Minibuf-1\\* – Doom Emacs":  " ",
        " \\*Minibuf-2\\* — Doom Emacs": " ",
        " \\*Minibuf-2\\* – Doom Emacs":  " ",
        "Nicotine\\+": "󰒴",
        "Volume Control": " ",
        "Helvum - Pipewire Patchbay": " ",
    },
    "max-length": 86,
    "all-outputs": true
},

Idle Inhibit

"idle_inhibitor": {
    "format": "{icon}",
    "format-icons": {
        "activated": " ",
        "deactivated": " "
    },
    "timeout": 60,
    "tooltip": false
},

Network

"network": {
    "interface": "enp0s31f6",
    "interval": 1,
    "format-wifi": " {bandwidthDownBytes} {bandwidthUpBytes} ",
    "format-ethernet": " {bandwidthDownBytes} {bandwidthUpBytes} ",
    "format-alt": " {ipaddr} {netmask}",
    "format-disconnected": "",
    "tooltip": true,
    "tooltip-format-ethernet": "{ifname} {gwaddr}",
    "tooltip-format-wifi": "{ifname} {essid} ({signalStrength}%)",
},

Wireplumber

"wireplumber": {
    "format": "{icon} <span style=\"italic\">{volume}%</span>",
    "format-muted": " {volume}%",
    "tooltip": true,
    "tooltip-format": "{node_name}",
    "format-icons": ["", "", ""],
    "on-click": "pactl set-sink-mute @DEFAULT_SINK@ toggle && pactl get-sink-volume @DEFAULT_SINK@ | head -n 1 | awk '{print substr($5, 1, length($5)-1)}' > /home/babkock/.wob.sock",
    "on-scroll-up": "pactl set-sink-volume @DEFAULT_SINK@ +2% && pactl get-sink-volume @DEFAULT_SINK@ | head -n 1 | awk '{print substr($5, 1, length($5)-1)}' > /home/babkock/.wob.sock",
    "on-scroll-down": "pactl set-sink-volume @DEFAULT_SINK@ -2% && pactl get-sink-volume @DEFAULT_SINK@ | head -n 1 | awk '{print substr($5, 1, length($5)-1)}' > /home/babkock/.wob.sock",
    "on-click-right": "helvum"
},

Bluetooth

"bluetooth": {
    "format-on": " {controller_alias}",
    "format-disabled": "",
    "format-off": "󰂲",
    "format-connected": " {device_alias}",
    "format-connected-battery": " {icon} {device_alias}",
    "tooltip-format-on": "{controller_address} {controller_address_type}",
    "tooltip-format-off": "{controller_address} {controller_address_type}",
    "tooltip-format-connected": "{device_address} {controller_alias}",
    "tooltip-format-connected-battery": "{device_battery_percentage}% {device_address} {controller_alias}",
    "format-icons": ["", "", "", "", ""]
},

Privacy

"privacy": {
    "icon-spacing": 8,
    "icon-size": 24,
    "transition-duration": 350,
    "modules": [
        {
            "type": "screenshare",
            "tooltip": true,
            "tooltip-icon-size": 28
        },
        {
            "type": "audio-out",
            "tooltip": true,
            "tooltip-icon-size": 28
        },
        {
            "type": "audio-in",
            "tooltip": true,
            "tooltip-icon-size": 28
        }
    ]
},

Temperature

"temperature": {
    "thermal-zone": 1,
    "hwmon-path": ["/sys/class/hwmon/hwmon2/temp1_input", "/sys/class/thermal/thermal_zone0/temp"],
    "format": " {temperatureF}°F",
    "format-alt": " {temperatureC}°C"
},

Disk

"disk": {
    "path": "/",
    "interval": 1,
    "format": " <span style=\"italic\">{free}</span>",
    "format-alt": " {used}",
    "tooltip": true,
    "tooltip-format": "{percentageUsed}% of {total}"
},

Keyboard State

"keyboard-state": {
    "numlock": true,
    "capslock": true,
    "format": {
        "numlock": " {icon}",
        "capslock": "󰪛 {icon}"
    },
    "format-icons": {
        "locked": " ",
        "unlocked": " "
    }
},

Tray

"tray": {
    "icon-size": 32,
    "spacing": 1,
    "show-passive-items": true
}

Sway TV Bar

Appearance

}, {
    "position": "bottom",
    "output": "DP-1",
    "height": 42,
    "reload_style_on_change": true,
    "mode": "dock",
    "modules-left": ["sway/workspaces"],
    "modules-right": ["custom/weather", "disk", "cpu", "memory", "bluetooth", "custom/clock"],
    "sway/workspaces": {
        "disable-scroll": false,
        "disable-scroll-wraparound": true,
        "enable-bar-scroll": true,
        "all-outputs": false,
        "format": "{icon}",
        "format-icons": {
            "1": "",
            "2": "爵",
            "3": "",
            "4": "",
            "5": "󰭹",
            "6": "",
            "7": "",
            "8": "",
            "9": "",
            "urgent": "",
            "default": ""
        }
    },

Weather

"custom/weather": {
    "exec": "ansiweather -a false -l Arvada -u imperial -H true -h false -p false -i false -s true",
    "interval": 4,
    "format": "{}"
},

Bluetooth

"bluetooth": {
    "format-on": " {controller_alias}",
    "format-disabled": "",
    "format-off": "󰂲",
    "format-connected": " {device_alias}",
    "format-connected-battery": " {icon} {device_alias}",
    "tooltip-format-on": "{controller_address} {controller_address_type}",
    "tooltip-format-off": "{controller_address} {controller_address_type}",
    "tooltip-format-connected": "{device_address} {controller_alias}",
    "tooltip-format-connected-battery": "{device_battery_percentage}% {device_address} {controller_alias}",
    "format-icons": ["", "", "", "", ""]
},

Memory

"memory": {
    "format": " {}%",
    "format-alt": "󰍛 {used:0.1f} GB  {swapUsed:0.1f} GB",
    "tooltip-format": "󰍛 {used:0.2f} GB  {swapUsed:0.2f} GB"
},

Disk

"disk": {
    "path": "/mnt/drive/",
    "interval": 1,
    "format": "  <span style=\"italic\">{free}</span>",
    "format-alt": "  {used}",
    "tooltip": true,
    "tooltip-format": "{path} ({percentage_used}% of {total})"
},

CPU

"cpu": {
    "format": " {usage}%",
    "format-alt": " {avg_frequency} GHz {max_frequency} GHz",
},

Clock

    "custom/clock": {
        "exec": "date +'%I:%M:%S  %a, %b %d'",
        "interval": 1,
        "format": " {}",
        "align": 1,
        "tooltip": false
    }
}]

River Laptop Bar

This is the first and primary bar for the River compositor. It appears on my laptop’s screen (eDP-1). Notice how the modules-left are different for each of the three output files.

Appearance

[{
    "position": "bottom",
    "height": 38,
    "spacing": 0,
    "output": "eDP-1",
    "modules-left": ["river/tags"],
    "modules-right": ["mpd", "pulseaudio", "cpu", "memory", "battery", "backlight", "custom/clock"],
    "river/tags": {
        "num-tags": 6,
        "tag-labels": ["", "爵", "", "", "", ""]
    },

MPD

"mpd": {
    "server": "127.0.0.2",
    "format": "{consumeIcon}{singleIcon}{artist} - {title}  {stateIcon}",
    "format-disconnected": " ",
    "format-stopped": "{consumeIcon}{singleIcon} ",
    "title-len": 34,
    "unknown-tag": "N/A",
    "interval": 1,
    "consume-icons": {
        "on": " "
    },
    "random-icons": {
        "off": "<span color=\"#f53c3c\"></span> ",
        "on": " "
    },
    "repeat-icons": {
        "on": " "
    },
    "single-icons": {
        "on": "1 "
    },
    "state-icons": {
        "playing": " ",
        "paused": " "
    },
    "tooltip-format": "{artist} - {album} ({date})",
},

Clock

"custom/clock": {
    "exec": "date +'%I:%M:%S  %a, %b %d'",
    "interval": 1,
    "format": " {}",
    "align": 1,
    "tooltip": false
},

CPU

"cpu": {
    "format": " {usage}%",
    "format-alt": " {avg_frequency} GHz {max_frequency} GHz",
},

Memory

"memory": {
    "format": " {}%",
    "format-alt": " {used:0.1f} GB {swapUsed:0.1f} GB",
    "tooltip-format": "RAM: {used:0.2f} GB, Swap: {swapUsed:0.2f} GB"
},

Battery

"battery": {
    "states": {
        "good": 94,
        "warning": 30,
        "critical": 15
    },
    "format": "{icon} <span style=\"italic\">{capacity}%</span>",
    "format-charging": " <span style=\"italic\">{capacity}%</span>",
    "format-plugged": " {capacity}%",
    "format-alt": "{icon} {time}", 
    "format-icons": ["", "", "", "", ""],
    "tooltip-format": "{time}"
},

Backlight

"backlight": {
    "device": "intel_backlight",
    "tooltip": false,
    "format": "{icon} {percent}%",
    "format-icons": ["", "", "", "", "", "", "", "", ""],
    "on-click": "light -S 20 && light -G | cut -d '.' -f1 > /home/babkock/.wob.sock",
    "on-scroll-up": "light -A 1 && light -G | cut -d'.' -f1 > /home/babkock/.wob.sock",
    "on-scroll-down": "light -U 1 && light -G | cut -d '.' -f1 > /home/babkock/.wob.sock"
},

Pulseaudio

"pulseaudio": {
    "format": "{icon} <span style=\"italic\">{volume}%</span>",
    "format-bluetooth": "{icon}  {volume}% {format_source}",
    "format-bluetooth-muted": " {icon} {format_source}",
    "format-muted": " {format_source}",
    "format-source": " {volume}%",
    "format-source-muted": "",
    "tooltip": false,
    "format-icons": {
        "headphone": "",
        "hands-free": "",
        "headset": "",
        "phone": "",
        "portable": "",
        "car": "",
        "default": ["", "", ""]
    },
    "on-click": "pactl set-sink-mute @DEFAULT_SINK@ toggle && pactl get-sink-volume @DEFAULT_SINK@ | head -n 1 | awk '{print substr($5, 1, length($5)-1)}' > /home/babkock/.wob.sock",
    "on-scroll-up": "pactl set-sink-volume @DEFAULT_SINK@ +2% && pactl get-sink-volume @DEFAULT_SINK@ | head -n 1 | awk '{print substr($5, 1, length($5)-1)}' > /home/babkock/.wob.sock",
    "on-scroll-down": "pactl set-sink-volume @DEFAULT_SINK@ -2% && pactl get-sink-volume @DEFAULT_SINK@ | head -n 1 | awk '{print substr($5, 1, length($5)-1)}' > /home/babkock/.wob.sock"
}

River Monitor Bar

This is the second status bar that River uses. It appears on my monitor (HDMI-A-2).

Appearance

}, {
    "position": "bottom",
    "height": 40,
    "spacing": 0,
    "output": "HDMI-A-2",
    "modules-left": ["river/tags", "river/window"],
    "modules-right": ["disk", "network", "battery", "backlight", "custom/clock"],
    "river/tags": {
        "num-tags": 4,
        "tag-labels": ["", "爵", "", ""]
    },

Window

"river/window": {
    "max-length": 67,
    "format": " <span style=\"italic\">{}</span>"
},

Battery

"battery": {
    "states": {
        "good": 94,
        "warning": 30,
        "critical": 15
    },
    "format": "{icon} <span style=\"italic\">{capacity}%</span>",
    "format-charging": " <span style=\"italic\">{capacity}%</span>",
    "format-plugged": " {capacity}%",
    "format-alt": "{icon} {time}",
    "tooltip-format": "{time}", 
    "format-icons": ["", "", "", "", ""]
},

Network

"network": {
    "interface": "wlp0s20f3",
    "interval": 1,
    "format-wifi": " {bandwidthDownBits} {bandwidthUpBits} ",
    "format-ethernet": " {bandwidthDownBits} {bandwidthUpBits} ",
    "format-alt": " {ipaddr}",
    "format-disconnected": "",
    "tooltip-format": "{essid} ({signalStrength}%)",
},

Backlight

"backlight": {
    "device": "intel_backlight",
    "tooltip": false,
    "format": "{icon} {percent}%",
    "format-icons": ["", "", "", "", "", "", "", "", ""],
    "on-click": "light -S 20 && light -G | cut -d'.' -f1 > /home/babkock/.wob.sock",
    "on-scroll-up": "light -A 1 && light -G | cut -d'.' -f1 > /home/babkock/.wob.sock",
    "on-scroll-down": "light -U 1 && light -G | cut -d '.' -f1 > /home/babkock/.wob.sock"
},

Disk

"disk": {
    "path": "/",
    "interval": 2,
    "format": " <span style=\"italic\">{free}</span>",
    "format-alt": " {used}",
    "tooltip-format": "{percentageUsed}% of {total}"
},

Clock

    "custom/clock": {
        "exec": "date +'%I:%M:%S  %a, %b %d'",
        "interval": 1,
        "format": " {}",
        "align": 1,
        "tooltip": false
    }
}]

Wayfire Laptop Bar

This is the first and primary status bar that LabWC uses, for my laptop’s screen (eDP-1). Notice how LabWC does not use workspaces or tags like Sway and River, but it instead has a Taskbar module. The Taskbar elements are buttons, and they are styled like the workspace buttons.

Appearance

[{
    "position": "bottom",
    "height": 40,
    "spacing": 0,
    "output": "eDP-1",
    "reload_style_on_change": true,
    "mode": "dock",
    "modules-left": ["wlr/taskbar"],
    "modules-right": ["mpd", "pulseaudio", "cpu", "memory", "battery", "disk", "backlight", "custom/clock"],
    "wlr/taskbar": {
        "format": "{short_state}{icon}",
        "on-click": "minimize-raise",
        "on-click-right": "close",
        "on-click-middle": "maximize",
        "tooltip-format": "{app_id} {title}",
        "icon-size": 32,
        "ignore-list": [
            "Alacritty"
        ]
    },

MPD

"mpd": {
    "server": "127.0.0.2",
    "format": "{consumeIcon}{artist} - {title} {singleIcon}{randomIcon}{repeatIcon}{stateIcon}",
    "format-disconnected": " ",
    "format-stopped": "{consumeIcon}{singleIcon}{randomIcon}{repeatIcon}{stateIcon} ",
    "title-len": 40,
    "unknown-tag": "N/A",
    "interval": 1,
    "consume-icons": {
        "on": " "
    },
    "random-icons": {
        "off": "",
        "on": " "
    },
    "repeat-icons": {
        "on": " "
    },
    "single-icons": {
        "on": "1 "
    },
    "state-icons": {
        "playing": " ",
        "paused": " "
    },
    "tooltip-format": "{artist} - {album} ({date})",
    "on-click": "mpc --host=127.0.0.2 toggle > /dev/null",
    "on-click-right": "mpc --host=127.0.0.2 next > /dev/null",
    "on-click-middle": "mpc --host=127.0.0.2 prev > /dev/null",
},

Clock

"custom/clock": {
    "exec": "date +'%I:%M:%S  %a, %b %d'",
    "interval": 1,
    "format": " {}",
    "align": 1,
    "tooltip": false
},

CPU

"cpu": {
    "format": " {usage}%",
    "format-alt": " {avg_frequency} GHz {max_frequency} GHz",
},

Battery

"battery": {
    "states": {
        "good": 99,
        "warning": 50,
        "critical": 20
    },
    "full-at": 94,
    "format": "{icon}  <span style=\"italic\">{capacity}%</span>",
    "format-charging": " <span style=\"italic\">{capacity}%</span>",
    "format-plugged": " {capacity}%",
    "format-alt": "{icon}   {time}",
    "format-time": "{H}:{m}",
    "format-icons": ["", "", "", "", "", ""],
    "tooltip": true,
    "tooltip-format": " {time} 󱐋 {power} watts"
},

Memory

"memory": {
    "format": " {}%",
    "format-alt": "󰍛 {used:0.1f} GB  {swapUsed:0.1f} GB",
    "tooltip-format": "󰍛 {used:0.2f} GB  {swapUsed:0.2f} GB"
},

Backlight

"backlight": {
    "device": "intel_backlight",
    "tooltip": false,
    "format": "{icon} {percent}%",
    "format-icons": ["", "󰪞", "󰪟", "󰪠", "󰪡", "󰪢", "󰪣", "󰪤", "󰪥"],
    "on-click-right": "pkill -x gammastep; gammastep -O 4500K",
    "on-click-middle": "pkill -x gammastep",
    "on-click": "light -S 20 && light -G && echo 20 > .wob.sock",
    "on-scroll-up": "light -A 1 && light -G | cut -d'.' -f1 > /home/babkock/.wob.sock",
    "on-scroll-down": "light -U 1 && light -G | cut -d'.' -f1 > /home/babkock/.wob.sock",
},

Disk

"disk": {
    "path": "/mnt/mega/",
    "interval": 1,
    "format": " <span style=\"italic\">{free}</span>",
    "format-alt": " {used}",
    "tooltip": true,
    "tooltip-format": "{path} ({percentage_used}% of {total})"
},

Pulseaudio

"pulseaudio": {
    "format": "{icon} <span style=\"italic\">{volume}%</span> {format_source}",
    "format-bluetooth": "{icon}  <span style=\"italic\">{volume}%</span>",
    "format-bluetooth-muted": " {volume}%",
    "format-muted": " {volume}%",
    "format-source": " {volume}%",
    "format-source-muted": "",
    "tooltip": false,
    "format-icons": {
        "headphone": "",
        "hands-free": "",
        "headset": "",
        "phone": "",
        "portable": "",
        "car": "",
        "default": ["", "", ""]
    },
    "on-click": "pactl set-sink-mute @DEFAULT_SINK@ toggle && pactl get-sink-volume @DEFAULT_SINK@ | head -n 1 | awk '{print substr($5, 1, length($5)-1)}' > /home/babkock/.wob.sock",
    "on-scroll-up": "pactl set-sink-volume @DEFAULT_SINK@ +2% && pactl get-sink-volume @DEFAULT_SINK@ | head -n 1 | awk '{print substr($5, 1, length($5)-1)}' > /home/babkock/.wob.sock",
    "on-scroll-down": "pactl set-sink-volume @DEFAULT_SINK@ -2% && pactl get-sink-volume @DEFAULT_SINK@ | head -n 1 | awk '{print substr($5, 1, length($5)-1)}' > /home/babkock/.wob.sock",
    "on-click-right": "pavucontrol"
},

Image

"image#album-art": {
    "path": "/tmp/mpd_cover.jpg",
    "size": 40,
    "interval": 1
}

Wayfire Monitor Bar

And finally, the sixth status bar, this is the second status bar that LabWC uses when my monitor (HDMI-A-2) is connected.

Appearance

}, {
    "position": "bottom",
    "height": 41,
    "spacing": 0,
    "output": "HDMI-A-2",
    "reload_style_on_change": true,
    "mode": "dock",
    "modules-left": ["wlr/taskbar"],
    "modules-right": ["disk", "network", "idle_inhibitor", "wireplumber", "temperature", "tray"],
    "wlr/taskbar": {
        "format": "{icon}{title}",
        "icon-size": 32,
        "tooltip-format": "{app_id}",
        "on-click": "minimize-raise",
        "on-click-right": "close",
        "on-click-middle": "maximize",
        "markup": true,
        "all-outputs": false,
        "ignore-list": [
            "Alacritty"
        ],
        "rewrite": {
            "foot": " ",
            " Alacritty": " ",
            "st": " ",
            "Steam": " ",
            "Sign in to Steam": " ",
            "Shutdown": " ",
            "ncmpcpp (.*)": " <span style=\"italic\">$1</span>",
            "zncmpcpp (.*) - (.*)": " $1 - <span style=\"italic\">$2</span>",
            "ranger:(.*)": " $1",
            "Mozilla Thunderbird": " ",
            "Mozilla Firefox": " ",
            "YouTube": " ",
            "GitHub": " ",
            "Explore GitHub": " ",
            "GitHub Dashboard": " ",
            "(.*) - Void Linux Handbook": " <span style=\"italic\">$1</span>",
            "(.*) - Void Linux Handbook — Mozilla Firefox": " <span style=\"italic\">$1</span>",
            "Tumblr": " ",
            "(.*) Tumblr": " <span style=\"italic\">$1</span>",
            "(.*) - Gmail": "󰊫 <span style=\"italic\">$1</span>",
            "(.*) \\| Proton Mail": " <span style=\"italic\">$1</span>",
            "(.*) on Tumblr": " <span style=\"italic\">$1</span>",
            "(.*) - (.*) - Stack Overflow": " <span style=\"italic\">$2</span>",
            "(.*) - (.*) - Stack Overflow — Mozilla Firefox": " <span style=\"italic\">$2</span>",
            "(.*) - (.*) - Ask Ubuntu": " <span style=\"italic\">$2</span>",
            "(.*) - (.*) - Ask Ubuntu — Mozilla Firefox": " <span style=\"italic\">$2</span>",
            "(.*) - (.*) - Unix &amp; Linux Stack Exchange": " <span style=\"italic\">$2</span>",
            "(.*) - (.*) - Unix &amp; Linux Stack Exchange — Mozilla Firefox": " <span style=\"italic\">$2</span>",
            "(.*) Tumblr — Mozilla Firefox": " <span style=\"italic\">$1</span>",
            "(.*) on Tumblr — Mozilla Firefox": " <span style=\"italic\">$1</span>",
            "(.*) \\| Last.fm": " <span style=\"italic\">$1</span>",
            "(.*) \\| Last.fm — Mozilla Firefox": " <span style=\"italic\">$1</span>",
            "(.*) · GitLab": " <span style=\"italic\">$1</span>",
            "(.*) - ArchWiki": "󰣇 <span style=\"italic\">$1</span>",
            "(.*) - ArchWiki — Mozilla Firefox": "󰣇 <span style=\"italic\">$1</span>",
            "(.*) - Wikipedia — Mozilla Firefox": "󰖬 <span style=\"italic\">$1</span>",
            "(.*) :: PassThePopcorn — Mozilla Firefox": " <span style=\"italic\">$1</span>",
            "(.*) :: Empornium — Mozilla Firefox": " <span style=\"italic\">$1</span>",
            "(.*) :: PassThePopcorn": " <span style=\"italic\">$1</span>",
            "(.*) :: Empornium": " <span style=\"italic\">$1</span>",
            "(.*) :: Orpheus": " <span style=\"italic\">$1</span>",
            "(.*) :: Orpheus — Mozilla Firefox": " <span style=\"italic\">$1</span>",
            "(.*) - IPTorrents - \\#1 Private Tracker": " <span style=\"italic\">$1</span>",
            "(.*) - IPTorrents - \\#1 Private Tracker — Mozilla Firefox": " <span style=\"italic\">$1</span>",
            "(.*) • Letterboxd": " <span style=\"italic\">$1</span>",
            "Letterboxd • Social film discovery.": " ",
            "(.*) - Rate Your Music": " <span style=\"italic\">$1</span>",
            "(.*) - Rate Your Music — Mozilla Firefox": " <span style=\"italic\">$1</span>",
            "Hacker News": " ",
            "(.*) \\| Hacker News": " <span style=\"italic\">$1</span>",
            "(.*) - Invidious — Mozilla Firefox": " <span style=\"italic\">$1</span>",
            "(.*) - YouTube — Mozilla Firefox": " <span style=\"italic\">$1</span>",
            "(.*) - Invidious": " <span style=\"italic\">$1</span>",
            "(.*) - YouTube": " <span style=\"italic\">$1</span>",
            "(.*) - 4chan": "󰠖 <span style=\"italic\">$1</span>",
            "(.*) - 4chan — Mozilla Firefox": "󰠖 <span style=\"italic\">$1</span>",
            "(.*) - (.*) - 4chan": "󰠖 <span style=\"italic\">$1</span>",
            "(.*) - (.*) - 4chan — Mozilla Firefox": "󰠖 <span style=\"italic\">$1</span>",
            "(.*) - Gmail — Mozilla Firefox": "󰊫 <span style=\"italic\">$1</span>",
            "(.*) at DuckDuckGo": "󰇥 <span style=\"italic\">$1</span>",
            "(.*) - Google Search": " <span style=\"italic\">$1</span>",
            "(.*) - Google Search — Mozilla Firefox": " <span style=\"italic\">$1</span>",
            "(.*) \\| Proton Mail — Mozilla Firefox": " <span style=\"italic\">$1</span>",
            "(.*) \\| Hacker News — Mozilla Firefox": " <span style=\"italic\">$1</span>",
            "(.*) at DuckDuckGo — Mozilla Firefox": "󰇥 <span style=\"italic\">$1</span>",
            "(.*) · GitLab — Mozilla Firefox": " <span style=\"italic\">$1</span>",
            "• Discord \\| (.*) \\| (.*) — (.*)": "<span style=\"italic\">$1</span>: $2",
            "(.*) — Mozilla Firefox": "<span style=\"italic\">$1</span>",
            "(.*) — Mozilla Thunderbird": " <span style=\"italic\">$1</span>",
            "(.*) - Mozilla Thunderbird": " <span style=\"italic\">$1</span>",
            "GNU Emacs at thing": " ",
            "(.*) – Doom Emacs": "<span style=\"italic\">$1</span>",
            "(.*) — Doom Emacs": "<span style=\"italic\">$1</span>",
            "(.*) - Chromium": " <span style=\"italic\">$1</span>",
            "swayimg: (.*)": " <span style=\"italic\">$1</span>",
            "feh \\[1 of 1\\] - (.*)": " <span style=\"italic\">$1</span>",
            "feh \\[1 of 2\\] - (.*)": " <span style=\"italic\">$1</span>",
            "feh \\[2 of 2\\] - (.*)": " <span style=\"italic\">$1</span>",
            "(.*) - mpv": "<span style=\"italic\">$1</span>",
            "(.*) - VLC Media Player": "<span style=\"italic\">$1</span>",
            "VLC media player": " ",
            "File Upload": " ",
            "(.*) - Discord": "<span style=\"italic\">$1</span>",
            "Discord Updater": " ",
            "• Discord \\| (.*) \\| (.*)": "<span style=\"italic\">$1</span>: $2",
            "(.*) - Sublime Text \\(UNREGISTERED\\)": " <span style=\"italic\">$1</span>",
            "(.*) - Sublime Text": " $1",
            " \\*Minibuf-1\\* — Doom Emacs": " ",
            " \\*Minibuf-1\\* – Doom Emacs":  " ",
            " \\*Minibuf-2\\* — Doom Emacs": " ",
            " \\*Minibuf-2\\* – Doom Emacs":  " ",
            "Nicotine\\+": "󰒴"
        }
    },

Disk

"disk": {
    "path": "/",
    "interval": 1,
    "format": " <span style=\"italic\">{free}</span>",
    "format-alt": " {used}",
    "tooltip": true,
    "tooltip-format": "{path} ({percentage_used}% of {total})"
},

Network

"network": {
    "interface": "enp0s31f6",
    "interval": 1,
    "format-wifi": " {bandwidthDownBytes} {bandwidthUpBytes} ",
    "format-ethernet": " {bandwidthDownBytes} {bandwidthUpBytes} ",
    "format-alt": " {ipaddr} {netmask}",
    "format-disconnected": "",
    "tooltip": true,
    "tooltip-format-ethernet": "{ifname} {gwaddr}",
    "tooltip-format-wifi": "{ifname} {essid} ({signalStrength}%)",
},

Idle Inhibit

"idle_inhibitor": {
    "format": "{icon}",
    "format-icons": {
        "activated": " ",
        "deactivated": " "
    },
    "timeout": 60,
    "tooltip": false
},

Wireplumber

"wireplumber": {
    "format": "{icon} <span style=\"italic\">{volume}%</span>",
    "format-muted": " {volume}%",
    "tooltip": true,
    "tooltip-format": "{node_name}",
    "format-icons": ["", "", ""],
    "on-click": "pactl set-sink-mute @DEFAULT_SINK@ toggle && pactl get-sink-volume @DEFAULT_SINK@ | head -n 1 | awk '{print substr($5, 1, length($5)-1)}' > /home/babkock/.wob.sock",
    "on-scroll-up": "pactl set-sink-volume @DEFAULT_SINK@ +2% && pactl get-sink-volume @DEFAULT_SINK@ | head -n 1 | awk '{print substr($5, 1, length($5)-1)}' > /home/babkock/.wob.sock",
    "on-scroll-down": "pactl set-sink-volume @DEFAULT_SINK@ -2% && pactl get-sink-volume @DEFAULT_SINK@ | head -n 1 | awk '{print substr($5, 1, length($5)-1)}' > /home/babkock/.wob.sock",
    "on-click-right": "helvum"
},

Bluetooth

"bluetooth": {
    "format-on": " {controller_alias}",
    "format-disabled": "",
    "format-off": "󰂲",
    "format-connected": " {device_alias}",
    "format-connected-battery": " {icon} {device_alias}",
    "tooltip-format-on": "{controller_address} {controller_address_type}",
    "tooltip-format-off": "{controller_address} {controller_address_type}",
    "tooltip-format-connected": "{device_address} {controller_alias}",
    "tooltip-format-connected-battery": "{device_battery_percentage}% {device_address} {controller_alias}",
    "format-icons": ["", "", "", "", ""]
},

Temperature

"temperature": {
    "thermal-zone": 1,
    "hwmon-path": ["/sys/class/hwmon/hwmon2/temp1_input", "/sys/class/thermal/thermal_zone0/temp"],
    "format": " {temperatureF}°F",
    "format-alt": " {temperatureC}°C"
},

Keyboard State

"keyboard-state": {
    "numlock": true,
    "capslock": true,
    "format": {
        "numlock": " {icon}",
        "capslock": "󰪛 {icon}"
    },
    "format-icons": {
        "locked": " ",
        "unlocked": " "
    }
},

Tray

"tray": {
    "icon-size": 32,
    "spacing": 1,
    "show-passive-items": true
}

Wayfire TV Bar

Appearance

}, {
    "position": "bottom",
    "output": "DP-1",
    "height": 41,
    "reload_style_on_change": true,
    "mode": "dock",
    "modules-left": ["wlr/taskbar"],
    "modules-right": ["custom/weather", "disk", "privacy", "cpu", "memory", "bluetooth", "custom/clock"],
    "wlr/taskbar": {
        "format": "{short_state}{icon}",
        "on-click": "minimize-raise",
        "on-click-right": "close",
        "on-click-middle": "maximize",
        "tooltip-format": "{title}",
        "icon-size": 32,
        "ignore-list": [
            "Alacritty"
        ],
    },

Weather

"custom/weather": {
    "exec": "ansiweather -a false -l Arvada -u imperial -H true -h false -p false -i false -s true",
    "interval": 4,
    "format": "{}"
},

Bluetooth

"bluetooth": {
    "format-on": " {controller_alias}",
    "format-disabled": "",
    "format-off": "󰂲",
    "format-connected": " {device_alias}",
    "format-connected-battery": " {icon} {device_alias}",
    "tooltip-format-on": "{controller_address} {controller_address_type}",
    "tooltip-format-off": "{controller_address} {controller_address_type}",
    "tooltip-format-connected": "{device_address} {controller_alias}",
    "tooltip-format-connected-battery": "{device_battery_percentage}% {device_address} {controller_alias}",
    "format-icons": ["", "", "", "", ""]
},

Memory

"memory": {
    "format": " {}%",
    "format-alt": "󰍛 {used:0.1f} GB  {swapUsed:0.1f} GB",
    "tooltip-format": "󰍛 {used:0.2f} GB  {swapUsed:0.2f} GB"
},

Disk

"disk": {
    "path": "/mnt/drive/",
    "interval": 1,
    "format": "  <span style=\"italic\">{free}</span>",
    "format-alt": "  {used}",
    "tooltip": true,
    "tooltip-format": "{path} ({percentage_used}% of {total})"
},

Privacy

"privacy": {
    "icon-spacing": 8,
    "icon-size": 24,
    "transition-duration": 350,
    "modules": [
        {
            "type": "screenshare",
            "tooltip": true,
            "tooltip-icon-size": 28
        },
        {
            "type": "audio-out",
            "tooltip": true,
            "tooltip-icon-size": 28
        },
        {
            "type": "audio-in",
            "tooltip": true,
            "tooltip-icon-size": 28
        }
    ]
},

CPU

"cpu": {
    "format": " {usage}%",
    "format-alt": " {avg_frequency} GHz {max_frequency} GHz",
},

Clock

    "custom/clock": {
        "exec": "date +'%I:%M:%S  %a, %b %d'",
        "interval": 1,
        "format": " {}",
        "align": 1,
        "tooltip": false
    }
}]

Hyprland Laptop Bar

Appearance

[{
    "position": "bottom",
    "layer": "top",
    "height": 40,
    "spacing": 0,
    "output": "eDP-1",
    "modules-left": ["wlr/workspaces"],
    "modules-right": ["mpd", "pulseaudio", "cpu", "memory", "battery", "backlight", "disk", "custom/clock"],
    "wlr/workspaces": {
        "all-outputs": false,
        "disable-scroll": false,
        "format": "{icon}",
        "format-icons": {
            "1": "",
            "2": "爵",
            "3": "",
            "4": "",
            "5": "󰭹",
            "6": "",
            "7": "",
            "8": "",
            "9": "",
            "urgent": "",
            "focused": "",
            "default": ""
        },
        "on-click": "activate",
        "on-scroll-up": "hyprctl dispatch workspace m+1 > /dev/null",
        "on-scroll-down": "hyprctl dispatch workspace m-1 > /dev/null"
    },

Disk (External HD)

"disk": {
    "path": "/mnt/mega/",
    "interval": 1,
    "format": "󰋊 <span style=\"italic\">{free}</span>",
    "format-alt": "󰋊 {used}",
    "tooltip": true,
    "tooltip-format": "{path} ({percentage_used}% of {total})"
},

MPD

"mpd": {
    "server": "127.0.0.2",
    "format": "{consumeIcon}{artist} - <span style=\"italic\">{title}</span> {singleIcon}{randomIcon}{repeatIcon}{stateIcon}",
    "format-disconnected": " ",
    "format-stopped": "{consumeIcon}{singleIcon}{randomIcon}{repeatIcon} ",
    "title-len": 41,
    "unknown-tag": "N/A",
    "interval": 1,
    "on-click": "mpc --host=127.0.0.2 toggle > /dev/null",
    "on-click-right": "mpc --host=127.0.0.2 next > /dev/null",
    "on-click-middle": "mpc --host=127.0.0.2 prev > /dev/null",
    "consume-icons": {
        "on": " "
    },
    "random-icons": {
        "off": " ",
        "on": " "
    },
    "repeat-icons": {
        "on": " "
    },
    "single-icons": {
        "on": "1 "
    },
    "state-icons": {
        "playing": " ",
        "paused": " "
    },
    "tooltip-format": "{artist} - {album} ({date})",
},

Clock

"custom/clock": {
    "exec": "date +'%I:%M:%S  %a, %b %d'",
    "interval": 1,
    "format": " {}",
    "align": 1,
    "tooltip": false
},

CPU

"cpu": {
    "format": " {usage}%",
    "format-alt": " {avg_frequency} GHz {max_frequency} GHz",
},

Memory

"memory": {
    "format": " {}%",
    "format-alt": "󰍛 {used:0.1f} GB  {swapUsed:0.1f} GB",
    "tooltip-format": "󰍛 {used:0.2f} GB  {swapUsed:0.2f} GB"
},

Battery

"battery": {
    "states": {
        "good": 99,
        "warning": 50,
        "critical": 20
    },
    "full-at": 94,
    "format": "{icon}  <span style=\"italic\">{capacity}%</span>",
    "format-charging": " <span style=\"italic\">{capacity}%</span>",
    "format-plugged": " {capacity}%",
    "format-alt": "{icon}   {time}",
    "format-time": "{H}:{m}",
    "format-icons": ["", "", "", "", "", ""],
    "tooltip": true,
    "tooltip-format": " {time} 󱐋 {power} watts"
},

Backlight

"backlight": {
    "device": "intel_backlight",
    "tooltip": false,
    "format": "{icon} {percent}%",
    "format-icons": ["", "", "", "", "", "", "", "", ""],
    "on-click": "light -S 20 && light -G | cut -d '.' -f1 > /home/babkock/.wob.sock ; pkill -x sh",
    "on-click-right": "pkill -x gammastep; gammastep -O 4500K",
    "on-click-middle": "pkill -x gammastep",
    "on-scroll-up": "light -A 1 && light -G | cut -d'.' -f1 > /home/babkock/.wob.sock ; pkill -x sh",
    "on-scroll-down": "light -U 1 && light -G | cut -d '.' -f1 > /home/babkock/.wob.sock ; pkill -x sh"
},

Pulseaudio

"pulseaudio": {
    "format": "{icon} <span style=\"italic\">{volume}%</span>",
    "format-bluetooth": "{icon}  <span style=\"italic\">{volume}%</span>",
    "format-bluetooth-muted": "  {volume}%",
    "format-muted": " {volume}%",
    "format-source": " {volume}%",
    "format-source-muted": "",
    "tooltip": true,
    "tooltip-format": "{desc}",
    "format-icons": {
        "headphone": "",
        "hands-free": "",
        "headset": "",
        "phone": "",
        "portable": "",
        "car": "",
        "default": ["", "", ""]
    },
    "on-click": "pactl set-sink-mute @DEFAULT_SINK@ toggle && pactl get-sink-volume @DEFAULT_SINK@ | head -n 1 | awk '{print substr($5, 1, length($5)-1)}' > /home/babkock/.wob.sock",
    "on-scroll-up": "pactl set-sink-volume @DEFAULT_SINK@ +2% && pactl get-sink-volume @DEFAULT_SINK@ | head -n 1 | awk '{print substr($5, 1, length($5)-1)}' > /home/babkock/.wob.sock",
    "on-scroll-down": "pactl set-sink-volume @DEFAULT_SINK@ -2% && pactl get-sink-volume @DEFAULT_SINK@ | head -n 1 | awk '{print substr($5, 1, length($5)-1)}' > /home/babkock/.wob.sock",
    "on-click-right": "pavucontrol"
},

Image

"image#album-art": {
    "path": "/tmp/mpd_cover.jpg",
    "size": 40,
    "interval": 1
}

Hyprland Monitor Bar

Appearance

}, {
    "position": "bottom",
    "layer": "top",
    "height": 42,
    "spacing": 0,
    "output": "HDMI-A-2",
    "modules-left": ["wlr/workspaces", "hyprland/window"],
    "modules-right": ["disk", "network", "idle_inhibitor", "wireplumber", "bluetooth", "temperature", "keyboard-state", "tray"],
    "wlr/workspaces": {
         "disable-scroll": false,
         "all-outputs": false,
         "format": "{icon}",
         "format-icons": {
             "1": "",
             "2": "爵",
             "3": "",
             "4": "",
             "5": "󰭹",
             "6": "",
             "7": "",
             "8": "",
             "9": "",
             "urgent": "",
             "focused": "",
             "default": ""
         },
         "on-click": "activate",
         "on-scroll-up": "hyprctl dispatch workspace m+1 > /dev/null",
         "on-scroll-down": "hyprctl dispatch workspace m-1 > /dev/null"
    },

Window

"hyprland/window": {
    "format": "{title}",
    "separate-outputs": false,
    "tooltip": false,
    "rewrite": {
        "foot": " ",
        "Alacritty": " ",
        "st": " ",
        "Steam": " ",
        "Sign in to Steam": " ",
        "Shutdown": " ",
        "cava": "",
        "ncmpcpp (.*)": " <span style=\"italic\">$1</span>",
        "zncmpcpp (.*) - (.*)": " $1 - <span style=\"italic\">$2</span>",
        "ranger:(.*)": " $1",
        "Mozilla Firefox": " ",
        "YouTube": " ",
        "Wikipedia, the free encyclopedia": "󰖬 ",
        "(.*) - Wikipedia": "󰖬 <span style=\"italic\">$1</span>",
        "GitHub": " ",
        "Explore GitHub": " ",
        "GitHub Dashboard": " ",
        "Tumblr": " ",
        "(.*) - Void Linux Handbook": " <span style=\"italic\">$1</span>",
        "(.*) - Void Linux Handbook — Mozilla Firefox": " <span style=\"italic\">$1</span>",
        "(.*) \\| Last.fm": " <span style=\"italic\">$1</span>",
        "(.*) \\| Last.fm — Mozilla Firefox": " <span style=\"italic\">$1</span>",
        "(.*) Tumblr": " <span style=\"italic\">$1</span>",
        "(.*) Tumblr — Mozilla Firefox": " <span style=\"italic\">$1</span>",
        "(.*) - Gmail": "󰊫 <span style=\"italic\">$1</span>",
        "(.*) \\| Proton Mail": " <span style=\"italic\">$1</span>",
        "(.*) - (.*) - Stack Overflow": " <span style=\"italic\">$2</span>",
        "(.*) - (.*) - Stack Overflow — Mozilla Firefox": " <span style=\"italic\">$2</span>",
        "(.*) - (.*) - Ask Ubuntu": " <span style=\"italic\">$2</span>",
        "(.*) - (.*) - Ask Ubuntu — Mozilla Firefox": " <span style=\"italic\">$2</span>",
        "(.*) - (.*) - Unix &amp; Linux Stack Exchange": " <span style=\"italic\">$2</span>",
        "(.*) - (.*) - Unix &amp; Linux Stack Exchange — Mozilla Firefox": " <span style=\"italic\">$2</span>",
        "(.*) on Tumblr": " <span style=\"italic\">$1</span>",
        "(.*) · GitLab": " <span style=\"italic\">$1</span>",
        "(.*) - ArchWiki": "󰣇 <span style=\"italic\">$1</span>",
        "(.*) - ArchWiki — Mozilla Firefox": "󰣇 <span style=\"italic\">$1</span>",
        "(.*) - Wikipedia — Mozilla Firefox": "󰖬 <span style=\"italic\">$1</span>",
        "(.*) :: PassThePopcorn — Mozilla Firefox": " <span style=\"italic\">$1</span>",
        "(.*) :: Empornium — Mozilla Firefox": " <span style=\"italic\">$1</span>",
        "(.*) :: PassThePopcorn": " <span style=\"italic\">$1</span>",
        "(.*) :: Empornium": " <span style=\"italic\">$1</span>",
        "(.*) :: Orpheus": " <span style=\"italic\">$1</span>",
        "(.*) :: Orpheus — Mozilla Firefox": " <span style=\"italic\">$1</span>",
        "(.*) - IPTorrents - \\#1 Private Tracker": " <span style=\"italic\">$1</span>",
        "(.*) - IPTorrents - \\#1 Private Tracker — Mozilla Firefox": " <span style=\"italic\">$1</span>",
        "(.*) • Letterboxd": " <span style=\"italic\">$1</span>",
        "Letterboxd • Social film discovery.": " ",
        "(.*) - Rate Your Music": " <span style=\"italic\">$1</span>",
        "(.*) - Rate Your Music — Mozilla Firefox": " <span style=\"italic\">$1</span>",
        "Hacker News": " ",
        "(.*) \\| Hacker News": " <span style=\"italic\">$1</span>",
        "(.*) at DuckDuckGo": "󰇥 <span style=\"italic\">$1</span>",
        "(.*) - Google Search": " <span style=\"italic\">$1</span>",
        "(.*) - Google Search — Mozilla Firefox": " <span style=\"italic\">$1</span>",
        "(.*) - Invidious — Mozilla Firefox": " <span style=\"italic\">$1</span>",
        "(.*) - YouTube — Mozilla Firefox": " <span style=\"italic\">$1</span>",
        "(.*) - Invidious": " <span style=\"italic\">$1</span>",
        "(.*) - YouTube": " <span style=\"italic\">$1</span>",
        "(.*) - 4chan": "󰠖 <span style=\"italic\">$1</span>",
        "(.*) - (.*) - 4chan": "󰠖 <span style=\"italic\">$1</span>",
        "(.*) - (.*) - 4chan — Mozilla Firefox": "󰠖 <span style=\"italic\">$1</span>",
        "(.*) - 4chan — Mozilla Firefox": "󰠖 <span style=\"italic\">$1</span>",
        "(.*) - Gmail — Mozilla Firefox": "󰊫 <span style=\"italic\">$1</span>",
        "(.*) \\| Proton Mail — Mozilla Firefox": " <span style=\"italic\">$1</span>",
        "(.*) \\| Hacker News — Mozilla Firefox": " <span style=\"italic\">$1</span>",
        "(.*) at DuckDuckGo — Mozilla Firefox": "󰇥 <span style=\"italic\">$1</span>",
        "(.*) · GitLab — Mozilla Firefox": " <span style=\"italic\">$1</span>",
        "(.*) — Mozilla Firefox": " <span style=\"italic\">$1</span>",
        "GNU Emacs at thing": " ",
        "(.*) – Doom Emacs": " <span style=\"italic\">$1</span>",
        "(.*) — Doom Emacs": " <span style=\"italic\">$1</span>",
        "(.*) - Chromium": " <span style=\"italic\">$1</span>",
        "swayimg: (.*)": " <span style=\"italic\">$1</span>",
        "feh \\[1 of 1\\] - (.*)": " <span style=\"italic\">$1</span>",
        "feh \\[1 of 2\\] - (.*)": " <span style=\"italic\">$1</span>",
        "feh \\[2 of 2\\] - (.*)": " <span style=\"italic\">$1</span>",
        "(.*) - mpv": " <span style=\"italic\">$1</span>",
        "(.*) - VLC Media Player": " <span style=\"italic\">$1</span>",
        "(.*) - Discord": "󰙯 <span style=\"italic\">$1</span>",
        "Discord Updater": "󰙯 ",
        "(.*) - Sublime Text \\(UNREGISTERED\\)": " <span style=\"italic\">$1</span>",
        "(.*) - Sublime Text": " $1",
        " \\*Minibuf-1\\* — Doom Emacs": " ",
        " \\*Minibuf-1\\* – Doom Emacs":  " ",
        " \\*Minibuf-2\\* — Doom Emacs": " ",
        " \\*Minibuf-2\\* – Doom Emacs":  " ",
        "Nicotine\\+": "󰒴"
    },
    "max-length": 64
},

Disk (Internal SSD)

"disk": {
    "path": "/",
    "interval": 1,
    "format": " <span style=\"italic\">{free}</span>",
    "format-alt": " {used}",
    "tooltip": true,
    "tooltip-format": "{path} ({percentage_used}% of {total})"
},

Wireplumber

"wireplumber": {
    "format": "{icon} <span style=\"italic\">{volume}%</span>",
    "format-muted": " {volume}%",
    "tooltip": true,
    "tooltip-format": "{node_name}",
    "format-icons": ["", "", ""],
    "on-click": "pactl set-sink-mute @DEFAULT_SINK@ toggle && pactl get-sink-volume @DEFAULT_SINK@ | head -n 1 | awk '{print substr($5, 1, length($5)-1)}' > /home/babkock/.wob.sock",
    "on-scroll-up": "pactl set-sink-volume @DEFAULT_SINK@ +2% && pactl get-sink-volume @DEFAULT_SINK@ | head -n 1 | awk '{print substr($5, 1, length($5)-1)}' > /home/babkock/.wob.sock",
    "on-scroll-down": "pactl set-sink-volume @DEFAULT_SINK@ -2% && pactl get-sink-volume @DEFAULT_SINK@ | head -n 1 | awk '{print substr($5, 1, length($5)-1)}' > /home/babkock/.wob.sock",
    "on-click-right": "helvum"
},

Bluetooth

"bluetooth": {
    "format-on": " {controller_alias}",
    "format-disabled": "",
    "format-off": "󰂲",
    "format-connected": " {device_alias}",
    "format-connected-battery": " {icon} {device_alias}",
    "tooltip-format-on": "{controller_address} {controller_address_type}",
    "tooltip-format-off": "{controller_address} {controller_address_type}",
    "tooltip-format-connected": "{device_address} {controller_alias}",
    "tooltip-format-connected-battery": "{device_battery_percentage}% {device_address} {controller_alias}",
    "format-icons": ["", "", "", "", ""]
},

Idle Inhibit

"idle_inhibitor": {
    "format": "{icon}",
    "format-icons": {
        "activated": " ",
        "deactivated": " "
    },
    "timeout": 60,
    "tooltip": false
},

Network

"network": {
    "interface": "enp0s31f6",
    "interval": 1,
    "format-wifi": " {bandwidthDownBytes} {bandwidthUpBytes} ",
    "format-ethernet": " {bandwidthDownBytes} {bandwidthUpBytes} ",
    "format-alt": " {ipaddr} {netmask}",
    "format-disconnected": "",
    "tooltip": true,
    "tooltip-format-ethernet": "{ifname} {gwaddr}",
    "tooltip-format-wifi": "{ifname} {essid} ({signalStrength}%)",
},

Keyboard State

"keyboard-state": {
    "numlock": true,
    "capslock": true,
    "format": {
        "numlock": " {icon}",
        "capslock": "󰪛 {icon}"
    },
    "format-icons": {
        "locked": " ",
        "unlocked": " "
    }
},

Tray

"tray": {
    "icon-size": 32,
    "spacing": 1,
    "show-passive-items": true
}

Hyprland TV Bar

Appearance

}, {
    "position": "bottom",
    "layer": "top",
    "output": "DP-1",
    "height": 43,
    "spacing": 0,
    "modules-left": ["wlr/workspaces"],
    "modules-right": ["custom/weather", "disk", "bluetooth", "cpu", "memory", "custom/clock"],
    "wlr/workspaces": {
        "disable-scroll": false,
        "all-outputs": false,
        "format": "{icon}",
        "format-icons": {
            "1": "",
            "2": "爵",
            "3": "",
            "4": "",
            "5": "󰭹",
            "6": "",
            "7": "",
            "8": "",
            "9": "",
            "urgent": "",
            "focused": "",
            "default": ""
         },
         "on-click": "activate",
         "on-scroll-up": "hyprctl dispatch workspace e+1",
         "on-scroll-down": "hyprctl dispatch workspace e-1"
    },

Weather

"custom/weather": {
    "exec": "ansiweather -a false -l Arvada -u imperial -H true -h false -p false -i false -s true",
    "interval": 4,
    "format": "{}"
},

Bluetooth

"bluetooth": {
    "format-on": " {controller_alias}",
    "format-disabled": "",
    "format-off": "󰂲",
    "format-connected": " {device_alias}",
    "format-connected-battery": " {icon} {device_alias}",
    "tooltip-format-on": "{controller_address} {controller_address_type}",
    "tooltip-format-off": "{controller_address} {controller_address_type}",
    "tooltip-format-connected": "{device_address} {controller_alias}",
    "tooltip-format-connected-battery": "{device_battery_percentage}% {device_address} {controller_alias}",
    "format-icons": ["", "", "", "", ""]
},

Memory

"memory": {
    "format": " {}%",
    "format-alt": " {used:0.1f} GB {swapUsed:0.1f} GB",
    "tooltip-format": "RAM: {used:0.2f} GB, Swap: {swapUsed:0.2f} GB"
},

Disk

"disk": {
    "path": "/mnt/drive/",
    "interval": 1,
    "format": "  <span style=\"italic\">{free}</span>",
    "format-alt": "  {used}",
    "tooltip": true,
    "tooltip-format": "{path} ({percentage_used}% of {total})"
},

CPU

"cpu": {
    "format": " {usage}%",
    "format-alt": " {avg_frequency} GHz {max_frequency} GHz",
},

Clock

    "custom/clock": {
        "exec": "date +'%I:%M:%S  %a, %b %d'",
        "interval": 1,
        "format": " {}",
        "align": 1,
        "tooltip": false
    }
}]

Author: Tanner Babcock

Created: 2024-06-05 Wed 19:13