waybar config

This commit is contained in:
2025-09-20 14:47:46 -04:00
parent 468cbe649b
commit 0c1a801a17
5 changed files with 493 additions and 0 deletions

View File

@@ -0,0 +1,34 @@
{
// load modules
"include": "~/.config/waybar/modules.json",
// general settings
"position": "top",
"margin-top": 8,
"margin-bottom": 0,
"layer": "top",
"margin-left": 8,
"margin-right": 8,
"spacing": 10,
"fixed-center": true,
"exclusive": true,
// modules
"modules-left": [
"hyprland/workspaces",
"wlr/taskbar"
],
"modules-center": [
"clock"
],
"modules-right": [
"group/hardware",
"pulseaudio",
"bluetooth",
"network",
"battery",
"custom/exit"
]
}

11
waybar/.config/waybar/launch.sh Executable file
View File

@@ -0,0 +1,11 @@
#!/usr/bin/env bash
# terminate running instances
killall -q waybar
# wait until processes have been shut down
while pgrep -x waybar >/dev/null; do sleep 0.1; done
# launch main
waybar -c ~/.config/waybar/config.jsonc & -s ~/.config/waybar/style.css

View File

@@ -0,0 +1,26 @@
@define-color rosewater #f5e0dc;
@define-color flamingo #f2cdcd;
@define-color pink #f5c2e7;
@define-color mauve #cba6f7;
@define-color red #f38ba8;
@define-color maroon #eba0ac;
@define-color peach #fab387;
@define-color yellow #f9e2af;
@define-color green #a6e3a1;
@define-color teal #94e2d5;
@define-color sky #89dceb;
@define-color sapphire #74c7ec;
@define-color blue #89b4fa;
@define-color lavender #b4befe;
@define-color text #cdd6f4;
@define-color subtext1 #bac2de;
@define-color subtext0 #a6adc8;
@define-color overlay2 #9399b2;
@define-color overlay1 #7f849c;
@define-color overlay0 #6c7086;
@define-color surface2 #585b70;
@define-color surface1 #45475a;
@define-color surface0 #313244;
@define-color base #1e1e2e;
@define-color mantle #181825;
@define-color crust #11111b;

View File

@@ -0,0 +1,161 @@
{
// workspaces
"hyprland/workspaces" : {
"on-click": "activate",
"active-only": true,
"all-outputs": true,
"format": "{}",
"format-icons": {
"urgent": "",
"active": "",
"default": ""
},
"persistent-workspaces": {
"*": 5
},
},
// taskbar
"wlr/taskbar": {
"format": "{icon}",
"icon-size": 18,
"tooltip-format": "{title}",
"on-click": "activate",
"on-click-middle": "close",
},
// clock
"clock": {
"interval": 1,
"format": "{:%A, %B %d - %H:%M}",
//"format": "{:%I:%M %p}", // AM PM format
"format-alt": "{:%H:%M}",
"tooltip-format": "<big>{calendar}</big>",
"calendar": {
"mode": "month",
"mode-mon-col": 3,
"weeks-pos": "right",
"on-scroll": 1,
"format": {
"months": "<span color='#ffffff'><b>{}</b></span>",
"days": "<span color='#ffffff'><b>{}</b></span>",
"weeks": "<span color='#ffffff'><b>W{}</b></span>",
"weekdays": "<span color='#ffffff'><b>{}</b></span>",
"today": "<span color='#ffffff'><b><u>{}</u></b></span>"
}
}
},
// hardware
"group/hardware": {
"orientation": "inherit",
"drawer": {
"transition-duration": 300,
"children-class": "not-memory",
"transition-left-to-right": false
},
"modules": [
"custom/system",
"cpu",
"temperature",
"disk",
"memory"
]
},
// system
"custom/system": {
"format": "<span size='small'>  </span>",
"tooltip": false
},
// CPU
"cpu": {
"format": " 󰍛 {usage}% ",
"on-click": "kitty btop"
},
// temperature
"temperature": {
"format": " 󰈸 {temperatureC}°C ",
"on-click": "kitty btop"
},
// harddisc space
"disk": {
"interval": 30,
"format": " 󰋊 {percentage_used}% ",
"path": "/",
"on-click": "kitty btop"
},
// memory
"memory": {
"format": "  {}% ",
"on-click": "kitty btop"
},
// audio
"pulseaudio": {
"scroll-step": 1,
"format": "{icon} {volume}%",
"format-bluetooth": "{volume}% {icon} {format_source}",
"format-bluetooth-muted": "󰖁 {icon} {format_source}",
"format-muted": "󰖁 {format_source}",
"format-source": "{volume}% ",
"format-source-muted": "",
"format-icons": {
"headphone": "",
"phone": "",
"car": "",
"default": ["", "", ""]
},
"on-click": "pwvucontrol"
},
// bluetooth
"bluetooth": {
"format": " {status}",
"format-disabled": " {status}",
"format-off": " {status}",
"interval": 30,
"on-click": "kitty bluetuith",
"format-no-controller": ""
},
// network
"network": {
"format": "{ifname}",
"format-wifi": " {signalStrength}%",
"format-ethernet": "󰌘 {ifname}",
"format-disconnected": "disconnected",
"tooltip-format": "󰌘 {ifname} via {gwaddri}",
"tooltip-format-wifi": " {ifname} @ {essid}\nIP: {ipaddr}\nStrength: {signalStrength}%\nFreq: {frequency}MHz\n {bandwidthUpBits}  {bandwidthDownBits}",
"tooltip-format-ethernet": "󰌘 {ifname}\nIP: {ipaddr}\n  {bandwidthUpBits}  {bandwidthDownBits}",
"tooltip-format-disconnected": "disconnected",
"max-length": 50,
"on-click": "kitty nmtui"
//"on-click": "~/dotfiles/.settings/networkmanager.sh"
},
// battery
"battery": {
"states": {
"good": 95,
"warning": 30,
"critical": 10
},
"format": "{icon} {capacity}%",
"format-charging": " {capacity}%",
"format-plugged": " {capacity}%",
"format-icons": ["", "", "", "", ""],
"on-click": "kitty sudo auto-cpufreq --monitor"
},
// power menu
"custom/exit": {
"format": "",
"on-click": "wlogout -b 2",
"tooltip": false
},
}

