333 lines
9.7 KiB
JSON
333 lines
9.7 KiB
JSON
// --// standalone two-bar cava rig — hand-maintained, NOT HyDE-generated (see README "Waybar") //-- //
|
|
|
|
[
|
|
{
|
|
// sourced from header module //
|
|
|
|
"layer": "top",
|
|
"position": "top",
|
|
"height": 33,
|
|
"exclusive": true,
|
|
"passthrough": false,
|
|
"gtk-layer-shell": true,
|
|
"reload_style_on_change": true,
|
|
|
|
|
|
// positions generated based on config.ctl //
|
|
|
|
"modules-left": ["custom/l_end","custom/power","custom/r_end","hyprland/workspaces", "custom/sl_end","hyprland/window","custom/sr_end","custom/l_end","custom/wallchange","custom/cliphist","custom/r_end"],
|
|
"modules-center": ["wlr/taskbar"],
|
|
"modules-right": ["custom/l_end","backlight","pulseaudio","pulseaudio#microphone","mpris","custom/r_end","custom/l_end","memory","cpu","custom/cpuinfo","battery","custom/r_end","custom/l_end","tray","custom/r_end","custom/l_end","idle_inhibitor","clock","custom/r_end"],
|
|
|
|
// sourced from modules based on config.ctl //
|
|
|
|
"tray": {
|
|
"icon-size": 19,
|
|
"rotate": 0,
|
|
"spacing": 5
|
|
},
|
|
|
|
// NOTE: keep in sync with modules/window.jsonc — this layout is launched standalone
|
|
// (waybar -c), so the modules/ file is NOT read here; this inline copy is what renders.
|
|
"hyprland/window": {
|
|
"format": " {}",
|
|
"rotate": 0,
|
|
"separate-outputs": true,
|
|
"max-length": 1000,
|
|
"rewrite": {
|
|
"(.*) — Kitty": " $1",
|
|
"(.*)~": " $1",
|
|
"(.*) — Mozilla Firefox": " $1",
|
|
"(.*)Mozilla Firefox": " Firefox",
|
|
"(.*) — LibreWolf": " $1",
|
|
"(.*)LibreWolf": " LibreWolf",
|
|
"(.*) — Chromium": " $1",
|
|
"(.*)Chromium": " Chromium",
|
|
"(.*) - VSCodium": " $1",
|
|
"(.*)VSCodium": " VSCodium",
|
|
"(.*)Code - OSS": " $1",
|
|
"(.*) - Visual Studio Code": " $1",
|
|
"(.*)Visual Studio Code": " Code",
|
|
"(.*) — Dolphin": " $1",
|
|
"(.*) - Obsidian(.*)": " $1",
|
|
"(.*)Ferdium": " Ferdium",
|
|
"(.*)FreeTube": " FreeTube",
|
|
"(.*) - VLC media player": " $1",
|
|
"(.*)Steam": " Steam",
|
|
"(.*)Neovide": " Nvim",
|
|
"(.*)Neovim": " Nvim",
|
|
"(.*)Nvim": " Nvim",
|
|
"(.*)Gajim": " Gajim",
|
|
"(.*)KeePassXC": " KeePassXC",
|
|
"(.*)Betterbird": " Betterbird",
|
|
"(.*)Spotify": " Spotify"
|
|
}
|
|
},
|
|
"hyprland/workspaces": {
|
|
"window-rewrite-default":"",
|
|
"all-outputs": true,
|
|
"active-only": false,
|
|
"on-click": "activate",
|
|
"disable-scroll": false,
|
|
"on-scroll-up": "hyprctl dispatch workspace -1",
|
|
"on-scroll-down": "hyprctl dispatch workspace +1",
|
|
"persistent-workspaces": {}
|
|
},
|
|
|
|
"cpu": {
|
|
"interval": 10,
|
|
"format": " {usage}%",
|
|
"format-alt": "{icon0}{icon1}{icon2}{icon3}",
|
|
"format-icons": ["▁", "▂", "▃", "▄", "▅", "▆", "▇", "█"]
|
|
},
|
|
|
|
"custom/cpuinfo": {
|
|
"exec": " cpuinfo.sh",
|
|
"return-type": "json",
|
|
"format": "{}",
|
|
"rotate": 0,
|
|
"interval": 5, // once every 5 seconds
|
|
"tooltip": true,
|
|
"max-length": 1000
|
|
},
|
|
|
|
"memory": {
|
|
"states": {
|
|
"c": 90, // critical
|
|
"h": 60, // high
|
|
"m": 30 // medium
|
|
},
|
|
"interval": 30,
|
|
"rotate": 0,
|
|
"format": " {used:0.1f}GB",
|
|
"format-m": " {used:0.1f}GB",
|
|
"format-h": " {used:0.1f}GB",
|
|
"format-c": " {used:0.1f}GB",
|
|
"format-alt": " {percentage}%",
|
|
"max-length": 10,
|
|
"tooltip": true,
|
|
"tooltip-format": " {percentage}%\n {used:0.1f}GB/{total:0.1f}GB"
|
|
},
|
|
|
|
"custom/power": {
|
|
"format": "{}",
|
|
"rotate": 0,
|
|
"exec": "echo ; echo logout",
|
|
"on-click": "logoutlaunch.sh 2",
|
|
"on-click-right": "logoutlaunch.sh 1",
|
|
"interval" : 86400, // once every day
|
|
"tooltip": true
|
|
},
|
|
|
|
"wlr/taskbar": {
|
|
"format": "{icon}",
|
|
"rotate": 0,
|
|
"icon-size": 19,
|
|
"icon-theme": "Tela-circle-dracula",
|
|
"spacing": 0,
|
|
"tooltip-format": "{title}",
|
|
"on-click": "activate",
|
|
"on-click-middle": "close",
|
|
"ignore-list": [
|
|
"Alacritty"
|
|
],
|
|
"app_ids-mapping": {
|
|
"firefoxdeveloperedition": "firefox-developer-edition"
|
|
}
|
|
},
|
|
|
|
"idle_inhibitor": {
|
|
"format": "{icon}",
|
|
"rotate": 0,
|
|
"format-icons": {
|
|
"activated": "",
|
|
"deactivated": ""
|
|
}
|
|
},
|
|
"clock": {
|
|
"format": "{:%H:%M}",
|
|
"rotate": 0,
|
|
"format-alt": "{:%R %d·%m·%y}",
|
|
"tooltip-format": "<span>{calendar}</span>",
|
|
"calendar": {
|
|
"mode": "month",
|
|
"mode-mon-col": 3,
|
|
"on-scroll": 1,
|
|
"on-click-right": "mode",
|
|
"format": {
|
|
"months": "<span color='#ffead3'><b>{}</b></span>",
|
|
"weekdays": "<span color='#ffcc66'><b>{}</b></span>",
|
|
"today": "<span color='#ff6699'><b>{}</b></span>"
|
|
}
|
|
},
|
|
"actions": {
|
|
"on-click-right": "mode",
|
|
"on-click-forward": "tz_up",
|
|
"on-click-backward": "tz_down",
|
|
"on-scroll-up": "shift_up",
|
|
"on-scroll-down": "shift_down"
|
|
}
|
|
},
|
|
|
|
"custom/cliphist": {
|
|
"format": "{}",
|
|
"rotate": 0,
|
|
"exec": "echo ; echo clipboard history",
|
|
"on-click": "sleep 0.1 && cliphist.sh c",
|
|
"on-click-right": "sleep 0.1 && cliphist.sh d",
|
|
"on-click-middle": "sleep 0.1 && cliphist.sh w",
|
|
"interval" : 86400, // once every day
|
|
"tooltip": true
|
|
},
|
|
|
|
"custom/wallchange": {
|
|
"format": "{}",
|
|
"rotate": 0,
|
|
"exec": "echo ; echo switch wallpaper",
|
|
"on-click": "swwwallpaper.sh -n",
|
|
"on-click-right": "swwwallpaper.sh -p",
|
|
"on-click-middle": "sleep 0.1 && swwwallselect.sh",
|
|
"interval" : 86400, // once every day
|
|
"tooltip": true
|
|
},
|
|
|
|
"pulseaudio": {
|
|
"format": "{icon} {volume}",
|
|
"rotate": 0,
|
|
"format-muted": "婢",
|
|
"on-click": "pavucontrol -t 3",
|
|
"on-click-right": "volumecontrol.sh -s ''",
|
|
"on-click-middle": "volumecontrol.sh -o m",
|
|
"on-scroll-up": "volumecontrol.sh -o i",
|
|
"on-scroll-down": "volumecontrol.sh -o d",
|
|
"tooltip-format": "{icon} {desc} // {volume}%",
|
|
"scroll-step": 5,
|
|
"format-icons": {
|
|
"headphone": "",
|
|
"hands-free": "",
|
|
"headset": "",
|
|
"phone": "",
|
|
"portable": "",
|
|
"car": "",
|
|
"default": ["", "", ""]
|
|
}
|
|
},
|
|
|
|
"pulseaudio#microphone": {
|
|
"format": "{format_source}",
|
|
"rotate": 0,
|
|
"format-source": "",
|
|
"format-source-muted": "",
|
|
"on-click": "pavucontrol -t 4",
|
|
"on-click-middle": "volumecontrol.sh -i m",
|
|
"on-scroll-up": "volumecontrol.sh -i i",
|
|
"on-scroll-down": "volumecontrol.sh -i d",
|
|
"tooltip-format": "{format_source} {source_desc} // {source_volume}%",
|
|
"scroll-step": 5
|
|
},
|
|
|
|
"mpris": {
|
|
"format": "{player_icon} {dynamic}",
|
|
"rotate": 0,
|
|
"format-paused": "{status_icon} <i>{dynamic}</i>",
|
|
"player-icons": {
|
|
"default": "▶",
|
|
"mpv": "🎵"
|
|
},
|
|
"status-icons": {
|
|
"paused": ""
|
|
},
|
|
"max-length": 1000,
|
|
"interval": 1
|
|
},
|
|
|
|
"battery": {
|
|
"states": {
|
|
"good": 95,
|
|
"warning": 30,
|
|
"critical": 20
|
|
},
|
|
"format": "{icon} {capacity}%",
|
|
"rotate": 0,
|
|
"format-charging": " {capacity}%",
|
|
"format-plugged": " {capacity}%",
|
|
"format-alt": "{time} {icon}",
|
|
"format-icons": ["", "", "", "", "", "", "", "", "", "", ""]
|
|
},
|
|
|
|
"backlight": {
|
|
"device": "intel_backlight",
|
|
"rotate": 0,
|
|
"format": "{icon} {percent}%",
|
|
"format-icons": ["", "", "", "", "", "", "", "", ""],
|
|
"on-scroll-up": "brightnessctl set 1%+",
|
|
"on-scroll-down": "brightnessctl set 1%-",
|
|
"min-length": 6
|
|
},
|
|
// modules for padding //
|
|
|
|
"custom/l_end": {
|
|
"format": " ",
|
|
"interval" : "once",
|
|
"tooltip": false
|
|
},
|
|
|
|
"custom/r_end": {
|
|
"format": " ",
|
|
"interval" : "once",
|
|
"tooltip": false
|
|
},
|
|
|
|
"custom/sl_end": {
|
|
"format": " ",
|
|
"interval" : "once",
|
|
"tooltip": false
|
|
},
|
|
|
|
"custom/sr_end": {
|
|
"format": " ",
|
|
"interval" : "once",
|
|
"tooltip": false
|
|
},
|
|
|
|
"custom/rl_end": {
|
|
"format": " ",
|
|
"interval" : "once",
|
|
"tooltip": false
|
|
},
|
|
|
|
"custom/rr_end": {
|
|
"format": " ",
|
|
"interval" : "once",
|
|
"tooltip": false
|
|
},
|
|
|
|
"custom/padd": {
|
|
"format": " ",
|
|
"interval" : "once",
|
|
"tooltip": false
|
|
}
|
|
},
|
|
|
|
// full-width cava visualizer layered behind the main bar //
|
|
|
|
{
|
|
"name": "cavabar",
|
|
"layer": "bottom",
|
|
"position": "top",
|
|
"height": 36,
|
|
"margin-top": -33,
|
|
"exclusive": false,
|
|
"passthrough": true,
|
|
"modules-center": ["custom/cava"],
|
|
|
|
"custom/cava": {
|
|
"format": "{}",
|
|
"exec": "bash $HOME/.config/waybar/cava-waybar.sh $(cat $HOME/.config/waybar/cava.width 2>/dev/null || echo 94)", // per-host cava.width (bars, even; ~screen_px / (font-size*0.6)). gui default 94; wm overrides to 218
|
|
"restart-interval": 1,
|
|
"hide-empty-text": true
|
|
}
|
|
}
|
|
]
|
|
|