Added a new state which should fix the icon spacing issues: When we have no upcoming events or upcoming events but none today, we only display the icon and so we do not add any additional spacing. (This is alt state `event` or `no-event`) Only if we have an upcoming event today (alt state `event-today`) are we printing it directly on the status bar and only then should be have additional spacing. So we have an icon (the same as for event) with the correct spacing so that whether there is text on the statusbar or not, we space correctly.
209 lines
7.2 KiB
Text
209 lines
7.2 KiB
Text
{
|
|
"layer": "top",
|
|
"modules-left": ["river/tags", "custom/events", "custom/vidl", "river/window"],
|
|
"modules-center": ["clock", "custom/media"],
|
|
"modules-right": ["river/mode", "custom/wireguard", "custom/archupdates", "pulseaudio", "backlight", "network", "cpu", "memory", "temperature", "tray", "battery"],
|
|
"custom/archupdates": {
|
|
"format": "{icon}",
|
|
"format-alt": "{} {icon}",
|
|
"format-alt-click": "click-right",
|
|
"format-icons": {
|
|
"default": ""
|
|
},
|
|
"return-type": "json",
|
|
"exec": "~/.config/waybar/modules/archupdates 5 json",
|
|
"interval": 3600,
|
|
"on-click": "$TERMINAL start --class float topgrade"
|
|
},
|
|
"backlight": {
|
|
"device": "intel_backlight",
|
|
"format": "{icon}",
|
|
"format-alt": "{percent}% {icon}",
|
|
"format-alt-click": "click-right",
|
|
"format-icons": ["", "", "", "", "", "", "", "", "", "", ""],
|
|
"tooltip-format": "{percent}% {icon}",
|
|
"on-scroll-up": "brightnessctl set 1%+",
|
|
"on-scroll-down": "brightnessctl set 1%-"
|
|
},
|
|
"battery": {
|
|
"format": "{icon}",
|
|
"format-warning": "{capacity}% {icon}",
|
|
"format-critical": "{capacity}% {icon}",
|
|
"format-alt":"{capacity}% {icon}",
|
|
"format-alt-click": "click-right",
|
|
"format-icons": ["", "", "", "", ""],
|
|
"interval": 10,
|
|
"states": {
|
|
"warning": 30,
|
|
"critical": 15
|
|
},
|
|
},
|
|
"clock": {
|
|
"format-alt": "{:%a, %d. %b %H:%M}",
|
|
"format-alt-click": "click-right",
|
|
"on-click": "gsimplecal"
|
|
},
|
|
"cpu": {
|
|
"interval": 10,
|
|
"format": "",
|
|
"format-alt": "{usage}% ",
|
|
"format-alt-click": "click-right",
|
|
"max-length": 10,
|
|
"states": {
|
|
"warning": 50,
|
|
"critical": 80
|
|
},
|
|
"on-click": "$TERMINAL start --class float htop"
|
|
},
|
|
"custom/events": {
|
|
"exec-if": "command -v khal >/dev/null 2>&1",
|
|
"exec": "~/.config/waybar/modules/khal.py 2>/dev/null",
|
|
"return-type": "json",
|
|
"interval": 300,
|
|
"on-click": "$TERMINAL start --class float ikhal",
|
|
"format": "{icon}{0}", // issue tracked here https://github.com/Alexays/Waybar/issues/3623
|
|
"format-icons": {
|
|
"event": "",
|
|
"event-today": " ",
|
|
"no-event": "",
|
|
},
|
|
},
|
|
"memory": {
|
|
"interval": 30,
|
|
"format": "{icon}",
|
|
"format-alt": "{used:0.1f}G/{total:0.1f}G ",
|
|
"format-alt-click": "click-right",
|
|
"tooltip": true,
|
|
"tooltip-format": "{used:0.1f}G/{total:0.1f}G \nUsed: {percentage} %\nSwap: {swapPercentage} %",
|
|
"format-icons": ["", "", "", "", "", "", "", ""],
|
|
"max-length": 10
|
|
},
|
|
"mpd": {
|
|
"format": "{stateIcon} {consumeIcon}{randomIcon}{repeatIcon}{singleIcon}",
|
|
"format-disconnected": "ﱙ",
|
|
"format-stopped": "",
|
|
"interval": 10,
|
|
"consume-icons": {
|
|
"on": " " // Icon shows only when "consume" is on
|
|
},
|
|
"random-icons": {
|
|
"on": " "
|
|
},
|
|
"repeat-icons": {
|
|
"on": " "
|
|
},
|
|
"single-icons": {
|
|
"on": "1 "
|
|
},
|
|
"state-icons": {
|
|
"paused": "",
|
|
"playing": "",
|
|
},
|
|
"tooltip-format": "{artist} - {album} - {title} ({elapsedTime:%M:%S}/{totalTime:%M:%S}) ",
|
|
"tooltip-format-disconnected": "MPD (disconnected)"
|
|
},
|
|
"custom/media": {
|
|
"format": "{icon}{}",
|
|
"format-alt-click": "click-right",
|
|
"return-type": "json",
|
|
"format-icons": {
|
|
"Playing": " ",
|
|
"Paused": " ",
|
|
},
|
|
"escape": true,
|
|
"max-length":70,
|
|
"exec": "playerctl -a metadata --format '{\"text\": \"\", \"tooltip\": \"{{playerName}} : {{markup_escape(title)}}\", \"alt\": \"{{status}}\", \"class\": \"{{status}}\"}' -F",
|
|
"exec-if": "command -v playerctl >/dev/null 2>&1",
|
|
"on-click": "playerctl play-pause",
|
|
"on-click-right": "playerctl stop",
|
|
},
|
|
"network": {
|
|
"format": "{ifname}",
|
|
"format-wifi": "",
|
|
"format-ethernet": " ",
|
|
"format-disconnected": " ",
|
|
"tooltip-format": "{ifname} via {gwaddr} ",
|
|
"tooltip-format-wifi": "{essid}: {bandwidthDownBits}-{bandwidthUpBits} ({signalStrength}%) {ifname}",
|
|
"tooltip-format-ethernet": "{ifname} ",
|
|
"tooltip-format-disconnected": "Disconnected",
|
|
"max-length": 50,
|
|
"on-click": "$TERMINAL start --class float nmtui",
|
|
// "on-click-right": "sudo rfkill toggle wlan"
|
|
},
|
|
"pulseaudio": {
|
|
"format": "{icon}",
|
|
"format-alt": "{volume}% {icon}",
|
|
"format-bluetooth": "{volume}% {icon} ",
|
|
"format-alt-click": "click-right",
|
|
"format-muted": "",
|
|
"format-icons": {
|
|
"headphone": "",
|
|
"hands-free": "",
|
|
"headset": "",
|
|
"phone": "",
|
|
"portable": "",
|
|
"car": "",
|
|
"default": ["", "", ""]
|
|
},
|
|
"scroll-step": 2,
|
|
"on-click": "$TERMINAL start --class float pulsemixer",
|
|
"on-scroll-up": "pactl set-sink-volume @DEFAULT_SINK@ +1%",
|
|
"on-scroll-down": "pactl set-sink-volume @DEFAULT_SINK@ -1%"
|
|
},
|
|
"river/tags": {
|
|
"num-tags": 10,
|
|
"tag-labels": [ "", "", "", "", "", "", "", "", "", "" ],
|
|
},
|
|
"river/mode": {
|
|
"format": "{} ",
|
|
},
|
|
"river/window": {
|
|
"format": " ",
|
|
"format-alt": " {}",
|
|
"format-alt-click": "click-right",
|
|
"max-length": 70
|
|
},
|
|
"temperature": {
|
|
// "thermal-zone": 2,
|
|
"hwmon-path": "/sys/class/hwmon/hwmon5/temp1_input",
|
|
"critical-threshold": 80,
|
|
// "format-critical": "{temperatureC}° ",
|
|
"format": "",
|
|
"format-alt": "{temperatureC}° ",
|
|
"format-alt-click": "click-right",
|
|
"on-click": "$TERMINAL start --class float watch sensors"
|
|
},
|
|
"tray": {
|
|
"icon-size": 21,
|
|
"spacing": 10
|
|
},
|
|
"custom/weather": {
|
|
"exec": "curl 'https://wttr.in/?format=%t'",
|
|
"exec-if": "command -v curl >/dev/null 2>&1",
|
|
"interval": 3600
|
|
},
|
|
"custom/wireguard": {
|
|
"format": "{icon}",
|
|
"format-icons": {
|
|
"default": "",
|
|
"pia": "",
|
|
"netbird": ""
|
|
},
|
|
"format-alt": "{} {icon}",
|
|
"format-alt-click": "click-right",
|
|
"exec": "~/.config/waybar/modules/wireguard json",
|
|
"exec-if": "command -v nmcli >/dev/null 2>&1",
|
|
"return-type": "json",
|
|
"signal": 6,
|
|
"interval": 20,
|
|
},
|
|
"custom/vidl": {
|
|
"format": "",
|
|
"format-alt": " {}",
|
|
"format-alt-click": "click-right",
|
|
"exec": "wc -l ~/.local/share/vidl/vidl_queue | cut -d' ' -f1",
|
|
"exec-if": "[ $(vidl -p) = 'running' ] && [ $(vidl -P) -gt 0 ]",
|
|
"interval": 5,
|
|
"on-click": "$TERMINAL start --class float nvim ~/.local/share/vidl/vidl_queue"
|
|
},
|
|
}
|