From 2031b5398e5e7448158e51331406b0ce554a1f13 Mon Sep 17 00:00:00 2001 From: duma97 Date: Thu, 13 Nov 2025 17:25:15 +0000 Subject: [PATCH] Added Ready to use Waybar with PyWal color integration. --- waybar/config | 107 ++++++++++++++++++++++++++++++++++ waybar/style.css | 145 +++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 252 insertions(+) create mode 100644 waybar/config create mode 100644 waybar/style.css diff --git a/waybar/config b/waybar/config new file mode 100644 index 0000000..1456b71 --- /dev/null +++ b/waybar/config @@ -0,0 +1,107 @@ +{ + "layer": "top", + "position": "top", + "reload_style_on_change": true, + "modules-left": ["hyprland/workspaces"], + "modules-center": ["clock"], + "modules-right": ["group/expand","bluetooth","network","battery"], + + "hyprland/workspaces": { + "format": "{name}", + "persistent-workspaces": { + "*": [ 1,2,3,4,5 ] + } + }, + "clock": { + "format": "{:%H:%M}", + "interval": 1, + "tooltip-format": "{calendar}", + "calendar": { + "format": { + "today": "{}" + } + }, + "actions": { + "on-click-right": "shift_down", + "on-click": "shift_up" + } + }, + "network": { + "interface": "wlo1", + "format-wifi": "󰖩", + "format-ethernet": "󰈀", + "format-disconnected": "󰖪", + "tooltip-format-disconnected": "Disconnected", + "tooltip-format-wifi": "{essid} ({signalStrength}%)", + "tooltip-format-ethernet": "{ifname}", + "on-click": "kitty nmtui" + }, + "bluetooth": { + "format-on": "󰂯", + "format-off": "BT-off", + "format-disabled": "󰂲", + "format-connected-battery": "{device_battery_percentage}% 󰂯", + "format-alt": "{device_alias} 󰂯", + "tooltip-format": "{controller_alias}\t{controller_address}\n\n{num_connections} connected", + "tooltip-format-connected": "{controller_alias}\t{controller_address}\n\n{num_connections} connected\n\n{device_enumerate}", + "tooltip-format-enumerate-connected": "{device_alias}\n{device_address}", + "tooltip-format-enumerate-connected-battery": "{device_alias}\n{device_address}\n{device_battery_percentage}%", + "on-click-right": "blueman-manager" + }, + "battery": { + "interval":30, + "states": { + "good": 95, + "warning": 30, + "critical": 20 + }, + "format": "{capacity}% {icon}", + "format-charging": "{capacity}% 󰂄", + "format-plugged": "{capacity}% 󰂄 ", + "format-alt": "{time} {icon}", + "format-icons": [ + "󰁻", + "󰁼", + "󰁾", + "󰂀", + "󰂂", + "󰁹" + ] + }, + "custom/expand": { + "format": "", + "tooltip": false + }, + "custom/endpoint":{ + "format": "|", + "tooltip": false + }, + "group/expand": { + "orientation": "horizontal", + "drawer": { + "transition-duration": 600, + "transition-to-left": true, + "click-to-reveal": true + }, + "modules": ["custom/expand", "custom/colorpicker","cpu","memory","temperature","custom/endpoint"] + }, + "custom/colorpicker": { + "format": "{}", + "return-type": "json", + "interval": "once", + "exec": "~/.config/waybar/scripts/colorpicker.sh -j", + "on-click": "~/.config/waybar/scripts/colorpicker.sh", + "signal": 1 + }, + "cpu": { + "format": "󰻠", + "tooltip": true + }, + "memory": { + "format": "" + }, + "temperature": { + "critical-threshold": 80, + "format": "" + } +} diff --git a/waybar/style.css b/waybar/style.css new file mode 100644 index 0000000..437277c --- /dev/null +++ b/waybar/style.css @@ -0,0 +1,145 @@ +@import url('../../.cache/wal/colors-waybar.css'); + +* { + font-size:15px; + font-family: "CodeNewRoman Nerd Font Propo"; + font-weight: bold; +} +window#waybar{ + all:unset; +} +.modules-left { + padding:7px; + margin:5 0 5 10; + border-radius:10px; + background: alpha(@background,.6); + box-shadow: 0px 0px 2px rgba(0, 0, 0, .6); +} +.modules-center { + padding:3px 7px; + margin:5 0 5 0; + border-radius:10px; + background: alpha(@background,.6); + box-shadow: 0px 0px 2px rgba(0, 0, 0, .6); +} +.modules-right { + padding:7px; + margin: 5 10 5 0; + border-radius:10px; + background: alpha(@background,.6); + box-shadow: 0px 0px 2px rgba(0, 0, 0, .6); +} +tooltip { + background:@background; + color: @color7; +} +#clock:hover, #bluetooth:hover, #network:hover, #battery:hover, #cpu:hover, #memory:hover, #temperature:hover{ + transition: all .3s ease; + color:@color9; +} +#clock{ + padding: 0px 5px; + color:@color7; + transition: all .3s ease; +} +#workspaces { + padding: 0px 5px; +} +#workspaces button { + all:unset; + padding: 0px 5px; + color: #ffffff; + transition: all .2s ease; +} +#workspaces button:hover { + color: #ffcc00; + border: none; + text-shadow: 0px 0px 5px #ffcc00; + transition: all .3s ease; +} +#workspaces button.active { + color: @color1; + border: none; + text-shadow: 0px 0px 8px @color1, 0px 0px 15px @color1; +} +#workspaces button.empty { + color: #666666; + border: none; + text-shadow: none; +} +#workspaces button.empty:hover { + color: #999999; + border: none; + text-shadow: 0px 0px 3px #999999; + transition: all .3s ease; +} +#workspaces button.empty.active { + color: @color1; + border: none; + text-shadow: 0px 0px 8px @color1, 0px 0px 15px @color1; +} +#bluetooth{ + padding: 0px 5px; + transition: all .3s ease; + color:@color7; + +} +#network{ + padding: 0px 5px; + transition: all .3s ease; + color:@color7; + +} +#battery{ + padding: 0px 5px; + transition: all .3s ease; + color:@color7; + font-family: "JetBrains Mono"; + font-weight: bold; + +} +#battery.charging { + color: #26A65B; +} + +#battery.warning:not(.charging) { + color: #ffbe61; +} + +#battery.critical:not(.charging) { + color: #f53c3c; + animation-name: blink; + animation-duration: 0.5s; + animation-timing-function: linear; + animation-iteration-count: infinite; + animation-direction: alternate; +} +#group-expand{ + padding: 0px 5px; + margin-right: 5px; + transition: all .3s ease; +} +#custom-expand{ + padding: 0px 5px; + color:alpha(@foreground,.2); + text-shadow: 0px 0px 2px rgba(0, 0, 0, .7); + transition: all .3s ease; +} +#custom-expand:hover{ + color:rgba(255,255,255,.2); + text-shadow: 0px 0px 2px rgba(255, 255, 255, .5); +} +#custom-colorpicker{ + padding: 0px 5px; +} +#cpu,#memory,#temperature{ + padding: 0px 5px; + transition: all .3s ease; + color:@color7; + +} +#custom-endpoint{ + color:transparent; + text-shadow: 0px 0px 1.5px rgba(0, 0, 0, 1); + +}