View File

@@ -0,0 +1,261 @@
/* pywal colors */
@import "../../.cache/wal/colors-waybar.css";
@define-color ws @color4;
@define-color tt @color1;
@define-color clock @color3;
@define-color set @color4;
@define-color tb rgba(200,200,200,0.2);
@define-color tbh @color5;
@define-color text #FFFFFF;
/* general */
* {
font-family: "JetBrainsMono Nerd Font";
border: none;
border-radius: 5px;
}
window#waybar {
background-color: rgba(0,0,0,0.4); /* r, g, b, a(transparency) */
transition-property: background-color;
transition-duration: .5s;
}
/* workspaces */
#workspaces {
margin: 4px 1px 4px 1px;
padding: 0px 0px;
border-radius: 5px;
border: 0px;
font-weight: normal;
font-style: normal;
font-size: 16px;
color: @text;
opacity: 0.9;
}
#workspaces button {
margin: 0px 2px;
padding: 0px 5px;
color: @text;
transition: all 0.3s ease-in-out;
}
#workspaces button.active {
color: @text;
background: @ws;
transition: all 0.3s ease-in-out;
opacity: 0.9;
}
#workspaces button:hover {
color: @text;
background: @ws;
opacity: 0.9;
border: none;
box-shadow: none;
}
/* taskbar */
#taskbar {
background: @tb;
margin: 4px 15px 4px 1px;
padding: 0px;
}
#taskbar button {
margin: 0px 1px;
border-radius: 5px;
padding: 0px 5px;
}
#taskbar button:hover {
background: @tbh;
opacity: 1;
border: none;
box-shadow: none;
}
/* tooltip */
tooltip {
border-radius: 5px;
background-color: @tt;
opacity: 0.8;
}
tooltip label {
border-radius: 5px;
background-color: @tt;
opacity: 0.8;
padding: 0px;
margin: -5px 0px;
font-size: 12px;
color: @text;
}
/* modules */
.modules-left > widget:first-child > #workspaces {
margin-left: 10;
}
.modules-right > widget:last-child > #workspaces {
margin-right: 0;
}
/* clock */
#clock {
background-color: @clock;
font-size: 16px;
color: @text;
border-radius: 5px;
padding: 1px 10px 0px 10px;
margin: 4px 1px;
opacity: 0.9;
border: none;
}
/* hardware group */
#cpu,#temperature,#disk,#memory {
margin: 0px;
padding: 0px;
font-size: 16px;
color: @text;
}
/* audio */
#pulseaudio {
background-color: @set;
font-size: 16px;
color: @text;
border-radius: 5px;
padding: 1px 10px 0px 10px;
margin: 4px 1px 4px -15px;
opacity: 0.9;
}
/* network */
#network {
background-color: @set;
font-size: 16px;
color: @text;
border-radius: 5px;
padding: 1px 10px 0px 10px;
margin: 4px 1px;
opacity: 0.9;
}
#network.ethernet {
background-color: @set;
color: @text;
}
#network.wifi {
background-color: @set;
color: @text;
}
/* bluetooth */
#bluetooth, #bluetooth.on, #bluetooth.connected, #bluetooth.off {
background-color: @set;
font-size: 16px;
color: @text;
border-radius: 5px;
padding: 1px 10px 0px 10px;
margin: 4px 1px;
opacity: 0.9;
}
/* battery */
#battery {
background-color: @set;
font-size: 16px;
color: @text;
border-radius: 5px;
padding: 1px 10px 0px 10px;
margin: 4px 1px;
opacity: 0.9;
}
#battery.charging, #battery.plugged {
color: @text;
background-color: @set;
}
@keyframes blink {
to {
background-color: @set;
color: @text;
}
}
#battery.critical:not(.charging) {
background-color: #f53c3c;
color: @text;
animation-name: blink;
animation-duration: 0.5s;
animation-timing-function: linear;
animation-iteration-count: infinite;
animation-direction: alternate;
}
/* tray */
#tray {
padding: 0px 15px 0px 0px;
color: @text;
}
#tray > .passive {
-gtk-icon-effect: dim;
}
#tray > .needs-attention {
-gtk-icon-effect: highlight;
}
/* custom modules */
#custom-exit {
margin: 0px 18px 0px 5px;
padding: 0px;
font-size: 20px;
color: @text;
}
#custom-system {
margin-right: 15px;
font-size: 20px;
font-weight: bold;
opacity: 0.8;
color: @text;
}
#custom-settings {
margin-right: 0px;
font-size: 20px;
font-weight: bold;
opacity: 0.8;
color: @text;
}
#custom-updates {
background-color: @set;
font-size: 16px;
color: @text;
border-radius: 5px;
padding: 2px 10px 0px 10px;
margin: 8px 15px 8px 0px;
opacity:0.8;
}
#custom-updates.green {
background-color: @set;
}
#custom-updates.yellow {
background-color: #ff9a3c;
color: #FFFFFF;
}
#custom-updates.red {
background-color: #dc2f2f;
color: #FFFFFF;
}