// This is not a valid Waybar config file. It is a template designed to work with: // https://git.john.me.tz/jpm/scripts/src/branch/master/sway/displays.pl // You can make changes to the bar, but leave the '__' variables intact. // The script will build a config with these settings for each enabled display. // The '__' variables are defined in the hash in that script file. [{ "name": "window", "output": __OUTPUT__, "ipc": true, "id": "bar-1", "width": 1000, "mode": "hide", "hidden_state": "hide", "layer": "top", // Waybar at top layer "position": "top", // Waybar position (top|bottom|left|right) "margin-left": 75, "margin-right": 75, "margin-top": 68, "modules-left": [], "modules-center": ["sway/mode", "sway/window"], "modules-right": [], "sway/mode": { "format": "{}" }, }, { "name": "bar", "output": __OUTPUT__, "ipc": true, "id": "bar-1", "mode": "hide", "hidden_state": "hide", "layer": "top", // Waybar at top layer "position": "top", // Waybar position (top|bottom|left|right) "margin-left": 20, "margin-right": 20, "margin-top": 20, // Choose the order of the modules "modules-left": ["sway/workspaces"], "modules-center": [], "modules-right": ["custom/weather", "network", "network#wireguard", "cpu", "memory", "custom/disk", "temperature", "backlight", "custom/battery", "pulseaudio","tray", "custom/wallpaper", "custom/todo", "custom/osk", "custom/pkg", "custom/bar", "custom/gammastep", "idle_inhibitor", "custom/clock", "custom/power"], // Modules configuration "sway/workspaces": { // "disable-scroll": true, // "all-outputs": true, "format": "{icon}", "numeric-first": true, "format-icons": { "0": "0 \uf073", "1": "1 \uf27a", "2": "2 \uf0e0", "3": "3 \uf268", "4": "4 \uf144", "5": "5 \uf095", "6": "6 \uf120", "7": "7 \uf269", "8": "8 \uf121", "9": "9 \uf126", "C0": "C0", "C1": "C1", "C2": "C2", "C3": "C3", "C4": "C4", "C5": "C5", "C6": "C6", "C7": "C7", "C8": "C8", "C9": "C9", "grave": "", "urgent": "!", "focused": "", "default": "" } }, //"mpd": { //"server": "10.10.0.66", //"port": 6600, //"interval": 10, //"timeout": 30, //"unknown-tag": "⚠", //"format": "▶️ {title}", //"format-paused": "⏸️ {title}", //"format-stopped": "⏹️ mpd", //"format-disconnected": "⚠ mpd", //"on-click": "${HOME}/scripts/waybar/waybar-mpd.sh" //}, "custom/weather": { "interval": 600, "on-click": "${HOME}/scripts/waybar/waybar-weather.pl notify", "exec": "${HOME}/scripts/waybar/waybar-weather.pl bar" }, "network": { // "interface": "wlp58s0", // (Optional) To force the use of this interface "interval": 10, "tooltip-format": "{essid} {ipaddr}", "format-ethernet": "", "format-wifi": "", "format-disconnected": "⛖", "on-click": "${HOME}/scripts/waybar/waybar-nm.sh" //"on-click": "if [ $(sudo pgrep -c nmtui) -gt 0 ]; then sudo pkill nmtui; else /usr/bin/xterm -e 'sudo /usr/bin/nmtui'; fi" }, "network#wireguard": { "interval": 10, "interface": "wg0", // (Optional) To force the use of this interface "tooltip-format": "{ifname} {ipaddr}", "tooltip": "{ipaddr}", "format": "⚿", "format-disconnected": "⚿", "on-click": "if [ $(sudo pgrep -xc rofi) -gt 0 ]; then pkill rofi; else ${HOME}/scripts/rofi/rofi-openvpn.sh; fi" }, "cpu": { "format": "\u200a{usage}%", "tooltip": true, "on-click": "${HOME}/scripts/waybar/waybar-cpu.sh" }, "memory": { "format": "\u200a{}%", "on-click": "${HOME}/scripts/waybar/waybar-mem.sh" }, "custom/disk": { "format": "\uf0a0\u200a{}", "exec": "df / | tail -n 1 | awk {'print $5'}", "on-click": "${HOME}/scripts/waybar/waybar-disk.sh" }, "temperature": { "critical-threshold": 80, "format": "\u200a{temperatureC}°C" }, "backlight": { // "device": "acpi_video1", "format": "{icon}\u200a{percent}%", "format-icons": [ "•", "☼", "o", "", ""], "on-click": "${HOME}/scripts/thinkpad/blc.pl --notify %", "on-scroll-up": "${HOME}/scripts/thinkpad/blc.pl --notify ++", "on-scroll-down": "${HOME}/scripts/thinkpad/blc.pl --notify --" }, "custom/battery": { "format": "{}", "return-type": "json", "exec": "${HOME}/scripts/thinkpad/pow.pl --bar", "interval": 5, "on-click": "notify-send Power \"`${HOME}/scripts/thinkpad/pow.pl -p`\"" }, "pulseaudio": { //"scroll-step": 1, "format": "{icon}\u200a{volume}%", "format-bluetooth": "{icon}{volume}%", "format-muted": "", "format-icons": { "headphones": "", "handsfree": "", "headset": "", "phone": "", "portable": "", "car": "", "default": ["", ""] }, "on-click": "${HOME}/scripts/waybar/waybar-audio.sh" }, "tray": { "icon-size": 24, "spacing": 0 }, "custom/wallpaper": { "interval": 86400, "exec": "echo '🌌\nRotate wallpaper\nactive'", "on-click": "${HOME}/scripts/sway/rotate-wallpaper.sh" }, "custom/todo": { "interval": 86400, "exec": "echo '\u200a🗈\nTo-do list\n'", "on-click": "${HOME}/scripts/waybar/waybar-todo.sh", }, "custom/osk": { "interval": 1, "on-click": "${HOME}/scripts/waybar/waybar-keyboard.sh", "exec": "if [ -e $HOME/.spool/onscreen-keyboard ]; then CLASS='activated'; else CLASS=''; fi; echo '⌨\nToggle onscreen keyboard\n'$CLASS", }, "custom/pkg": { "interval": 60, "tooltip-format": "{:%d %B}\n{calendar}", "on-click": "${HOME}/scripts/waybar/waybar-pkg.sh upgrade", "return-type": "json", "exec": "${HOME}/scripts/waybar/waybar-pkg.sh bar" }, "custom/bar": { "interval": 86400, "exec": "echo '\u200a\nLock bar\n'", "on-click": "${HOME}/scripts/waybar/toggle.sh" }, "idle_inhibitor": { "format": "{icon}", "format-icons": { "activated": "", "deactivated": "" }, "on-click": "echo {status} > .config/idle_inhibitor" }, "custom/gammastep": { "interval": 1, "return-type": "json", "exec": "${HOME}/scripts/waybar/waybar-gammastep.sh", "on-click": "${HOME}/scripts/waybar/waybar-gammastep.sh toggle" }, "custom/clock": { "interval": 60, "on-click": "${HOME}/.local/bin/firefox/firefox-bin https://papillon.john.me.tz/calendar.php", "return-type": "json", "exec": "echo '{\"class\": \"clock\", \"text\": \"'$(date '+%H:%M')'\", \"tooltip\": \"'$(date '+%A, %B %d, %Y | %Y-%m-%d')'\"}'" }, "custom/power": { "format": "\u23FB", "on-click": "if [ $(sudo pgrep -xc wofi) -gt 0 ]; then pkill wofi; else ${HOME}/scripts/sway/power-menu.sh; fi" }, }]