[Fix] cleanup

This commit is contained in:
coja
2026-08-13 01:11:41 +02:00
parent f62cb40499
commit 86726cddce
312 changed files with 12274 additions and 10772 deletions
+51
View File
@@ -0,0 +1,51 @@
#!/usr/bin/env bash
# Self-contained waybar cava module: stream `cava` raw output as Unicode bar chars.
# No HyDE dependency — just needs `cava` installed. Usage: cava-waybar.sh [bars]
# bars = number of columns (even; ~screen_px / (font-size * 0.6)); default 94.
#
# waybar's custom/cava module uses restart-interval, so this script is relaunched
# every time it exits. Without cleanup each relaunch would leak an orphaned `cava`
# child and they'd pile up. We enforce a single instance: track cava's own PID,
# kill it on exit, and reap any stale instance left by a previous (crashed) run.
bars="${1:-94}"
chars="▁▂▃▄▅▆▇█" # cava ascii value 0..7 -> these
conf="$(mktemp)"
pidfile="${XDG_RUNTIME_DIR:-/tmp}/cava-waybar.pid"
cava_pid=""
cleanup() {
[[ -n "$cava_pid" ]] && kill "$cava_pid" 2>/dev/null
rm -f "$conf" "$pidfile"
}
trap cleanup EXIT INT TERM
# Reap a stale cava from a previous run that didn't clean up (e.g. hard kill).
if [[ -f "$pidfile" ]]; then
old="$(cat "$pidfile" 2>/dev/null)"
[[ "$old" =~ ^[0-9]+$ ]] && kill "$old" 2>/dev/null
fi
cat >"$conf" <<EOF
[general]
bars = $bars
[output]
method = raw
raw_target = /dev/stdout
data_format = ascii
ascii_max_range = 7
EOF
# sed program: drop the ';' separators, then map each digit 0..7 to its bar char
prog="s/;//g"
for i in 0 1 2 3 4 5 6 7; do
prog+=";s/$i/${chars:$i:1}/g"
done
# Run cava in the background (not a `cava | sed` pipeline) so we hold its real PID
# and can kill it in cleanup. stdbuf -oL line-buffers cava so waybar gets each frame
# immediately (no choppy lag); its stdout is piped to sed via process substitution.
stdbuf -oL cava -p "$conf" > >(sed -u "$prog") &
cava_pid=$!
echo "$cava_pid" >"$pidfile"
wait "$cava_pid"
+1
View File
@@ -0,0 +1 @@
98
+332
View File
@@ -0,0 +1,332 @@
// --// 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
}
}
]
@@ -0,0 +1,307 @@
/*
This is an autogenerated file.
Do not edit this file directly.
This is modified to dynamically
change the border-radius which will
follow the border-radius of hyprland.
To parse this file, we use PT as a unit
to represent the border-radius.
This is stored separately to avoid
issues on parsing the border-radius
*/
/* ? Leaf shape */
window#waybar.top #leaf,
window#waybar.top #leaf button,
window#waybar.top #leaf menu,
window#waybar.top #leaf menuitem,
window#waybar.top #leaf tooltip,
window#waybar.bottom #leaf,
window#waybar.bottom #leaf button,
window#waybar.bottom #leaf menu,
window#waybar.bottom #leaf menuitem,
window#waybar.bottom #leaf tooltip {
border-radius: 10pt 0 10pt 0;
}
window#waybar.left #leaf,
window#waybar.left #leaf button,
window#waybar.left #leaf menu,
window#waybar.left #leaf menuitem,
window#waybar.left #leaf tooltip,
window#waybar.right #leaf,
window#waybar.right #leaf button,
window#waybar.right #leaf menu,
window#waybar.right #leaf menuitem,
window#waybar.right #leaf tooltip {
border-radius: 10pt 0 10pt 0;
}
/* ? Inverse Leaf shape */
window#waybar.top #leaf-inverse,
window#waybar.top #leaf-inverse button,
window#waybar.top #leaf-inverse menu,
window#waybar.top #leaf-inverse menuitem,
window#waybar.top #leaf-inverse tooltip,
window#waybar.bottom #leaf-inverse,
window#waybar.bottom #leaf-inverse button,
window#waybar.bottom #leaf-inverse menu,
window#waybar.bottom #leaf-inverse menuitem,
window#waybar.bottom #leaf-inverse tooltip {
border-radius: 0 10pt 0 10pt;
}
window#waybar.left #leaf-inverse,
window#waybar.left #leaf-inverse button,
window#waybar.left #leaf-inverse menu,
window#waybar.left #leaf-inverse menuitem,
window#waybar.left #leaf-inverse tooltip,
window#waybar.right #leaf-inverse,
window#waybar.right #leaf-inverse button,
window#waybar.right #leaf-inverse menu,
window#waybar.right #leaf-inverse menuitem,
window#waybar.right #leaf-inverse tooltip {
border-radius: 0 10pt 0 10pt;
}
/* ? Full Pill shape*/
window#waybar.bottom #pill menuitem,
window#waybar.bottom #pill menu,
window#waybar.bottom #pill tooltip,
window#waybar.bottom #pill,
window#waybar.bottom #pill button,
window#waybar.top #pill menuitem,
window#waybar.top #pill menu,
window#waybar.top #pill tooltip,
window#waybar.top #pill,
window#waybar.top #pill button {
border-radius: 10pt 10pt 10pt 10pt;
}
window#waybar.left #pill menuitem,
window#waybar.left #pill menu,
window#waybar.left #pill tooltip,
window#waybar.left #pill,
window#waybar.left #pill button,
window#waybar.right #pill menuitem,
window#waybar.right #pill menu,
window#waybar.right #pill tooltip,
window#waybar.right #pill,
window#waybar.right #pill button {
border-radius: 10pt 10pt 10pt 10pt;
}
/* ? half pill with the curve pointing dowmwards */
window#waybar.top #pill-down,
window#waybar.top #pill-down button,
window#waybar.top #pill-down menu,
window#waybar.top #pill-down menuitem,
window#waybar.top #pill-down tooltip,
window#waybar.bottom #pill-down,
window#waybar.bottom #pill-down button,
window#waybar.bottom #pill-down menu,
window#waybar.bottom #pill-down menuitem,
window#waybar.bottom #pill-down tooltip {
border-radius: 0 0 10pt 10pt;
}
window#waybar.left #pill-down,
window#waybar.left #pill-down button,
window#waybar.left #pill-down menu,
window#waybar.left #pill-down menuitem,
window#waybar.left #pill-down tooltip,
window#waybar.right #pill-down,
window#waybar.right #pill-down button,
window#waybar.right #pill-down menu,
window#waybar.right #pill-down menuitem,
window#waybar.right #pill-down tooltip {
border-radius: 0 0 10pt 10pt;
}
/*
? half pill with the curve pointing inwards
*/
window#waybar.top #pill-in,
window#waybar.top #pill-in button,
window#waybar.top #pill-in menu,
window#waybar.top #pill-in menuitem,
window#waybar.top #pill-in tooltip {
border-radius: 0 0 10pt 10pt;
}
window#waybar.right #pill-in,
window#waybar.right #pill-in button,
window#waybar.right #pill-in menu,
window#waybar.right #pill-in menuitem,
window#waybar.right #pill-in tooltip {
border-radius: 10pt 0 0 10pt;
}
window#waybar.bottom #pill-in,
window#waybar.bottom #pill-in button,
window#waybar.bottom #pill-in menu,
window#waybar.bottom #pill-in menuitem,
window#waybar.bottom #pill-in tooltip {
border-radius: 10pt 10pt 0 0;
}
window#waybar.left #pill-in,
window#waybar.left #pill-in button,
window#waybar.left #pill-in menu,
window#waybar.left #pill-in menuitem,
window#waybar.left #pill-in tooltip {
border-radius: 0 10pt 10pt 0;
}
/* ? half pill with the curve pointing to left */
window#waybar.top #pill-left,
window#waybar.top #pill-left button,
window#waybar.top #pill-left menu,
window#waybar.top #pill-left menuitem,
window#waybar.top #pill-left tooltip,
window#waybar.bottom #pill-left,
window#waybar.bottom #pill-left button,
window#waybar.bottom #pill-left menu,
window#waybar.bottom #pill-left menuitem,
window#waybar.bottom #pill-left tooltip {
border-radius: 10pt 0 0 10pt;
}
window#waybar.left #pill-left,
window#waybar.left #pill-left button,
window#waybar.left #pill-left menu,
window#waybar.left #pill-left menuitem,
window#waybar.left #pill-left tooltip,
window#waybar.right #pill-left,
window#waybar.right #pill-left button,
window#waybar.right #pill-left menu,
window#waybar.right #pill-left menuitem,
window#waybar.right #pill-left tooltip {
border-radius: 10pt 0 0 10pt;
}
/* ? half pill with the curve pointing to outwards */
window#waybar.top #pill-out,
window#waybar.top #pill-out button,
window#waybar.top #pill-out menu,
window#waybar.top #pill-out menuitem,
window#waybar.top #pill-out tooltip {
border-radius: 10pt 10pt 0 0;
}
window#waybar.right #pill-out,
window#waybar.right #pill-out button,
window#waybar.right #pill-out menu,
window#waybar.right #pill-out menuitem,
window#waybar.right #pill-out tooltip {
border-radius: 0 10pt 10pt 0;
}
window#waybar.bottom #pill-out,
window#waybar.bottom #pill-out button,
window#waybar.bottom #pill-out menu,
window#waybar.bottom #pill-out menuitem,
window#waybar.bottom #pill-out tooltip {
border-radius: 0 0 10pt 10pt;
}
window#waybar.left #pill-out,
window#waybar.left #pill-out button,
window#waybar.left #pill-out menu,
window#waybar.left #pill-out menuitem,
window#waybar.left #pill-out tooltip {
border-radius: 10pt 0 0 10pt;
}
/* ============================ */
/* ? half pill with the curve pointing to the right */
window#waybar.top #pill-right,
window#waybar.top #pill-right button,
window#waybar.bottom #pill-right menu,
window#waybar.bottom #pill-right menuitem,
window#waybar.bottom #pill-right tooltip,
window#waybar.bottom #pill-right,
window#waybar.bottom #pill-right button,
window#waybar.top #pill-right menu,
window#waybar.top #pill-right menuitem,
window#waybar.top #pill-right tooltip {
border-radius: 0 10pt 10pt 0;
}
window#waybar.left #pill-right,
window#waybar.left #pill-right button,
window#waybar.right #pill-right menu,
window#waybar.right #pill-right menuitem,
window#waybar.right #pill-right tooltip,
window#waybar.right #pill-right,
window#waybar.right #pill-right button,
window#waybar.left #pill-right menu,
window#waybar.left #pill-right menuitem,
window#waybar.left #pill-right tooltip {
border-radius: 0 10pt 10pt 0;
}
/* ? half pill with the flat surface pointing upwards */
window#waybar.top #pill-up,
window#waybar.top #pill-up button,
window#waybar.top #pill-up menu,
window#waybar.top #pill-up menuitem,
window#waybar.top #pill-up tooltip,
window#waybar.bottom #pill-up,
window#waybar.bottom #pill-up button,
window#waybar.bottom #pill-up menu,
window#waybar.bottom #pill-up menuitem,
window#waybar.bottom #pill-up tooltip {
border-radius: 10pt 10pt 0 0;
}
window#waybar.left #pill-up,
window#waybar.left #pill-up button,
window#waybar.left #pill-up menu,
window#waybar.left #pill-up menuitem,
window#waybar.left #pill-up tooltip,
window#waybar.right #pill-up,
window#waybar.right #pill-up button,
window#waybar.right #pill-up menu,
window#waybar.right #pill-up menuitem,
window#waybar.right #pill-up tooltip {
border-radius: 10pt 10pt 0 0;
}
tooltip {
border-radius: 10pt;
}
menu {
border-radius: 10pt;
}
menu menuitem {
border-radius: 10pt;
}
window.popup decoration {
border-radius: 10pt;
}
+14
View File
@@ -0,0 +1,14 @@
/*
Dynamic Style Configuration *
This is handled by HyDE
To generate a dynamic configuration
base on theme and user settings
*/
* {
border-radius: 0em;
font-family: "JetBrainsMono Nerd Font","JetBrainsMono Nerd Font";
font-size: 10px;
}
+120
View File
@@ -0,0 +1,120 @@
{
"include": [
"/home/anon/.config/waybar/modules/backlight.jsonc",
"/home/anon/.config/waybar/modules/bluetooth.jsonc",
"/home/anon/.config/waybar/modules/cava.jsonc",
"/home/anon/.config/waybar/modules/cliphist.jsonc",
"/home/anon/.config/waybar/modules/clock.jsonc",
"/home/anon/.config/waybar/modules/cpu.jsonc",
"/home/anon/.config/waybar/modules/cpuinfo.jsonc",
"/home/anon/.config/waybar/modules/footer.jsonc",
"/home/anon/.config/waybar/modules/github_hyprdots.jsonc",
"/home/anon/.config/waybar/modules/gpuinfo.jsonc",
"/home/anon/.config/waybar/modules/header.jsonc",
"/home/anon/.config/waybar/modules/idle_inhibitor.jsonc",
"/home/anon/.config/waybar/modules/keybindhint.jsonc",
"/home/anon/.config/waybar/modules/language.jsonc",
"/home/anon/.config/waybar/modules/memory.jsonc",
"/home/anon/.config/waybar/modules/mpris.jsonc",
"/home/anon/.config/waybar/modules/network.jsonc",
"/home/anon/.config/waybar/modules/notifications.jsonc",
"/home/anon/.config/waybar/modules/power.jsonc",
"/home/anon/.config/waybar/modules/privacy.jsonc",
"/home/anon/.config/waybar/modules/pulseaudio.jsonc",
"/home/anon/.config/waybar/modules/spotify.jsonc",
"/home/anon/.config/waybar/modules/taskbar.jsonc",
"/home/anon/.config/waybar/modules/theme.jsonc",
"/home/anon/.config/waybar/modules/tray.jsonc",
"/home/anon/.config/waybar/modules/updates.jsonc",
"/home/anon/.config/waybar/modules/wallchange.jsonc",
"/home/anon/.config/waybar/modules/window.jsonc",
"/home/anon/.config/waybar/modules/workspaces.jsonc",
"/home/anon/.config/waybar/modules/battery.jsonc",
"/home/anon/.local/share/waybar/modules/image#wallpaper.json",
"/home/anon/.local/share/waybar/modules/privacy.json",
"/home/anon/.local/share/waybar/modules/tray.json",
"/home/anon/.local/share/waybar/modules/wlr-taskbar#windows.json",
"/home/anon/.local/share/waybar/modules/wlr-taskbar.json",
"/home/anon/.local/share/waybar/modules/backlight.jsonc",
"/home/anon/.local/share/waybar/modules/battery.jsonc",
"/home/anon/.local/share/waybar/modules/bluetooth.jsonc",
"/home/anon/.local/share/waybar/modules/cava.jsonc",
"/home/anon/.local/share/waybar/modules/clock.jsonc",
"/home/anon/.local/share/waybar/modules/cpu.jsonc",
"/home/anon/.local/share/waybar/modules/custom-app-launcher.jsonc",
"/home/anon/.local/share/waybar/modules/custom-cava.jsonc",
"/home/anon/.local/share/waybar/modules/custom-clipboard.jsonc",
"/home/anon/.local/share/waybar/modules/custom-cliphist.jsonc",
"/home/anon/.local/share/waybar/modules/custom-cpuinfo.jsonc",
"/home/anon/.local/share/waybar/modules/custom-display.jsonc",
"/home/anon/.local/share/waybar/modules/custom-dunst.jsonc",
"/home/anon/.local/share/waybar/modules/custom-gamemode.jsonc",
"/home/anon/.local/share/waybar/modules/custom-github_hyde.jsonc",
"/home/anon/.local/share/waybar/modules/custom-gpuinfo#amd.jsonc",
"/home/anon/.local/share/waybar/modules/custom-gpuinfo#intel.jsonc",
"/home/anon/.local/share/waybar/modules/custom-gpuinfo#nvidia.jsonc",
"/home/anon/.local/share/waybar/modules/custom-gpuinfo.jsonc",
"/home/anon/.local/share/waybar/modules/custom-hyde-menu.jsonc",
"/home/anon/.local/share/waybar/modules/custom-hyprsunset.jsonc",
"/home/anon/.local/share/waybar/modules/custom-keybindhint.jsonc",
"/home/anon/.local/share/waybar/modules/custom-mediaplayer.jsonc",
"/home/anon/.local/share/waybar/modules/custom-power.jsonc",
"/home/anon/.local/share/waybar/modules/custom-powermenu.jsonc",
"/home/anon/.local/share/waybar/modules/custom-sensorsinfo.jsonc",
"/home/anon/.local/share/waybar/modules/custom-spotify.jsonc",
"/home/anon/.local/share/waybar/modules/custom-swaync.jsonc",
"/home/anon/.local/share/waybar/modules/custom-theme.jsonc",
"/home/anon/.local/share/waybar/modules/custom-updates.jsonc",
"/home/anon/.local/share/waybar/modules/custom-wallchange.jsonc",
"/home/anon/.local/share/waybar/modules/custom-wbar.jsonc",
"/home/anon/.local/share/waybar/modules/custom-weather.jsonc",
"/home/anon/.local/share/waybar/modules/custom-workflows.jsonc",
"/home/anon/.local/share/waybar/modules/gamemode.jsonc",
"/home/anon/.local/share/waybar/modules/group-eyecare.jsonc",
"/home/anon/.local/share/waybar/modules/group-hide-tray.jsonc",
"/home/anon/.local/share/waybar/modules/group-mediaplayer.jsonc",
"/home/anon/.local/share/waybar/modules/group-volumecontrol.jsonc",
"/home/anon/.local/share/waybar/modules/hyprland-language.jsonc",
"/home/anon/.local/share/waybar/modules/hyprland-window.jsonc",
"/home/anon/.local/share/waybar/modules/hyprland-workspaces#kanji.jsonc",
"/home/anon/.local/share/waybar/modules/hyprland-workspaces#roman.jsonc",
"/home/anon/.local/share/waybar/modules/hyprland-workspaces.jsonc",
"/home/anon/.local/share/waybar/modules/idle_inhibitor.jsonc",
"/home/anon/.local/share/waybar/modules/image#profile.jsonc",
"/home/anon/.local/share/waybar/modules/image#wallpaper.jsonc",
"/home/anon/.local/share/waybar/modules/memory.jsonc",
"/home/anon/.local/share/waybar/modules/mpd.jsonc",
"/home/anon/.local/share/waybar/modules/mpris.jsonc",
"/home/anon/.local/share/waybar/modules/network#bandwidth.jsonc",
"/home/anon/.local/share/waybar/modules/network.jsonc",
"/home/anon/.local/share/waybar/modules/power-profiles-daemon.jsonc",
"/home/anon/.local/share/waybar/modules/privacy.jsonc",
"/home/anon/.local/share/waybar/modules/pulseaudio#microphone.jsonc",
"/home/anon/.local/share/waybar/modules/pulseaudio.jsonc",
"/home/anon/.local/share/waybar/modules/temperature.jsonc",
"/home/anon/.local/share/waybar/modules/tray.jsonc",
"/home/anon/.local/share/waybar/modules/wlr-taskbar#windows.jsonc",
"/home/anon/.local/share/waybar/modules/wlr-taskbar.jsonc"
],
"image#wallpaper": {
"size": 30,
"icon-size-multiplier": 3
},
"privacy": {
"icon-size": 10,
"icon-size-multiplier": 1
},
"tray": {
"icon-size": 16,
"icon-size-multiplier": 1.6
},
"wlr/taskbar#windows": {
"icon-size": 16,
"icon-size-multiplier": 1.6
},
"wlr/taskbar": {
"icon-size": 16,
"icon-size-multiplier": 1.6
},
"position": "top"
}
+207
View File
@@ -0,0 +1,207 @@
* {
border: none;
border-radius: 0px;
font-family: "JetBrainsMono Nerd Font";
font-weight: bold;
font-size: 10px;
min-height: 10px;
}
@import "../theme.css"; /* HyDE/wallbash-generated colors, lives one level up */
window#waybar {
/* transparent so the cavabar (bottom layer, same region) shows through; module pills keep @main-bg */
background: transparent;
}
tooltip {
background: @main-bg;
color: @main-fg;
border-radius: 5px;
border-width: 0px;
}
#workspaces {
border-radius: 8px;
}
#custom-padd {
padding-left: 5px;
padding-right: 5px;
}
#workspaces button {
box-shadow: none;
text-shadow: none;
padding: 0px;
border-radius: 5px;
margin-top: 3px;
margin-bottom: 3px;
margin-left: 0px;
padding-left: 3px;
padding-right: 3px;
margin-right: 0px;
color: @main-fg;
animation: ws_normal 20s ease-in-out 1;
}
#workspaces button.active {
background: @wb-act-bg;
color: @wb-act-fg;
animation: ws_active 20s ease-in-out 1;
transition: all 0.4s cubic-bezier(0.55, -0.68, 0.48, 1.682);
}
#workspaces button:hover {
background: @wb-hvr-bg;
color: @wb-hvr-fg;
animation: ws_hover 20s ease-in-out 1;
transition: all 0.3s cubic-bezier(0.55, -0.68, 0.48, 1.682);
}
#taskbar button {
box-shadow: none;
text-shadow: none;
padding: 0px;
border-radius: 6px;
margin-top: 3px;
margin-bottom: 3px;
margin-left: 0px;
padding-left: 3px;
padding-right: 3px;
margin-right: 0px;
color: @wb-color;
animation: tb_normal 20s ease-in-out 1;
}
#taskbar button.active {
background: @wb-act-bg;
color: @wb-act-color;
/*animation: tb_active 20s ease-in-out 1;*/
box-shadow: 0 0 1px 1px rgba(128, 128, 128, 0.4);
transition: all 0.4s cubic-bezier(0.55, -0.68, 0.48, 1.682);
}
#taskbar button:hover {
background: @wb-hvr-bg;
color: @wb-hvr-color;
opacity: 0.8;
animation: tb_hover 20s ease-in-out 1;
transition: all 0.3s cubic-bezier(0.55, -0.68, 0.48, 1.682);
}
#tray menu * {
min-height: 16px;
}
#tray menu separator {
min-height: 10px;
}
#backlight,
#battery,
#bluetooth,
#custom-cava,
#custom-cliphist,
#clock,
#custom-cpuinfo,
#cpu,
#custom-gpuinfo,
#idle_inhibitor,
#custom-keybindhint,
#language,
#memory,
#mpris,
#network,
#custom-notifications,
#custom-power,
#pulseaudio,
#custom-spotify,
#taskbar,
#custom-theme,
#tray,
#custom-updates,
#custom-wallchange,
#custom-wbar,
#window,
#workspaces,
#custom-l_end,
#custom-r_end,
#custom-sl_end,
#custom-sr_end,
#custom-rl_end,
#custom-rr_end {
color: @main-fg;
background: @main-bg;
opacity: 1;
margin: 4px 0px 4px 0px;
padding-left: 4px;
padding-right: 4px;
}
window#waybar.empty #window,
window#waybar.empty #custom-sl_end,
window#waybar.empty #custom-sr_end {
opacity: 0;
}
#workspaces {
padding-left: 5px;
padding-right: 5px;
}
#taskbar {
border-radius: 8px;
padding-left: 6px;
padding-right: 6px;
}
#custom-r_end {
border-radius: 0px 8px 8px 0px;
margin-right: 3px;
padding-right: 1px;
}
#custom-l_end {
border-radius: 8px 0px 0px 8px;
margin-left: 3px;
padding-left: 1px;
}
#custom-sr_end {
border-top-right-radius: 6px;
border-bottom-right-radius: 6px;
margin-right: 9px;
padding-right: 3px;
}
#custom-sl_end {
border-top-left-radius: 6px;
border-bottom-left-radius: 6px;
margin-left: 9px;
padding-left: 3px;
}
#custom-rr_end {
border-radius: 0px 8px 8px 0px;
margin-right: 9px;
padding-right: 3px;
}
#custom-rl_end {
border-radius: 8px 0px 0px 8px;
margin-left: 9px;
padding-left: 3px;
}
window#waybar.cavabar {
background: transparent;
}
window#waybar.cavabar #custom-cava {
font-size: 24px;
color: alpha(@main-fg, 0.7);
background: rgba(0, 0, 0, 0.2);
margin: 0px;
padding: 0px;
}
+332
View File
@@ -0,0 +1,332 @@
// --// 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
}
}
]
@@ -0,0 +1,10 @@
"backlight": {
"device": "intel_backlight",
"rotate": ${r_deg},
"format": "{icon} {percent}%",
"format-icons": ["", "", "", "", "", "", "", "", ""],
"on-scroll-up": "brightnessctl set 1%+",
"on-scroll-down": "brightnessctl set 1%-",
"min-length": 6
},
+14
View File
@@ -0,0 +1,14 @@
"battery": {
"states": {
"good": 95,
"warning": 30,
"critical": 20
},
"format": "{icon} {capacity}%",
"rotate": ${r_deg},
"format-charging": " {capacity}%",
"format-plugged": " {capacity}%",
"format-alt": "{time} {icon}",
"format-icons": ["󰂎", "󰁺", "󰁻", "󰁼", "󰁽", "󰁾", "󰁿", "󰂀", "󰂁", "󰂂", "󰁹"]
},
@@ -0,0 +1,15 @@
"bluetooth": {
"format": "",
"rotate": ${r_deg},
"format-disabled": "",
"format-connected": " {num_connections}",
"format-connected-battery": "{icon} {num_connections}",
// "format-connected-battery": "{icon} {device_alias}-{device_battery_percentage}%",
"format-icons": ["󰥇", "󰤾", "󰤿", "󰥀", "󰥁", "󰥂", "󰥃", "󰥄", "󰥅", "󰥆", "󰥈"],
// "format-device-preference": [ "device1", "device2" ], // preference list deciding the displayed device If this config option is not defined or none of the devices in the list are connected, it will fall back to showing the last connected device.
"tooltip-format": "{controller_alias}\n{num_connections} connected",
"tooltip-format-connected": "{controller_alias}\n{num_connections} connected\n\n{device_enumerate}",
"tooltip-format-enumerate-connected": "{device_alias}",
"tooltip-format-enumerate-connected-battery": "{device_alias}\t{icon} {device_battery_percentage}%"
},
+24
View File
@@ -0,0 +1,24 @@
{
"cava": {
// "cava_config": "$XDG_CONFIG_HOME/cava/cava.conf",
"framerate": 30,
"autosens": 1,
"sensitivity": 100,
"bars": 14,
"lower_cutoff_freq": 50,
"higher_cutoff_freq": 10000,
"method": "pulse",
"source": "auto",
"stereo": true,
"reverse": false,
"bar_delimiter": 0,
"monstercat": false,
"waves": false,
"noise_reduction": 0.77,
"input_delay": 2,
"format-icons": ["▁", "▂", "▃", "▄", "▅", "▆", "▇", "█"],
"actions": {
"on-click-right": "mode"
}
}
}
+11
View File
@@ -0,0 +1,11 @@
"custom/cliphist": {
"format": "{}",
"rotate": ${r_deg},
"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
},
+25
View File
@@ -0,0 +1,25 @@
"clock": {
"format": "{:%H:%M}",
"rotate": ${r_deg},
"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"
}
},
+8
View File
@@ -0,0 +1,8 @@
"cpu": {
"interval": 10,
"format": "󰍛 {usage}%",
"rotate": ${r_deg},
"format-alt": "{icon0}{icon1}{icon2}{icon3}",
"format-icons": ["▁", "▂", "▃", "▄", "▅", "▆", "▇", "█"]
},
+10
View File
@@ -0,0 +1,10 @@
"custom/cpuinfo": {
"exec": " cpuinfo.sh",
"return-type": "json",
"format": "{}",
"rotate": ${r_deg},
"interval": 5, // once every 5 seconds
"tooltip": true,
"max-length": 1000
},
+47
View File
@@ -0,0 +1,47 @@
// 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
}
}
@@ -0,0 +1,8 @@
{
"custom/github_hyprdots": {
"format": " ",
"rotate": 0,
"tooltip-format": "  Hyprdots repository",
"on-click": "xdg-open https://github.com/prasanthrangan/hyprdots"
}
}
+41
View File
@@ -0,0 +1,41 @@
"custom/gpuinfo": {
"exec": " gpuinfo.sh",
"return-type": "json",
"format": "{}",
"rotate": ${r_deg},
"interval": 5, // once every 5 seconds
"tooltip": true,
"max-length": 1000,
"on-click": "gpuinfo.sh --toggle",
},
"custom/gpuinfo#nvidia": {
"exec": " gpuinfo.sh --use nvidia ",
"return-type": "json",
"format": "{}",
"rotate": ${r_deg},
"interval": 5, // once every 5 seconds
"tooltip": true,
"max-length": 1000,
},
"custom/gpuinfo#amd": {
"exec": " gpuinfo.sh --use amd ",
"return-type": "json",
"format": "{}",
"rotate": ${r_deg},
"interval": 5, // once every 5 seconds
"tooltip": true,
"max-length": 1000,
},
"custom/gpuinfo#intel": {
"exec": " gpuinfo.sh --use intel ",
"return-type": "json",
"format": "{}",
"rotate": ${r_deg},
"interval": 5, // once every 5 seconds
"tooltip": true,
"max-length": 1000,
},
+13
View File
@@ -0,0 +1,13 @@
// --// waybar config generated by wbarconfgen.sh //-- //
{
// sourced from header module //
"layer": "top",
"position": "${w_position}",
"mod": "dock",
"${hv_pos}": ${w_height},
"exclusive": true,
"passthrough": false,
"gtk-layer-shell": true,
"reload_style_on_change": true,
@@ -0,0 +1,9 @@
"idle_inhibitor": {
"format": "{icon}",
"rotate": ${r_deg},
"format-icons": {
"activated": "󰅶",
"deactivated": "󰛊"
}
},
@@ -0,0 +1,6 @@
"custom/keybindhint": {
"format": " ",
"rotate": ${r_deg},
"on-click": "keybinds_hint.sh"
},
@@ -0,0 +1,6 @@
"hyprland/language": {
"format": "{short} {variant}",
"rotate": ${r_deg},
"on-click": "keyboardswitch.sh",
},
+18
View File
@@ -0,0 +1,18 @@
"memory": {
"states": {
"c": 90, // critical
"h": 60, // high
"m": 30, // medium
},
"interval": 30,
"format": "󰾆 {used}GB",
"rotate": ${r_deg},
"format-m": "󰾅 {used}GB",
"format-h": "󰓅 {used}GB",
"format-c": " {used}GB",
"format-alt": "󰾆 {percentage}%",
"max-length": 10,
"tooltip": true,
"tooltip-format": "󰾆 {percentage}%\n {used:0.1f}GB/{total:0.1f}GB"
},
+16
View File
@@ -0,0 +1,16 @@
"mpris": {
"format": "{player_icon} {dynamic}",
"rotate": ${r_deg},
"format-paused": "{status_icon} <i>{dynamic}</i>",
"player-icons": {
"default": "▶",
"mpv": "🎵"
},
"status-icons": {
"paused": ""
},
// "ignored-players": ["firefox"]
"max-length": 1000,
"interval": 1
},
+13
View File
@@ -0,0 +1,13 @@
"network": {
"tooltip": true,
"format-wifi": " ",
"rotate": ${r_deg},
"format-ethernet": "󰈀 ",
"tooltip-format": "Network: <big><b>{essid}</b></big>\nSignal strength: <b>{signaldBm}dBm ({signalStrength}%)</b>\nFrequency: <b>{frequency}MHz</b>\nInterface: <b>{ifname}</b>\nIP: <b>{ipaddr}/{cidr}</b>\nGateway: <b>{gwaddr}</b>\nNetmask: <b>{netmask}</b>",
"format-linked": "󰈀 {ifname} (No IP)",
"format-disconnected": "󰖪 ",
"tooltip-format-disconnected": "Disconnected",
"format-alt": "<span foreground='#99ffdd'> {bandwidthDownBytes}</span> <span foreground='#ffcc66'> {bandwidthUpBytes}</span>",
"interval": 2
}
@@ -0,0 +1,29 @@
"custom/notifications": {
"format": "{icon} {}",
"rotate": ${r_deg},
"format-icons": {
"email-notification": "<span foreground='white'><sup></sup></span>",
"chat-notification": "󱋊<span foreground='white'><sup></sup></span>",
"warning-notification": "󱨪<span foreground='yellow'><sup></sup></span>",
"error-notification": "󱨪<span foreground='red'><sup></sup></span>",
"network-notification": "󱂇<span foreground='white'><sup></sup></span>",
"battery-notification": "󰁺<span foreground='white'><sup></sup></span>",
"update-notification": "󰚰<span foreground='white'><sup></sup></span>",
"music-notification": "󰝚<span foreground='white'><sup></sup></span>",
"volume-notification": "󰕿<span foreground='white'><sup></sup></span>",
"notification": "<span foreground='white'><sup></sup></span>",
"dnd": "",
"none": ""
},
"return-type": "json",
"exec-if": "which dunstctl",
"exec": "notifications.py",
"on-scroll-down": "sleep 0.1 && dunstctl history-pop",
"on-click": "dunstctl set-paused toggle",
"on-click-middle": "dunstctl history-clear",
"on-click-right": "dunstctl close-all",
"interval": 1,
"tooltip": true,
"escape": true
},
+10
View File
@@ -0,0 +1,10 @@
"custom/power": {
"format": "{}",
"rotate": ${r_deg},
"exec": "echo ; echo  logout",
"on-click": "logoutlaunch.sh 2",
"on-click-right": "logoutlaunch.sh 1",
"interval" : 86400, // once every day
"tooltip": true
},
+19
View File
@@ -0,0 +1,19 @@
{
"privacy": {
"icon-size": 18,
"icon-spacing": 5,
"transition-duration": 250,
"modules": [
{
"type": "screenshare",
"tooltip": true,
"tooltip-icon-size": 24
},
{
"type": "audio-in",
"tooltip": true,
"tooltip-icon-size": 24
}
]
}
}
@@ -0,0 +1,35 @@
"pulseaudio": {
"format": "{icon} {volume}",
"rotate": ${r_deg},
"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": ${r_deg},
"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
},
+15
View File
@@ -0,0 +1,15 @@
"custom/spotify": {
"exec": "mediaplayer.py --player spotify",
"format": " {}",
"rotate": ${r_deg},
"return-type": "json",
"on-click": "playerctl play-pause --player spotify",
"on-click-right": "playerctl next --player spotify",
"on-click-middle": "playerctl previous --player spotify",
"on-scroll-up": "volumecontrol.sh -p spotify i",
"on-scroll-down": "volumecontrol.sh -p spotify d",
"max-length": 25,
"escape": true,
"tooltip": true
},
+151
View File
@@ -0,0 +1,151 @@
* {
border: none;
border-radius: 0px;
font-family: "JetBrainsMono Nerd Font";
font-weight: bold;
font-size: ${s_fontpx}px;
min-height: 10px;
}
@import "theme.css";
window#waybar {
background: @bar-bg;
}
tooltip {
background: @main-bg;
color: @main-fg;
border-radius: ${t_radius}px;
border-width: 0px;
}
#workspaces button {
box-shadow: none;
text-shadow: none;
padding: 0px;
border-radius: ${w_radius}px;
margin-${x1}: ${w_margin}px;
margin-${x2}: ${w_margin}px;
margin-${x3}: 0px;
padding-${x3}: ${w_paddin}px;
padding-${x4}: ${w_paddin}px;
margin-${x4}: 0px;
color: @main-fg;
animation: ws_normal 20s ease-in-out 1;
}
#workspaces button.active {
background: @wb-act-bg;
color: @wb-act-fg;
margin-${x3}: ${w_margin}px;
padding-${x3}: ${w_padact}px;
padding-${x4}: ${w_padact}px;
margin-${x4}: ${w_margin}px;
animation: ws_active 20s ease-in-out 1;
transition: all 0.4s cubic-bezier(.55,-0.68,.48,1.682);
}
#workspaces button:hover {
background: @wb-hvr-bg;
color: @wb-hvr-fg;
animation: ws_hover 20s ease-in-out 1;
transition: all 0.3s cubic-bezier(.55,-0.68,.48,1.682);
}
#taskbar button {
box-shadow: none;
text-shadow: none;
padding: 0px;
border-radius: ${w_radius}px;
margin-${x1}: ${w_margin}px;
margin-${x2}: ${w_margin}px;
margin-${x3}: 0px;
padding-${x3}: ${w_paddin}px;
padding-${x4}: ${w_paddin}px;
margin-${x4}: 0px;
color: @wb-color;
animation: tb_normal 20s ease-in-out 1;
}
#taskbar button.active {
background: @wb-act-bg;
color: @wb-act-color;
margin-${x3}: ${w_margin}px;
padding-${x3}: ${w_padact}px;
padding-${x4}: ${w_padact}px;
margin-${x4}: ${w_margin}px;
animation: tb_active 20s ease-in-out 1;
transition: all 0.4s cubic-bezier(.55,-0.68,.48,1.682);
}
#taskbar button:hover {
background: @wb-hvr-bg;
color: @wb-hvr-color;
animation: tb_hover 20s ease-in-out 1;
transition: all 0.3s cubic-bezier(.55,-0.68,.48,1.682);
}
#tray menu * {
min-height: 16px
}
#tray menu separator {
min-height: 10px
}
${modules_ls}
#custom-l_end,
#custom-r_end,
#custom-sl_end,
#custom-sr_end,
#custom-rl_end,
#custom-rr_end {
color: @main-fg;
background: @main-bg;
opacity: 1;
margin: ${x1g_margin}px ${x2g_margin}px ${x3g_margin}px ${x4g_margin}px;
padding-${x3}: ${g_paddin}px;
padding-${x4}: ${g_paddin}px;
}
#workspaces,
#taskbar {
padding: 0px;
}
#custom-r_end {
border-radius: ${x1rb_radius}px ${x2rb_radius}px ${x3rb_radius}px ${x4rb_radius}px;
margin-${x4}: ${e_margin}px;
padding-${x4}: ${e_paddin}px;
}
#custom-l_end {
border-radius: ${x1lb_radius}px ${x2lb_radius}px ${x3lb_radius}px ${x4lb_radius}px;
margin-${x3}: ${e_margin}px;
padding-${x3}: ${e_paddin}px;
}
#custom-sr_end {
border-radius: 0px;
margin-${x4}: ${e_margin}px;
padding-${x4}: ${e_paddin}px;
}
#custom-sl_end {
border-radius: 0px;
margin-${x3}: ${e_margin}px;
padding-${x3}: ${e_paddin}px;
}
#custom-rr_end {
border-radius: ${x1rc_radius}px ${x2rc_radius}px ${x3rc_radius}px ${x4rc_radius}px;
margin-${x4}: ${e_margin}px;
padding-${x4}: ${e_paddin}px;
}
#custom-rl_end {
border-radius: ${x1lc_radius}px ${x2lc_radius}px ${x3lc_radius}px ${x4lc_radius}px;
margin-${x3}: ${e_margin}px;
padding-${x3}: ${e_paddin}px;
}
+17
View File
@@ -0,0 +1,17 @@
"wlr/taskbar": {
"format": "{icon}",
"rotate": ${r_deg},
"icon-size": ${i_task},
"icon-theme": "${i_theme}",
"spacing": 0,
"tooltip-format": "{title}",
"on-click": "activate",
"on-click-middle": "close",
"ignore-list": [
"Alacritty"
],
"app_ids-mapping": {
"firefoxdeveloperedition": "firefox-developer-edition"
}
},
+11
View File
@@ -0,0 +1,11 @@
"custom/theme": {
"format": "{}",
"rotate": ${r_deg},
"exec": "echo ; echo 󰟡 switch theme",
"on-click": "themeswitch.sh -n",
"on-click-right": "themeswitch.sh -p",
"on-click-middle": "sleep 0.1 && themeselect.sh",
"interval" : 86400, // once every day
"tooltip": true
},
+6
View File
@@ -0,0 +1,6 @@
"tray": {
"icon-size": ${i_size},
"rotate": ${r_deg},
"spacing": 5
},
+10
View File
@@ -0,0 +1,10 @@
"custom/updates": {
"exec": "systemupdate.sh",
"return-type": "json",
"format": "{}",
"rotate": ${r_deg},
"on-click": "hyprctl dispatch exec 'systemupdate.sh up'",
"interval": 86400, // once every day
"tooltip": true,
"signal": 20
},
@@ -0,0 +1,11 @@
"custom/wallchange": {
"format": "{}",
"rotate": ${r_deg},
"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
},
+35
View File
@@ -0,0 +1,35 @@
{
"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",
"(.*)Freetube": " FreeTube",
"(.*) - VLC media player": "󰕼 $1",
"(.*)Steam": "󰓓 Steam",
"(.*)Neovide": " Nvim",
"(.*)Gajim": "󰭹 Gajim",
"(.*)KeePassXC": " KeePassXC",
"(.*)Betterbird": " Betterbird",
"(.*)Spotify": "󰓇 Spotify"
}
}
}
@@ -0,0 +1,13 @@
"hyprland/workspaces": {
"disable-scroll": true,
"rotate": ${r_deg},
"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": {
}
},
+10
View File
@@ -0,0 +1,10 @@
@define-color bar-bg rgba(0, 0, 0, 0.1);
@define-color main-bg rgba(0, 0, 0, 0.1);
@define-color main-fg #cdd6f4;
@define-color wb-act-bg #a6adc8;
@define-color wb-act-fg #313244;
@define-color wb-hvr-bg #f5c2e7;
@define-color wb-hvr-fg #313244;