waybar: organize config
This commit is contained in:
@@ -287,10 +287,18 @@ def main():
|
||||
|
||||
os.system(f'notify-send "Color theme changed" "Catppuccin Mocha - {flavor}"')
|
||||
|
||||
if not app or app == 'fastfetch':
|
||||
ans = input("execute \"exec fish\"? [y/N]: ").strip().lower()
|
||||
if ans in ('y', 'yes'):
|
||||
os.system('fish')
|
||||
# def is_interactive_shell() -> bool:
|
||||
# return sys.stdin.isatty() and sys.stdout.isatty()
|
||||
|
||||
# def is_fish() -> bool:
|
||||
# import psutil
|
||||
# parent = psutil.Process().parent()
|
||||
# return parent is not None and 'fish' in parent.name().lower()
|
||||
|
||||
# if not app or app == 'fastfetch' \
|
||||
# and is_interactive_shell() \
|
||||
# and is_fish():
|
||||
# os.system('fish')
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
||||
@@ -42,10 +42,6 @@ Based on [codeopshq/dotfiles](https://github.com/codeopshq/dotfiles), also serve
|
||||
|
||||
Based on [vinceliuice/Elegant-grub2-themes](https://github.com/vinceliuice/Elegant-grub2-themes) with [illustration from 紺屋鴉江](https://www.pixiv.net/artworks/119683453).
|
||||
|
||||
## Waybar
|
||||
|
||||
Gathered from internet, based on <s>I don't know who</s> (such config files had been laying in my .config folder before I could even notice) (and I'm sure they were not the default config files shipped with the waybar package).
|
||||
|
||||
## MPV
|
||||
|
||||
Based on [noelsimbolon/mpv-config](https://github.com/noelsimbolon/mpv-config.git).
|
||||
|
||||
@@ -2,39 +2,23 @@
|
||||
// -------------------------------------------------------------------------
|
||||
// Global configuration
|
||||
// -------------------------------------------------------------------------
|
||||
"layer": "top",
|
||||
"layer": "bottom",
|
||||
"position": "top",
|
||||
"height": 55,
|
||||
"margin-left": 0,
|
||||
"margin-bottom": 0,
|
||||
"margin-right": 0,
|
||||
"spacing": 2, // Gaps between modules (px)
|
||||
"modules-left": [
|
||||
"custom/rofi",
|
||||
// "hyprland/workspaces",
|
||||
// "custom/workspacenew",
|
||||
"group/workspaceactions",
|
||||
"hyprland/window",
|
||||
//"hyprland/submap",
|
||||
//"idle_inhibitor",
|
||||
//"mpd"
|
||||
"custom/mediaplayer"
|
||||
"custom/mediaplayer",
|
||||
"hyprland/window"
|
||||
],
|
||||
"modules-center": [
|
||||
"clock#date"
|
||||
//"custom/gammastep"
|
||||
"clock"
|
||||
],
|
||||
"modules-right": [
|
||||
// "network#speed",
|
||||
// "memory",
|
||||
// "cpu",
|
||||
// "battery",
|
||||
// //"pulseaudio",
|
||||
// "backlight",
|
||||
// "wireplumber",
|
||||
"group/monitors",
|
||||
// "bluetooth",
|
||||
// "network",
|
||||
"tray",
|
||||
"custom/caffeine",
|
||||
"custom/power"
|
||||
@@ -42,15 +26,6 @@
|
||||
// -------------------------------------------------------------------------
|
||||
// Modules
|
||||
// -------------------------------------------------------------------------
|
||||
// Separators
|
||||
"custom/sp1": {
|
||||
"format": " | ",
|
||||
"tooltip": false
|
||||
},
|
||||
"custom/sp2": {
|
||||
"format": " |",
|
||||
"tooltip": false
|
||||
},
|
||||
// Buttons
|
||||
"custom/power": {
|
||||
"format": "",
|
||||
@@ -88,35 +63,10 @@
|
||||
},
|
||||
// Time and Date
|
||||
"clock": {
|
||||
"format": " {:%H:%M %e %b}",
|
||||
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>",
|
||||
"today-format": "<b>{}</b>"
|
||||
},
|
||||
"clock#date": {
|
||||
"format": " {:%H:%M | %e %b}",
|
||||
"tooltip-format": "<big>{:%Y %B}</big>\n<tt>{calendar}</tt>",
|
||||
"today-format": "<b>{}</b>"
|
||||
},
|
||||
"clock#1": {
|
||||
"format": " {:%a}",
|
||||
"tooltip": false,
|
||||
"on-click": "gsimplecal"
|
||||
},
|
||||
"clock#2": {
|
||||
"format": " {:%d-%h-%Y}",
|
||||
"tooltip": false,
|
||||
"on-click": "gsimplecal"
|
||||
},
|
||||
"clock#3": {
|
||||
"format": " {:%H:%M:%S %p}",
|
||||
"tooltip": false,
|
||||
"on-click": "gsimplecal"
|
||||
},
|
||||
"custom/screenshot_t": {
|
||||
"format": " ",
|
||||
"on-click": "~/.config/hypr/scripts/screenshot_full",
|
||||
"on-click-right": "~/.config/hypr/scripts/screenshot_area"
|
||||
},
|
||||
// System monitors
|
||||
"group/monitors": {
|
||||
"modules": ["network#speed", "custom/publicip", "temperature", "memory", "cpu", "battery", "backlight", "wireplumber"],
|
||||
@@ -227,11 +177,20 @@
|
||||
},
|
||||
"hyprland/workspaces": {
|
||||
"all-outputs": true,
|
||||
"format": "{name}",
|
||||
"format": "{id}",
|
||||
"on-scroll-up": "hyprctl dispatch workspace e+1 1>/dev/null",
|
||||
"on-scroll-down": "hyprctl dispatch workspace e-1 1>/dev/null",
|
||||
"sort-by-number": true,
|
||||
"active-only": false
|
||||
"active-only": false//,
|
||||
// "window-rewrite-default": "",
|
||||
// "window-rewrite": {
|
||||
// "class<kitty>": "",
|
||||
// "class<code>": "",
|
||||
// "class<zen-browser>": "",
|
||||
// "class<firefox>": "",
|
||||
// "class<ghostty>": "",
|
||||
// "class<spotify>": ""
|
||||
// }
|
||||
},
|
||||
"hyprland/workspaces#special": {
|
||||
"persistent-workspaces": {
|
||||
@@ -240,7 +199,16 @@
|
||||
"persistent-only": true,
|
||||
"show-special": true,
|
||||
"special-visible-only": false,
|
||||
"format": "S"
|
||||
"format": "S",
|
||||
"window-rewrite-default": ""//,
|
||||
// "window-rewrite": {
|
||||
// "class<kitty>": "",
|
||||
// "class<code>": "",
|
||||
// "class<zen-browser>": "",
|
||||
// "class<firefox>": "",
|
||||
// "class<ghostty>": "",
|
||||
// "class<spotify>": ""
|
||||
// }
|
||||
},
|
||||
"custom/workspacenew": {
|
||||
"format": "+",
|
||||
@@ -250,7 +218,8 @@
|
||||
"hyprland/window": {
|
||||
"max-length": 100,
|
||||
"separate-outputs": true,
|
||||
"hide-empty-text": true
|
||||
"icon": true,
|
||||
"icon-size": 15
|
||||
},
|
||||
"custom/mediaplayer": {
|
||||
"format": "{text}",
|
||||
@@ -270,164 +239,5 @@
|
||||
"tray": {
|
||||
"icon-size": 15,
|
||||
"spacing": 5
|
||||
},
|
||||
// Not used
|
||||
"network": {
|
||||
"format-wifi": " {essid} ({signalStrength}%)",
|
||||
"format-ethernet": "{ifname}: {ipaddr}/{cidr} ",
|
||||
"format-linked": "{ifname} (No IP)",
|
||||
"format": "",
|
||||
"format-disconnected": "",
|
||||
"format-alt": "{ifname}: {ipaddr}/{cidr}",
|
||||
"on-click": "wl-copy $(ip address show up scope global | grep inet | head -n1 | cut -d/ -f 1 | tr -d [:space:] | cut -c5-)",
|
||||
"on-click-right": "wl-copy $(ip address show up scope global | grep inet6 | head -n1 | cut -d/ -f 1 | tr -d [:space:] | cut -c6-)",
|
||||
"tooltip-format": " {bandwidthUpBits} {bandwidthDownBits}\n{ifname}\n{ipaddr}/{cidr}\n",
|
||||
"tooltip-format-wifi": " {essid} {frequency}MHz\nStrength: {signaldBm}dBm ({signalStrength}%)\nIP: {ipaddr}/{cidr}\n {bandwidthUpBits} {bandwidthDownBits}",
|
||||
"interval": 10,
|
||||
"max-length": 12
|
||||
},
|
||||
"custom/storage": {
|
||||
"format": " {}",
|
||||
"format-alt": "{percentage}% ",
|
||||
"format-alt-click": "click-right",
|
||||
"return-type": "json",
|
||||
"interval": 60,
|
||||
"exec": "~/.config/waybar/modules/storage.sh"
|
||||
},
|
||||
"idle_inhibitor": {
|
||||
"format": "{icon}",
|
||||
"format-icons": {
|
||||
"activated": "",
|
||||
"deactivated": ""
|
||||
},
|
||||
"tooltip": "true"
|
||||
},
|
||||
"custom/weather": {
|
||||
"format": "{}",
|
||||
"format-alt": "{alt}: {}",
|
||||
"format-alt-click": "click-right",
|
||||
"interval": 3600,
|
||||
"exec": "curl -s 'https://wttr.in/?format=1'",
|
||||
//"return-type": "json",
|
||||
//"exec": "~/.config/waybar/modules/weather.sh",
|
||||
"exec-if": "ping wttr.in -c1"
|
||||
},
|
||||
"custom/pacman": {
|
||||
"format": "<big></big> {}",
|
||||
"interval": 3600, // every hour
|
||||
"exec": "checkupdates | wc -l", // # of updates
|
||||
"exec-if": "exit 0", // always run; consider advanced run conditions
|
||||
"on-click": "ghostty -e 'paru'; pkill -SIGRTMIN+8 waybar", // update system
|
||||
"signal": 8,
|
||||
"max-length": 7,
|
||||
"min-length": 3
|
||||
},
|
||||
"custom/spotify": {
|
||||
"exec": "~/.config/waybar/mediaplayer.py --player spotify",
|
||||
"format": "{} ",
|
||||
"return-type": "json",
|
||||
"on-click": "playerctl play-pause",
|
||||
"on-scroll-up": "playerctl next",
|
||||
"on-scroll-down": "playerctl previous"
|
||||
},
|
||||
"custom/media": {
|
||||
"format": "{0} {1}",
|
||||
"return-type": "json",
|
||||
"max-length": 40,
|
||||
"format-icons": {
|
||||
"spotify": "",
|
||||
"default": "🎜"
|
||||
},
|
||||
"escape": true
|
||||
//"exec": "~/.config/waybar/mediaplayer.py" // Script in resources folder
|
||||
// "exec": "~/.config/waybar/mediaplayer.py --player spotify 2> /dev/null" // Filter player based on name
|
||||
},
|
||||
"custom/gammastep": {
|
||||
"interval": 5,
|
||||
"return-type": "json",
|
||||
"exec": {
|
||||
"pre": "if unit_status=\"$(systemctl --user is-active gammastep)\"; then\nstatus=\"$unit_status ($(journalctl --user -u gammastep.service -g 'Period: ' | tail -1 | cut -d ':' -f6 | xargs))\"\nelse\nstatus=\"$unit_status\"\nfi",
|
||||
"alt": "${status:-inactive}",
|
||||
"tooltip": "Gammastep is $status"
|
||||
},
|
||||
"format": "{icon}",
|
||||
"format-icons": {
|
||||
"activating": " ",
|
||||
"deactivating": " ",
|
||||
"inactive": "? ",
|
||||
"active (Night)": " ",
|
||||
"active (Nighttime)": " ",
|
||||
"active (Transition (Night)": " ",
|
||||
"active (Transition (Nighttime)": " ",
|
||||
"active (Day)": " ",
|
||||
"active (Daytime)": " ",
|
||||
"active (Transition (Day)": " ",
|
||||
"active (Transition (Daytime)": " "
|
||||
},
|
||||
"on-click": "systemctl --user is-active gammastep && systemctl --user stop gammastep || systemctl --user start gammastep"
|
||||
},
|
||||
"mpd": {
|
||||
"max-length": 25,
|
||||
"format": "<span foreground='#bb9af7'></span> {title}",
|
||||
"format-paused": " {title}",
|
||||
"format-stopped": "<span foreground='#bb9af7'></span>",
|
||||
"format-disconnected": "",
|
||||
"on-click": "mpc --quiet toggle",
|
||||
"on-click-right": "mpc update; mpc ls | mpc add",
|
||||
"on-click-middle": "ghostty -e ncmpcpp",
|
||||
"on-scroll-up": "mpc --quiet prev",
|
||||
"on-scroll-down": "mpc --quiet next",
|
||||
"smooth-scrolling-threshold": 5,
|
||||
"tooltip-format": "{title} - {artist} ({elapsedTime:%M:%S}/{totalTime:%H:%M:%S})"
|
||||
},
|
||||
"custom/title": {
|
||||
"format": "{}",
|
||||
"interval": 0,
|
||||
"return-type": "json",
|
||||
//"max-length": 35,
|
||||
"tooltip": false
|
||||
},
|
||||
"custom/title#name": {
|
||||
"format": "{}",
|
||||
"interval": 0,
|
||||
"return-type": "json",
|
||||
"max-length": 35,
|
||||
"exec": "$HOME/.scripts/title"
|
||||
},
|
||||
/*"custom/keyboard": {
|
||||
"format": " {}",
|
||||
"interval": 1,
|
||||
"exec": "$HOME/.config/waybar/get_kbdlayout.sh"
|
||||
},*/
|
||||
"pulseaudio": {
|
||||
"scroll-step": 3, // %, can be a float
|
||||
"format": "{icon} {volume}% {format_source}",
|
||||
"format-bluetooth": "{volume}% {icon} {format_source}",
|
||||
"format-bluetooth-muted": " {icon} {format_source}",
|
||||
"format-muted": " {format_source}",
|
||||
//"format-source": "{volume}% ",
|
||||
//"format-source-muted": "",
|
||||
"format-source": "",
|
||||
"format-source-muted": "",
|
||||
"format-icons": {
|
||||
"headphone": "",
|
||||
"phone": "",
|
||||
"portable": "",
|
||||
"car": "",
|
||||
"default": ["", "", ""]
|
||||
},
|
||||
"on-click": "pavucontrol",
|
||||
"on-click-right": "amixer sset Master toggle"
|
||||
},
|
||||
"bluetooth": {
|
||||
"format-on": "",
|
||||
"format-off": "",
|
||||
"format-disabled": "", // an empty format will hide the module
|
||||
"format-connected": " {num_connections}",
|
||||
"tooltip-format-connected": "{device_enumerate}",
|
||||
"tooltip-format-enumerate-connected": "{device_alias}\t{device_address}",
|
||||
"on-click": "blueberry",
|
||||
"max-length": 3,
|
||||
"min-length": 3
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#!/bin/env bash
|
||||
# shellcheck disable=SC1091
|
||||
# shellcheck disable=SC1091,SC1090
|
||||
|
||||
# Entries in publicip.conf:
|
||||
# IP_QUERY_URL: URL to query public IP of the system.
|
||||
@@ -25,23 +25,24 @@ time_log="$path/publicip.log"
|
||||
[ "$1" == "force" ] && rm -f "$cache_file"
|
||||
[ -f "$cache_file" ] && . "$cache_file"
|
||||
|
||||
|
||||
ip_current=$(curl -s -L "$IP_QUERY_URL" | jq -r '.ip')
|
||||
ip_current=$(curl -s -L -4 "$IP_QUERY_URL" | jq -r '.ip')
|
||||
[ -z "$ip_current" ] && exit 1
|
||||
|
||||
if [ "$ip_current" != "$CACHED_IP" ]; then
|
||||
echo "$(date +%Y-%m-%dT%H:%M:%S) - IP changed: $CACHED_IP -> $ip_current" >> "$time_log"
|
||||
CACHED_IP="$ip_current"
|
||||
echo "$(date +%Y-%m-%dT%H:%M:%S) - IP changed: $CACHED_IP -> $ip_current" >>"$time_log"
|
||||
CACHED_IP="$ip_current"
|
||||
|
||||
ip_info_url=${IP_INFO_URL//<ip>/$ip_current}
|
||||
CACHED_CODE=$(curl -s -L "$ip_info_url" | jq -r '.country_code')
|
||||
[ -z "$CACHED_CODE" ] && CACHED_CODE="N/A"
|
||||
echo "CACHED_IP=$CACHED_IP" > "$cache_file"
|
||||
echo "CACHED_CODE=$CACHED_CODE" >> "$cache_file"
|
||||
notify-send "New Public IP detected" "New IP: $ip_current\nCountry: $CACHED_CODE"
|
||||
ip_info_url=${IP_INFO_URL//<ip>/$ip_current}
|
||||
CACHED_CODE=$(curl -s -L "$ip_info_url" | jq -r '.country_code')
|
||||
[ -z "$CACHED_CODE" ] && CACHED_CODE="N/A"
|
||||
|
||||
echo "CACHED_IP=$CACHED_IP" >"$cache_file"
|
||||
echo "CACHED_CODE=$CACHED_CODE" >>"$cache_file"
|
||||
notify-send "New Public IP detected" "New IP: $ip_current\nCountry: $CACHED_CODE"
|
||||
fi
|
||||
|
||||
jq -n --unbuffered --compact-output \
|
||||
--arg ip "$CACHED_IP" \
|
||||
--arg country "$CACHED_CODE" \
|
||||
'{alt: $ip, text: $country}'
|
||||
'{alt: $ip, text: $country}'
|
||||
|
||||
|
||||
308
waybar/style.css
308
waybar/style.css
@@ -1,72 +1,88 @@
|
||||
@import 'mocha.css';
|
||||
|
||||
@define-color accent #f5c2e7;
|
||||
@define-color flavor #f5c2e7;
|
||||
|
||||
/* Font(s) */
|
||||
* {
|
||||
/* main font icons CJK Fallback */
|
||||
/* main font icons CJK fallback */
|
||||
font-family: 'Sour Gummy Light', 'Meslo LGM Nerd Font Mono', 'WenQuanYi Micro Hei', 'Noto Sans', sans-serif;
|
||||
font-size: 16px;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
transition-property: background-color;
|
||||
transition-duration: 0.5s;
|
||||
}
|
||||
|
||||
/* Reset all styles */
|
||||
* {
|
||||
border: none;
|
||||
border-radius: 3px;
|
||||
border-radius: 14px;
|
||||
min-height: 0;
|
||||
margin: 2px 1px 2px 1px;
|
||||
padding: 0;
|
||||
transition-property: background-color;
|
||||
transition-duration: 0.5s;
|
||||
}
|
||||
|
||||
/* The whole bar */
|
||||
#waybar {
|
||||
background-color: transparent;
|
||||
color: #ffffff;
|
||||
transition-property: background-color;
|
||||
transition-duration: 0.5s;
|
||||
color: @text;
|
||||
border-radius: 0px;
|
||||
margin: 0px;
|
||||
}
|
||||
|
||||
window#waybar.hidden {
|
||||
opacity: 0.2;
|
||||
}
|
||||
|
||||
tooltip {
|
||||
background: @base;
|
||||
border: 2px solid @overlay0;
|
||||
}
|
||||
|
||||
#workspaceactions,
|
||||
#window,
|
||||
#clock,
|
||||
#monitors,
|
||||
#custom-mediaplayer,
|
||||
#custom-power-menu,
|
||||
#tray,
|
||||
#custom-rofi,
|
||||
#custom-caffeine,
|
||||
#custom-power {
|
||||
background-color: alpha(@base, 0.6);
|
||||
border-radius: 14px;
|
||||
padding: 3px 10px;
|
||||
}
|
||||
|
||||
#custom-rofi,
|
||||
#custom-caffeine,
|
||||
#custom-power {
|
||||
padding-left: 6px;
|
||||
padding-right: 6px;
|
||||
}
|
||||
|
||||
#custom-workspacenew,
|
||||
#workspaces button {
|
||||
padding: 0px 5px; /* Adjusted padding to reduce height */
|
||||
margin: 3px 5px; /* Reduced margin slightly */
|
||||
border-radius: 6px;
|
||||
color: @foreground;
|
||||
background-color: alpha(@base, 0);
|
||||
padding: 0px 5px;
|
||||
margin: 3px 3px;
|
||||
border-radius: 8px;
|
||||
color: @text;
|
||||
background-color: transparent;
|
||||
transition: all 0.3s ease-in-out;
|
||||
}
|
||||
|
||||
#workspaces button:hover {
|
||||
background: @surface0;
|
||||
background-color: alpha(@flavor, 0.3);
|
||||
}
|
||||
|
||||
#workspaces button.active {
|
||||
color: @foreground;
|
||||
background: @accent;
|
||||
color: @base;
|
||||
background: @flavor;
|
||||
}
|
||||
|
||||
#workspaces button.urgent {
|
||||
color: @base;
|
||||
background-color: @red;
|
||||
}
|
||||
|
||||
#workspaceactions {
|
||||
background-color: alpha(@base, 0.6);
|
||||
border-radius: 14px;
|
||||
padding: 3px 6px; /* Adjusted padding to reduce height */
|
||||
border: 2px solid @accent;
|
||||
padding-left: 3px;
|
||||
padding-right: 3px;
|
||||
border: 2px solid @flavor;
|
||||
}
|
||||
|
||||
#workspaces {
|
||||
@@ -74,105 +90,40 @@ tooltip {
|
||||
margin: 0px;
|
||||
}
|
||||
|
||||
#custom-workspacenew:hover {
|
||||
background-color: alpha(@accent, 0.3);
|
||||
}
|
||||
|
||||
#custom-workspacespecial:hover {
|
||||
background-color: alpha(@accent, 0.3);
|
||||
}
|
||||
|
||||
#window {
|
||||
background-color: alpha(@base, 0.6);
|
||||
color: @subtext1;
|
||||
border-radius: 14px;
|
||||
padding: 3px 6px; /* Reduced padding */
|
||||
margin: 2px;
|
||||
opacity: 1;
|
||||
transition: none; /* Disable background transition */
|
||||
}
|
||||
|
||||
window#waybar.empty #window{
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
#custom-mediaplayer {
|
||||
background-color: alpha(@base, 0.6);
|
||||
border-radius: 14px;
|
||||
padding: 3px 12px;
|
||||
color: @accent;
|
||||
}
|
||||
|
||||
#clock,
|
||||
#battery,
|
||||
#cpu,
|
||||
#memory,
|
||||
#disk,
|
||||
#temperature,
|
||||
#backlight,
|
||||
#network,
|
||||
#pulseaudio,
|
||||
#wireplumber,
|
||||
#custom-media,
|
||||
#mode,
|
||||
#idle_inhibitor,
|
||||
#mpd,
|
||||
#bluetooth,
|
||||
#custom-hyprPicker,
|
||||
#custom-power-menu,
|
||||
#custom-spotify,
|
||||
#custom-publicip,
|
||||
#custom-weather,
|
||||
#custom-weather.severe,
|
||||
#custom-weather.sunnyDay,
|
||||
#custom-weather.clearNight,
|
||||
#custom-weather.cloudyFoggyDay,
|
||||
#custom-weather.cloudyFoggyNight,
|
||||
#custom-weather.rainyDay,
|
||||
#custom-weather.rainyNight,
|
||||
#custom-weather.showyIcyDay,
|
||||
#custom-weather.snowyIcyNight,
|
||||
#custom-weather.default {
|
||||
background-color: alpha(@base, 0.6);
|
||||
border-radius: 14px;
|
||||
padding: 6px; /* Adjusted padding */
|
||||
}
|
||||
|
||||
#monitors {
|
||||
background-color: alpha(@base, 0.6);
|
||||
border-radius: 14px;
|
||||
padding: 6px;
|
||||
color: @flavor;
|
||||
}
|
||||
|
||||
#network.speed {
|
||||
background: transparent;
|
||||
color: @accent;
|
||||
padding: 0;
|
||||
color: @flavor;
|
||||
}
|
||||
|
||||
#custom-publicip {
|
||||
background: transparent;
|
||||
color: @peach;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
#temperature {
|
||||
background: transparent;
|
||||
color: @yellow;
|
||||
padding: 0px;
|
||||
}
|
||||
|
||||
#memory {
|
||||
color: @green;
|
||||
background: transparent;
|
||||
padding: 0px;
|
||||
}
|
||||
|
||||
#cpu {
|
||||
color: @teal;
|
||||
background: transparent;
|
||||
padding: 0px;
|
||||
}
|
||||
|
||||
#battery {
|
||||
background: transparent;
|
||||
color: @sapphire;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
#battery.charging,
|
||||
@@ -182,40 +133,18 @@ tooltip {
|
||||
}
|
||||
|
||||
#backlight {
|
||||
background: transparent;
|
||||
color: @blue;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
#wireplumber {
|
||||
background: transparent;
|
||||
color: @lavender;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
#custom-screenshot_t {
|
||||
background-color: alpha(@base, 0.6);
|
||||
border-radius: 14px;
|
||||
padding: 6px;
|
||||
}
|
||||
|
||||
#custom-spotify {
|
||||
background-color: alpha(@base, 0.6);
|
||||
border-radius: 14px;
|
||||
padding: 3px 12px;
|
||||
}
|
||||
|
||||
#tray {
|
||||
background-color: alpha(@base, 0.6);
|
||||
border-radius: 14px;
|
||||
padding: 6px; /* Adjusted padding */
|
||||
border: 2px solid @accent;
|
||||
border: 2px solid @flavor;
|
||||
}
|
||||
|
||||
#custom-power {
|
||||
background-color: alpha(@base, 0.6);
|
||||
border-radius: 14px;
|
||||
padding: 6px;
|
||||
border: 3px solid @maroon;
|
||||
}
|
||||
|
||||
@@ -224,9 +153,6 @@ tooltip {
|
||||
}
|
||||
|
||||
#custom-rofi {
|
||||
background-color: alpha(@base, 0.6);
|
||||
border-radius: 14px;
|
||||
padding: 6px;
|
||||
border: 3px solid @teal;
|
||||
}
|
||||
|
||||
@@ -235,9 +161,6 @@ tooltip {
|
||||
}
|
||||
|
||||
#custom-caffeine {
|
||||
background-color: alpha(@base, 0.6);
|
||||
border-radius: 14px;
|
||||
padding: 6px;
|
||||
border: 3px solid @yellow;
|
||||
}
|
||||
|
||||
@@ -249,119 +172,29 @@ tooltip {
|
||||
border: 3px solid @peach;
|
||||
}
|
||||
|
||||
#custom-storage {
|
||||
background-color: alpha(@base, 0.6);
|
||||
border-radius: 14px;
|
||||
padding: 6px;
|
||||
}
|
||||
|
||||
#custom-launcher {
|
||||
background-color: #1b242b;
|
||||
color: #6a92d7;
|
||||
border-radius: 7.5px;
|
||||
padding: 3px 6px; /* Adjusted padding */
|
||||
}
|
||||
|
||||
#custom-weather.severe {
|
||||
color: #eb937d;
|
||||
}
|
||||
|
||||
#custom-weather.sunnyDay {
|
||||
color: #c2ca76;
|
||||
}
|
||||
|
||||
#custom-weather.clearNight {
|
||||
color: #cad3f5;
|
||||
}
|
||||
|
||||
#custom-weather.cloudyFoggyDay,
|
||||
#custom-weather.cloudyFoggyNight {
|
||||
color: #c2ddda;
|
||||
}
|
||||
|
||||
#custom-weather.rainyDay,
|
||||
#custom-weather.rainyNight {
|
||||
color: #5aaca5;
|
||||
}
|
||||
|
||||
#custom-weather.showyIcyDay,
|
||||
#custom-weather.snowyIcyNight {
|
||||
color: #d6e7e5;
|
||||
}
|
||||
|
||||
#custom-weather.default {
|
||||
color: #dbd9d8;
|
||||
}
|
||||
|
||||
/* If workspaces is the leftmost module, omit left margin */
|
||||
.modules-left > widget:first-child > #workspaces {
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
/* If workspaces is the rightmost module, omit right margin */
|
||||
.modules-right > widget:last-child > #workspaces {
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
#pulseaudio {
|
||||
color: #7d9bba;
|
||||
}
|
||||
|
||||
#clock {
|
||||
color: #c8d2e0;
|
||||
border: 2px solid @accent;
|
||||
border: 2px solid @flavor;
|
||||
}
|
||||
|
||||
@keyframes blink {
|
||||
to {
|
||||
background-color: rgba(30, 34, 42, 0.5);
|
||||
color: #abb2bf;
|
||||
background-color: alpha(@red, 0.5);
|
||||
}
|
||||
}
|
||||
|
||||
#battery.critical:not(.charging) {
|
||||
color: @red;
|
||||
animation-name: blink;
|
||||
animation-duration: 0.5s;
|
||||
animation-duration: 1s;
|
||||
animation-timing-function: linear;
|
||||
animation-iteration-count: infinite;
|
||||
animation-direction: alternate;
|
||||
}
|
||||
|
||||
label:focus {
|
||||
background-color: #000000;
|
||||
}
|
||||
|
||||
#disk {
|
||||
background-color: #964b00;
|
||||
}
|
||||
|
||||
#bluetooth {
|
||||
color: @sapphire;
|
||||
}
|
||||
|
||||
#bluetooth.disconnected {
|
||||
color: @red;
|
||||
}
|
||||
|
||||
#network.disconnected {
|
||||
color: @red;
|
||||
}
|
||||
|
||||
#custom-media {
|
||||
background-color: #66cc99;
|
||||
color: #2a5c45;
|
||||
min-width: 100px;
|
||||
}
|
||||
|
||||
#custom-media.custom-spotify {
|
||||
background-color: #66cc99;
|
||||
}
|
||||
|
||||
#custom-media.custom-vlc {
|
||||
background-color: #ffa000;
|
||||
}
|
||||
|
||||
#temperature.critical {
|
||||
background-color: #eb4d4b;
|
||||
}
|
||||
@@ -373,37 +206,4 @@ label:focus {
|
||||
#tray > .needs-attention {
|
||||
-gtk-icon-effect: highlight;
|
||||
background-color: #eb4d4b;
|
||||
}
|
||||
|
||||
#idle_inhibitor {
|
||||
background-color: #2d3436;
|
||||
}
|
||||
|
||||
#idle_inhibitor.activated {
|
||||
background-color: #ecf0f1;
|
||||
color: #2d3436;
|
||||
}
|
||||
|
||||
#language {
|
||||
background: #00b093;
|
||||
color: #740864;
|
||||
padding: 0 0px;
|
||||
margin: 0 5px;
|
||||
min-width: 16px;
|
||||
}
|
||||
|
||||
#keyboard-state {
|
||||
background: #97e1ad;
|
||||
color: #000000;
|
||||
padding: 0 0px;
|
||||
margin: 0 5px;
|
||||
min-width: 16px;
|
||||
}
|
||||
|
||||
#keyboard-state > label {
|
||||
padding: 0 0px;
|
||||
}
|
||||
|
||||
#keyboard-state > label.locked {
|
||||
background: rgba(0, 0, 0, 0.2);
|
||||
}
|
||||
}
|
||||
@@ -1,72 +1,88 @@
|
||||
@import 'mocha.css';
|
||||
|
||||
@define-color accent #<FLAVOR_HEX>;
|
||||
@define-color flavor #<FLAVOR_HEX>;
|
||||
|
||||
/* Font(s) */
|
||||
* {
|
||||
/* main font icons CJK Fallback */
|
||||
/* main font icons CJK fallback */
|
||||
font-family: 'Sour Gummy Light', 'Meslo LGM Nerd Font Mono', 'WenQuanYi Micro Hei', 'Noto Sans', sans-serif;
|
||||
font-size: 16px;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
transition-property: background-color;
|
||||
transition-duration: 0.5s;
|
||||
}
|
||||
|
||||
/* Reset all styles */
|
||||
* {
|
||||
border: none;
|
||||
border-radius: 3px;
|
||||
border-radius: 14px;
|
||||
min-height: 0;
|
||||
margin: 2px 1px 2px 1px;
|
||||
padding: 0;
|
||||
transition-property: background-color;
|
||||
transition-duration: 0.5s;
|
||||
}
|
||||
|
||||
/* The whole bar */
|
||||
#waybar {
|
||||
background-color: transparent;
|
||||
color: #ffffff;
|
||||
transition-property: background-color;
|
||||
transition-duration: 0.5s;
|
||||
color: @text;
|
||||
border-radius: 0px;
|
||||
margin: 0px;
|
||||
}
|
||||
|
||||
window#waybar.hidden {
|
||||
opacity: 0.2;
|
||||
}
|
||||
|
||||
tooltip {
|
||||
background: @base;
|
||||
border: 2px solid @overlay0;
|
||||
}
|
||||
|
||||
#workspaceactions,
|
||||
#window,
|
||||
#clock,
|
||||
#monitors,
|
||||
#custom-mediaplayer,
|
||||
#custom-power-menu,
|
||||
#tray,
|
||||
#custom-rofi,
|
||||
#custom-caffeine,
|
||||
#custom-power {
|
||||
background-color: alpha(@base, 0.6);
|
||||
border-radius: 14px;
|
||||
padding: 3px 10px;
|
||||
}
|
||||
|
||||
#custom-rofi,
|
||||
#custom-caffeine,
|
||||
#custom-power {
|
||||
padding-left: 6px;
|
||||
padding-right: 6px;
|
||||
}
|
||||
|
||||
#custom-workspacenew,
|
||||
#workspaces button {
|
||||
padding: 0px 5px; /* Adjusted padding to reduce height */
|
||||
margin: 3px 5px; /* Reduced margin slightly */
|
||||
border-radius: 6px;
|
||||
color: @foreground;
|
||||
background-color: alpha(@base, 0);
|
||||
padding: 0px 5px;
|
||||
margin: 3px 3px;
|
||||
border-radius: 8px;
|
||||
color: @text;
|
||||
background-color: transparent;
|
||||
transition: all 0.3s ease-in-out;
|
||||
}
|
||||
|
||||
#workspaces button:hover {
|
||||
background: @surface0;
|
||||
background-color: alpha(@flavor, 0.3);
|
||||
}
|
||||
|
||||
#workspaces button.active {
|
||||
color: @foreground;
|
||||
background: @accent;
|
||||
color: @base;
|
||||
background: @flavor;
|
||||
}
|
||||
|
||||
#workspaces button.urgent {
|
||||
color: @base;
|
||||
background-color: @red;
|
||||
}
|
||||
|
||||
#workspaceactions {
|
||||
background-color: alpha(@base, 0.6);
|
||||
border-radius: 14px;
|
||||
padding: 3px 6px; /* Adjusted padding to reduce height */
|
||||
border: 2px solid @accent;
|
||||
padding-left: 3px;
|
||||
padding-right: 3px;
|
||||
border: 2px solid @flavor;
|
||||
}
|
||||
|
||||
#workspaces {
|
||||
@@ -74,105 +90,40 @@ tooltip {
|
||||
margin: 0px;
|
||||
}
|
||||
|
||||
#custom-workspacenew:hover {
|
||||
background-color: alpha(@accent, 0.3);
|
||||
}
|
||||
|
||||
#custom-workspacespecial:hover {
|
||||
background-color: alpha(@accent, 0.3);
|
||||
}
|
||||
|
||||
#window {
|
||||
background-color: alpha(@base, 0.6);
|
||||
color: @subtext1;
|
||||
border-radius: 14px;
|
||||
padding: 3px 6px; /* Reduced padding */
|
||||
margin: 2px;
|
||||
opacity: 1;
|
||||
transition: none; /* Disable background transition */
|
||||
}
|
||||
|
||||
window#waybar.empty #window{
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
#custom-mediaplayer {
|
||||
background-color: alpha(@base, 0.6);
|
||||
border-radius: 14px;
|
||||
padding: 3px 12px;
|
||||
color: @accent;
|
||||
}
|
||||
|
||||
#clock,
|
||||
#battery,
|
||||
#cpu,
|
||||
#memory,
|
||||
#disk,
|
||||
#temperature,
|
||||
#backlight,
|
||||
#network,
|
||||
#pulseaudio,
|
||||
#wireplumber,
|
||||
#custom-media,
|
||||
#mode,
|
||||
#idle_inhibitor,
|
||||
#mpd,
|
||||
#bluetooth,
|
||||
#custom-hyprPicker,
|
||||
#custom-power-menu,
|
||||
#custom-spotify,
|
||||
#custom-publicip,
|
||||
#custom-weather,
|
||||
#custom-weather.severe,
|
||||
#custom-weather.sunnyDay,
|
||||
#custom-weather.clearNight,
|
||||
#custom-weather.cloudyFoggyDay,
|
||||
#custom-weather.cloudyFoggyNight,
|
||||
#custom-weather.rainyDay,
|
||||
#custom-weather.rainyNight,
|
||||
#custom-weather.showyIcyDay,
|
||||
#custom-weather.snowyIcyNight,
|
||||
#custom-weather.default {
|
||||
background-color: alpha(@base, 0.6);
|
||||
border-radius: 14px;
|
||||
padding: 6px; /* Adjusted padding */
|
||||
}
|
||||
|
||||
#monitors {
|
||||
background-color: alpha(@base, 0.6);
|
||||
border-radius: 14px;
|
||||
padding: 6px;
|
||||
color: @flavor;
|
||||
}
|
||||
|
||||
#network.speed {
|
||||
background: transparent;
|
||||
color: @accent;
|
||||
padding: 0;
|
||||
color: @flavor;
|
||||
}
|
||||
|
||||
#custom-publicip {
|
||||
background: transparent;
|
||||
color: @peach;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
#temperature {
|
||||
background: transparent;
|
||||
color: @yellow;
|
||||
padding: 0px;
|
||||
}
|
||||
|
||||
#memory {
|
||||
color: @green;
|
||||
background: transparent;
|
||||
padding: 0px;
|
||||
}
|
||||
|
||||
#cpu {
|
||||
color: @teal;
|
||||
background: transparent;
|
||||
padding: 0px;
|
||||
}
|
||||
|
||||
#battery {
|
||||
background: transparent;
|
||||
color: @sapphire;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
#battery.charging,
|
||||
@@ -182,40 +133,18 @@ tooltip {
|
||||
}
|
||||
|
||||
#backlight {
|
||||
background: transparent;
|
||||
color: @blue;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
#wireplumber {
|
||||
background: transparent;
|
||||
color: @lavender;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
#custom-screenshot_t {
|
||||
background-color: alpha(@base, 0.6);
|
||||
border-radius: 14px;
|
||||
padding: 6px;
|
||||
}
|
||||
|
||||
#custom-spotify {
|
||||
background-color: alpha(@base, 0.6);
|
||||
border-radius: 14px;
|
||||
padding: 3px 12px;
|
||||
}
|
||||
|
||||
#tray {
|
||||
background-color: alpha(@base, 0.6);
|
||||
border-radius: 14px;
|
||||
padding: 6px; /* Adjusted padding */
|
||||
border: 2px solid @accent;
|
||||
border: 2px solid @flavor;
|
||||
}
|
||||
|
||||
#custom-power {
|
||||
background-color: alpha(@base, 0.6);
|
||||
border-radius: 14px;
|
||||
padding: 6px;
|
||||
border: 3px solid @maroon;
|
||||
}
|
||||
|
||||
@@ -224,9 +153,6 @@ tooltip {
|
||||
}
|
||||
|
||||
#custom-rofi {
|
||||
background-color: alpha(@base, 0.6);
|
||||
border-radius: 14px;
|
||||
padding: 6px;
|
||||
border: 3px solid @teal;
|
||||
}
|
||||
|
||||
@@ -235,9 +161,6 @@ tooltip {
|
||||
}
|
||||
|
||||
#custom-caffeine {
|
||||
background-color: alpha(@base, 0.6);
|
||||
border-radius: 14px;
|
||||
padding: 6px;
|
||||
border: 3px solid @yellow;
|
||||
}
|
||||
|
||||
@@ -249,119 +172,29 @@ tooltip {
|
||||
border: 3px solid @peach;
|
||||
}
|
||||
|
||||
#custom-storage {
|
||||
background-color: alpha(@base, 0.6);
|
||||
border-radius: 14px;
|
||||
padding: 6px;
|
||||
}
|
||||
|
||||
#custom-launcher {
|
||||
background-color: #1b242b;
|
||||
color: #6a92d7;
|
||||
border-radius: 7.5px;
|
||||
padding: 3px 6px; /* Adjusted padding */
|
||||
}
|
||||
|
||||
#custom-weather.severe {
|
||||
color: #eb937d;
|
||||
}
|
||||
|
||||
#custom-weather.sunnyDay {
|
||||
color: #c2ca76;
|
||||
}
|
||||
|
||||
#custom-weather.clearNight {
|
||||
color: #cad3f5;
|
||||
}
|
||||
|
||||
#custom-weather.cloudyFoggyDay,
|
||||
#custom-weather.cloudyFoggyNight {
|
||||
color: #c2ddda;
|
||||
}
|
||||
|
||||
#custom-weather.rainyDay,
|
||||
#custom-weather.rainyNight {
|
||||
color: #5aaca5;
|
||||
}
|
||||
|
||||
#custom-weather.showyIcyDay,
|
||||
#custom-weather.snowyIcyNight {
|
||||
color: #d6e7e5;
|
||||
}
|
||||
|
||||
#custom-weather.default {
|
||||
color: #dbd9d8;
|
||||
}
|
||||
|
||||
/* If workspaces is the leftmost module, omit left margin */
|
||||
.modules-left > widget:first-child > #workspaces {
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
/* If workspaces is the rightmost module, omit right margin */
|
||||
.modules-right > widget:last-child > #workspaces {
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
#pulseaudio {
|
||||
color: #7d9bba;
|
||||
}
|
||||
|
||||
#clock {
|
||||
color: #c8d2e0;
|
||||
border: 2px solid @accent;
|
||||
border: 2px solid @flavor;
|
||||
}
|
||||
|
||||
@keyframes blink {
|
||||
to {
|
||||
background-color: rgba(30, 34, 42, 0.5);
|
||||
color: #abb2bf;
|
||||
background-color: alpha(@red, 0.5);
|
||||
}
|
||||
}
|
||||
|
||||
#battery.critical:not(.charging) {
|
||||
color: @red;
|
||||
animation-name: blink;
|
||||
animation-duration: 0.5s;
|
||||
animation-duration: 1s;
|
||||
animation-timing-function: linear;
|
||||
animation-iteration-count: infinite;
|
||||
animation-direction: alternate;
|
||||
}
|
||||
|
||||
label:focus {
|
||||
background-color: #000000;
|
||||
}
|
||||
|
||||
#disk {
|
||||
background-color: #964b00;
|
||||
}
|
||||
|
||||
#bluetooth {
|
||||
color: @sapphire;
|
||||
}
|
||||
|
||||
#bluetooth.disconnected {
|
||||
color: @red;
|
||||
}
|
||||
|
||||
#network.disconnected {
|
||||
color: @red;
|
||||
}
|
||||
|
||||
#custom-media {
|
||||
background-color: #66cc99;
|
||||
color: #2a5c45;
|
||||
min-width: 100px;
|
||||
}
|
||||
|
||||
#custom-media.custom-spotify {
|
||||
background-color: #66cc99;
|
||||
}
|
||||
|
||||
#custom-media.custom-vlc {
|
||||
background-color: #ffa000;
|
||||
}
|
||||
|
||||
#temperature.critical {
|
||||
background-color: #eb4d4b;
|
||||
}
|
||||
@@ -373,37 +206,4 @@ label:focus {
|
||||
#tray > .needs-attention {
|
||||
-gtk-icon-effect: highlight;
|
||||
background-color: #eb4d4b;
|
||||
}
|
||||
|
||||
#idle_inhibitor {
|
||||
background-color: #2d3436;
|
||||
}
|
||||
|
||||
#idle_inhibitor.activated {
|
||||
background-color: #ecf0f1;
|
||||
color: #2d3436;
|
||||
}
|
||||
|
||||
#language {
|
||||
background: #00b093;
|
||||
color: #740864;
|
||||
padding: 0 0px;
|
||||
margin: 0 5px;
|
||||
min-width: 16px;
|
||||
}
|
||||
|
||||
#keyboard-state {
|
||||
background: #97e1ad;
|
||||
color: #000000;
|
||||
padding: 0 0px;
|
||||
margin: 0 5px;
|
||||
min-width: 16px;
|
||||
}
|
||||
|
||||
#keyboard-state > label {
|
||||
padding: 0 0px;
|
||||
}
|
||||
|
||||
#keyboard-state > label.locked {
|
||||
background: rgba(0, 0, 0, 0.2);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user