From 11f9a87fdafc38d135ee4fc7a17eebfcf430b289 Mon Sep 17 00:00:00 2001 From: Craig Jennings Date: Sun, 25 Jan 2026 14:35:07 -0600 Subject: feat(waybar): implement Hyprland-Rice inspired config Clean minimal design with DWM color scheme: - Transparent bar with solid module groups - Golden accent border (#daa520) - Group/sysmonitor for cpu, memory, disk - Wireplumber audio with click/scroll controls - Hover transitions, box shadows - Berkeley Mono font --- dotfiles/hyprland/.config/waybar/config | 76 ++++++++++++++++++--------- dotfiles/hyprland/.config/waybar/style.css | 83 ++++++++++++++++++++---------- 2 files changed, 106 insertions(+), 53 deletions(-) (limited to 'dotfiles/hyprland/.config') diff --git a/dotfiles/hyprland/.config/waybar/config b/dotfiles/hyprland/.config/waybar/config index 3b3a90f..1a867f4 100644 --- a/dotfiles/hyprland/.config/waybar/config +++ b/dotfiles/hyprland/.config/waybar/config @@ -3,48 +3,74 @@ "position": "top", "height": 30, "spacing": 4, + "margin-top": 6, + "margin-left": 10, + "margin-right": 10, - "modules-left": ["hyprland/workspaces"], - "modules-center": ["hyprland/window"], - "modules-right": ["tray", "battery", "disk", "clock"], + "modules-left": [ + "hyprland/workspaces" + ], + "modules-center": [], + "modules-right": [ + "group/sysmonitor", + "tray", + "clock", + "wireplumber" + ], + + "group/sysmonitor": { + "orientation": "horizontal", + "modules": [ + "cpu", + "memory", + "disk" + ] + }, "hyprland/workspaces": { + "disable-scroll": true, + "all-outputs": true, "format": "{name}", - "on-click": "activate", "sort-by-number": true }, - "hyprland/window": { - "format": "{}", - "max-length": 50 + "cpu": { + "interval": 10, + "format": " {}%" }, - "tray": { - "spacing": 10 - }, - - "battery": { - "bat": "BAT0", + "memory": { "interval": 30, - "states": { - "warning": 30, - "critical": 15 - }, - "format": "󱊣 {capacity}% {icon}", - "format-charging": "󱊣 {capacity}% ", - "format-plugged": "󱊣 {capacity}% ", - "format-icons": ["", "", "", "", ""] + "format": " {}%" }, "disk": { "interval": 30, - "format": " {used}/{total}", + "format": " {percentage_used}%", "path": "/" }, + "tray": { + "icon-size": 22, + "spacing": 10 + }, + "clock": { - "interval": 30, - "format": " {:%a %B %d} 󰥔 {:%I:%M %p %Z}", - "tooltip-format": "{calendar}" + "format": "{:%a %d-%m-%Y %I:%M %p}", + "tooltip-format": "{calendar}", + "calendar": { + "format": { + "today": "{}" + } + } + }, + + "wireplumber": { + "format": "{volume}% {icon}", + "format-muted": "Muted 󰝟", + "format-icons": ["", "", ""], + "on-click": "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle", + "on-scroll-up": "wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+", + "on-scroll-down": "wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-" } } diff --git a/dotfiles/hyprland/.config/waybar/style.css b/dotfiles/hyprland/.config/waybar/style.css index 9411b46..2b68c10 100644 --- a/dotfiles/hyprland/.config/waybar/style.css +++ b/dotfiles/hyprland/.config/waybar/style.css @@ -1,61 +1,88 @@ -/* Waybar style - matching DWM colors */ -/* gray1=#222222, gray2=#444444, gray3=#bbbbbb, gray4=#eeeeee, accent=#daa520 */ +/* Waybar style - Hyprland-Rice inspired with DWM colors */ +/* Based on: github.com/CtrlLuzzio/Hyprland-Rice */ * { - font-family: "FiraCode Nerd Font Mono", monospace; - font-size: 12px; border: none; border-radius: 0; + font-size: 14px; min-height: 0; + font-family: "Berkeley Mono", "FiraCode Nerd Font", monospace; } window#waybar { - background-color: #222222; - color: #bbbbbb; + background: transparent; } -#workspaces button { - padding: 0 8px; - color: #bbbbbb; - background-color: transparent; +#workspaces { + padding: 0.2rem; } -#workspaces button:hover { - background-color: #444444; +#workspaces button { + padding: 0.5rem; + margin: 0.2rem; + background-color: transparent; + color: #bbbbbb; + border-radius: 1rem; + transition: all 0.3s ease; } #workspaces button.active { - color: #eeeeee; - background-color: #daa520; + background: #daa520; + color: #222222; + border-radius: 1rem; } #workspaces button.urgent { - background-color: #900000; + background-color: rgba(255, 88, 88, 0.4); } -#window { - color: #bbbbbb; - padding: 0 10px; +.modules-right, .modules-left { + background-color: #222222; + border-radius: 1rem; + padding: 0.2rem 0.6rem; + margin: 0.3rem; + border: 0.095rem solid #daa520; + box-shadow: 0rem 0.2rem 0.4rem rgba(0,0,0,0.5); } -#clock, -#battery, +#cpu, +#memory, #disk, -#tray { - padding: 0 10px; +#wireplumber, +#tray, +#clock { + padding: 0.4rem; + margin: 0.3rem; color: #bbbbbb; + background-color: transparent; + border-radius: 1rem; } -#battery.charging { - color: #daa520; +#sysmonitor { + margin: 0.3rem; + background-color: transparent; + border-radius: 1rem; } -#battery.warning:not(.charging) { - color: #f0ad4e; +#cpu:hover, +#memory:hover, +#disk:hover, +#wireplumber:hover, +#sysmonitor:hover { + background-color: #444444; + border-radius: 1rem; +} + +#clock { + color: #eeeeee; +} + +#wireplumber { + color: #daa520; } -#battery.critical:not(.charging) { - color: #d9534f; +#wireplumber.muted { + color: #666666; } #tray > .passive { -- cgit v1.2.3