1st dotfiles commit

This commit is contained in:
ohinh 2026-08-03 17:03:40 +02:00
parent 39c99549d0
commit a57c4c068f
31 changed files with 8636 additions and 0 deletions

1
waybar/.~lock.style.css# Normal file
View file

@ -0,0 +1 @@
,root,ohTP,29.06.2026 09:24,file:///root/.config/libreoffice/4;

View file

@ -0,0 +1,216 @@
{
"layer": "top",
"position": "top",
"height": 30,
"icon-size": 40,
"reload-style-on-change": true,
"modules-left": [
"custom/shutdown",
"sway/workspaces",
"mpris"
],
"modules-center": ["custom/weather"],
"modules-right": [
"group/audio",
"group/hardware",
"battery",
"network",
"clock",
"idle_inhibitor",
"sway/hibernate"
],
"sway/workspaces": {
"format": "{icon}",
"format-icons": {
"1": "<span></span>",
"2": "<span></span>",
"3": "<span>󰎚</span>",
"4": "<span>󰭹</span>",
"5": "<span></span>",
"6": "<span></span>",
"7": "<span></span>",
"8": "<span>󰽉</span>",
},
"on-click": "activate"
},
"custom/shutdown": {
"format": "",
"tooltip": false,
"on-click": "systemctl poweroff"
},
"custom/hibernate": {
"format": "",
"tooltip": false,
"on-click": "systemctl hibernate"
},
"custom/weather": {
"format": "{}",
"interval": 900,
"exec": "~/.config/waybar/scripts/weather_module.py",
"tooltip": true,
"on-click": "exec ~/.config/waybar/scripts/weather_module.py",
"return-type": "json",
},
"mpris": {
"interval": 10,
"format": "{player_icon} {dynamic}",
"format-paused": "{status_icon} {artist} {title}",
"on-click-middle": "playerctl play-pause",
"on-click": "playerctl previous",
"on-click-right": "playerctl next",
"scroll-step": 5.0,
"on-scroll-up": "$HOME/.config/hypr/scripts/volume.sh --inc",
"on-scroll-down": "$HOME/.config/hypr/scripts/volume.sh --dec",
"smooth-scrolling-threshold": 1,
"tooltip": true,
"tooltip-format": "{status_icon} {dynamic}\nLeft Click: previous\nMid Click: Pause\nRight Click: Next",
"player-icons": {
"chromium": "",
"default": "",
"firefox": "",
"kdeconnect": "",
"mopidy": "",
"mpv": "󰐹",
"spotify": "",
"vlc": "󰕼",
},
"status-icons": {
"paused": "󰐎",
"playing": "",
"stopped": "",
},
"dynamic-order": ["artist", "title"],
"max-length": 50,
},
"group/audio": {
"orientation": "horizontal",
"modules": [
"pulseaudio",
"bluetooth"
]
},
"pulseaudio": {
"format": "{icon} {volume}%",
"format-bluetooth": "{icon} {volume}% ",
"format-muted": "",
"on-click": "pactl set-sink-mute @DEFAULT_SINK@ toggle"
},
"bluetooth": {
"format": "",
"format-disabled": "󰂲",
"format-connected": "",
"tooltip-format": "Devices connected: {num_connections}",
"on-click": "bluetooth toggle"
},
"group/hardware": {
"orientation": "horizontal",
"modules": [
"memory"
]
},
"memory": {
"interval": 2,
"format": "{icon} {percentage}%",
"rformat-icons": [
"󰾆",
"󰾅",
"󰓅"
]
},
"battery": {
"format": "{capacity}% {icon}",
"format-discharging": "{capacity}% {icon}",
"format-charging": "{capacity}% {icon}",
"format-plugged": " {capacity}%",
"format-icons": {
"charging": [
"󰢜",
"󰂆",
"󰂇",
"󰂈",
"󰢝",
"󰂉",
"󰢞",
"󰂊",
"󰂋",
"󰂅"
],
"default": [
"󰁺",
"󰁻",
"󰁼",
"󰁽",
"󰁾",
"󰁿",
"󰂀",
"󰂁",
"󰂂",
"󰁹"
]
},
"format-full": "󰂅 {capacity}%",
"tooltip-format-discharging": "{timeTo}",
"tooltip-format-charging": "{timeTo}",
"interval": 5,
"on-click": "exec tlp toggle",
"on-click-right": "notify-send -u low \"$(omarchy-battery-status)\"",
"states": {
"warning": 20,
"critical": 10
}
},
"network": {
"format-icons": [
"󰤯",
"󰤟",
"󰤢",
"󰤥",
"󰤨"
],
"format": "{icon}",
"format-wifi": "{icon}",
"format-ethernet": "󰈀",
"format-disconnected": "󰤮",
"tooltip-format-wifi": "{essid} ({frequency} GHz)\n⇣{bandwidthDownBytes} ⇡{bandwidthUpBytes}",
"tooltip-format-ethernet": "⇣{bandwidthDownBytes} ⇡{bandwidthUpBytes}",
"tooltip-format-disconnected": "Disconnected",
"interval": 3,
"spacing": 1,
"on-click": "exec foot nmtui"
},
"clock": {
"format": "{:%H:%M}",
"tooltip-format": "<span>{calendar}</span>",
"calendar": {
"mode": "month",
"mode-mon-col": 3,
"on-click-right": "mode",
"format": {
"month": "<span color='#ffead3'><b>{}</b></span>",
"weekdays": "<span color='#ffcc66'><b>{}</b></span>",
"today": "<span color='#ff6699'><b>{}</b></span>",
},
},
"timezone": "Europe/Paris"
},
"idle_inhibitor": {
"format": "{icon}",
"format-icons": {
"activated": "\uf06e",
"deactivated": "\uf070"
}
}
}

116
waybar/backup/style_ini.css Normal file
View file

@ -0,0 +1,116 @@
* {
font-family: "JetBrainsMono Nerd Font Propo";
font-size: 17px;
}
tooltip * {
background-color: #301934;
}
window#waybar {
background: transparent;
}
/*
window#waybar {
background: transparent;
transition-property: background-color;
transition-duration: 0.5s;
border-bottom: 0px solid #444;
}
*/
#mpris {
color: #ffffff;
border-radius: 4px;
margin: 0px 3px;
padding: 0px 12px;
}
#pulseaudio, #bluetooth, #clock, #network {
border-radius: 4px;
margin: 0px 3px;
padding: 0px 12px;
background-color: #200116;
color: #DABFFF;
}
#idle_inhibitor.deactivated {
margin: 0px 3px;
padding: 0px 12px;
background-color: #200200;
}
#group-hardware {
color: #200116;
}
#memory {
border-radius: 4px;
margin: 0px 3px;
padding: 0px 12px;
background-color: #200116;
color: #8FA6CB;
}
#battery {
border-radius: 4px;
margin: 0px 3px;
padding: 0px 12px;
background-color: #4C0827;
color: #8FA6CB;
}
#custom-weather {
border-radius: 4px;
margin: 0px 3px;
padding: 0px 12px;
color: #8FA6CB;
}
#custom-menu, #custom-shutdown, #custom-hibernate{
padding: 0px 3px;
padding-right: 16px;
padding-left: 14px;
color: #e06c75;
}
#custom-menu:hover, #custom-shutdown:hover, #custom-logout:hover {
background: #ffffff;
border-radius: 6px;
}
#workspaces button {
all: initial;
/* Remove GTK theme values (waybar #1351) */
min-width: 0;
/* Fix weird spacing in materia (waybar #450) */
box-shadow: inset 0 -3px transparent;
/* Use box-shadow instead of border so the text isn't offset */
padding: 0px 15px;
margin: 0px 3px;
border-radius: 4px;
color: #D6E3F8;
background-color: #8b0c99;
}
#workspaces button.active {
transition: all 50ms ease-out;
color: #dddddd;
background-color: #1B264F;
font-weight: bold;
border-bottom: 2px solid #ff0000; /* Optionnel : barre sous l'active */
}
#workspaces button:hover {
box-shadow: inherit;
text-shadow: inherit;
color: #1e1e2e;
background-color: #1B264F;
}
#workspaces button.urgent {
background-color: #f38ba8;
}

307
waybar/config Normal file
View file

@ -0,0 +1,307 @@
{
"reload_style_on_change": true,
"layer": "top",
"position": "top",
"mod": "dock",
"margin-top": 0,
"margin-left": 5,
"margin-right": 5,
"margin-bottom": 0,
"group/left0": {
"orientation": "inherit",
"modules": ["custom/debian"],
"margin-left": 4,
"margin-right": 4
},
"group/left1": {
"orientation": "inherit",
"modules": ["clock", "custom/notification-silencing-indicator", "custom/weather"]
},
"group/left2": {
"orientation": "inherit",
"modules": ["sway/workspaces"]
},
"group/left3": {
"orientation": "inherit",
"modules": [
"custom/screenrecording-indicator"
]
},
"group/left4": {
"orientation": "inherit",
"modules": []
},
"modules-left": [
"group/left0",
"group/left1",
"group/left2",
"group/left3",
"group/left4"
],
"modules-center": ["mpris"],
"modules-right": ["group/right1", "group/right2"],
"group/right1": {
"orientation": "inherit",
"modules": ["tray", "idle_inhibitor"]
},
"group/right2": {
"orientation": "inherit",
"modules": [
"backlight",
"bluetooth",
"pulseaudio",
"network",
"memory",
"battery"
],
},
"sway/workspaces": {
"format": "{icon}",
"format-icons": {
"01": "<span></span>",
"02": "<span></span>",
"03": "<span>󰎚</span>",
"04": "<span>󰭹</span>",
"05": "<span></span>",
"06": "<span></span>",
"07": "<span></span>",
"08": "<span>󰽉</span>",
},
"on-click": "activate"
},
"custom/debian": {
"format": "",
"on-click": "exec wlogout",
"on-click-right": "",
"tooltip-format": "Luniversité nest pas une usine à fabriquer des diplômes, à la façon des usines à saucisses qui fabriquent des saucisses. \n\nCest le lieu où une chance est donnée à des hommes de devenir qui ils sont vraiment. \n\nSimon Leys"
},
"idle_inhibitor": {
"format": "{icon}",
"format-icons": {
"activated": "󰈈",
"deactivated": "󰈉"
}
},
"custom/notification-silencing-indicator": {
"on-click": "omarchy-toggle-notification-silencing",
"exec": "$OMARCHY_PATH/default/waybar/indicators/notification-silencing.sh",
"signal": 10,
"return-type": "json"
},
"sway/window": {
"format": "{title}",
"max-length": 30,
"rewrite": {
" - ": "", // if no window is focused, a single dash is displayed, this removes it
"(.*chrome)...(.*)": "  $1 ",
"(.*zen)...(.*)": "  $1 ",
"(.*foot)...(.*)": "  $2 ",
"(.*code) - (.*)": " 󰨞 $1 ",
"^.*btop( .*|$)": " 󰧨 BTOP $1 ",
"(.*) - Spotify": "  $1 ",
"(.*) - BeeperTexts": " 󰻞 $1 ",
"(.*Discord)...(.*).. (.*)": "  $2 ",
"(.*) - org.gnome.Nautilus": " 󰣆 $1 ",
"(.*Steam)...(.*)": "  $1",
"(.*imv)...(.*).. (.*)": "  $2",
"(.*) - com.obsproject.Studio": "  $1 "
}
},
"memory": {
"interval": 5,
"format": " {icon} {percentage:02}%",
"format-icons": [
"󰾆",
"󰾅",
"󰓅"
]
},
"clock": {
"format": " {:%H:%M %a} ",
"format-alt": " {:%d/%m/%Y %H:%M:%S}",
"tooltip-format": "<span>{calendar}</span>",
"calendar": {
"mode": "month",
"mode-mon-col": 3,
"on-click-right": "mode",
"format": {
"month": "<span color='#ffead3'><b>{}</b></span>",
"weekdays": "<span color='#ffcc66'><b>{}</b></span>",
"today": "<span color='#ff6699'><b>{}</b></span>"
}
},
"on-click-right": "omarchy-launch-floating-terminal-with-presentation omarchy-tz-select"
},
"network": {
"format-icons": [
"󰤯",
"󰤟",
"󰤢",
"󰤥",
"󰤨"
],
"format": "{icon}",
"format-wifi": "{icon}",
"format-ethernet": "󰈀",
"format-disconnected": "󰤮",
"tooltip-format-wifi": "{essid} ({frequency} GHz)\n⇣{bandwidthDownBytes} ⇡{bandwidthUpBytes}",
"tooltip-format-ethernet": "⇣{bandwidthDownBytes} ⇡{bandwidthUpBytes}",
"tooltip-format-disconnected": "Disconnected",
"interval": 3,
"spacing": 1,
"on-click": "exec foot nmtui"
},
"battery": {
"format": "{capacity}% {icon}",
"format-discharging": "{icon} {capacity}%",
"format-charging": "{icon} {capacity}%",
"format-plugged": " {capacity} %",
"format-icons": {
"charging": [
"󰢜",
"󰂆",
"󰂇",
"󰂈",
"󰢝",
"󰂉",
"󰢞",
"󰂊",
"󰂋",
"󰂅"
],
"default": [
"󰁺",
"󰁻",
"󰁼",
"󰁽",
"󰁾",
"󰁿",
"󰂀",
"󰂁",
"󰂂",
"󰁹"
]
},
"format-full": "󰂅",
"tooltip-format-discharging": "{timeTo}",
"tooltip-format-charging": "{timeTo}",
"interval": 5,
"on-click": "exec tlp toggle",
"on-click-right": "notify-send -u low \"$(omarchy-battery-status)\"",
"states": {
"warning": 20,
"critical": 10
}
},
"bluetooth": {
"format": "",
"format-disabled": "󰂲",
"format-connected": "",
"tooltip-format": "Devices connected: {num_connections}",
"on-click": "bluetooth toggle"
},
"backlight": {
"device": "intel_backlight",
"format": "{icon}",
"tooltip-format": "{percent}%",
"format-icons": [
"🌑",
"🌘",
"🌗",
"🌖",
"🌕"
]
},
"custom/weather": {
"format": "{}",
"interval": 900,
"exec": "~/.config/waybar/scripts/weather_module.py",
"tooltip": true,
"on-click": "exec ~/.config/waybar/scripts/weather_module.py",
"return-type": "json",
},
"pulseaudio": {
"format": "{icon} {volume}%",
"format-muted": "󰖁",
"format-icons": {
"default": [
"󰕿",
"󰖀",
"󰕾",
],
},
"on-click": "amixer sset 'Master' toggle",
"scroll-step": 3,
},
"tray": {
"icon-size": 12,
"spacing": 10
},
"mpris": {
"ignored-players": [],
"interval": 10,
"format": "{player_icon} {dynamic}",
"format-paused": "{status_icon} {artist} {title}",
"on-click-middle": "playerctl play-pause",
"on-click": "playerctl previous",
"on-click-right": "playerctl next",
"scroll-step": 5.0,
"on-scroll-up": "",
"on-scroll-down": "",
"smooth-scrolling-threshold": 1,
"tooltip": true,
"tooltip-format": "{status_icon} {dynamic}\nLeft Click: previous\nMid Click: Pause\nRight Click: Next",
"player-icons": {
"chromium": "",
"default": "",
"firefox": "",
"kdeconnect": "",
"mopidy": "",
"mpv": "󰐹",
"vlc": "󰕼",
},
"status-icons": {
"paused": "󰐎",
"playing": "",
"stopped": "",
},
"dynamic-order": ["artist", "title"],
"max-length": 50,
},
"custom/screenrecording-indicator": {
"on-click": "omarchy-capture-screenrecording",
"exec": "$OMARCHY_PATH/default/waybar/indicators/screen-recording.sh",
"signal": 8,
"return-type": "json"
},
}

26
waybar/rose-pine.css Normal file
View file

@ -0,0 +1,26 @@
/*
* Variant: Rosé Pine
* Maintainer: DankChoir
*/
@define-color base #191724;
@define-color surface #1f1d2e;
@define-color overlay #26233a;
@define-color muted #6e6a86;
@define-color subtle #908caa;
@define-color text #e0def4;
@define-color love #eb6f92;
@define-color gold #f6c177;
@define-color rose #ebbcba;
@define-color pine #31748f;
@define-color foam #9ccfd8;
@define-color iris #c4a7e7;
@define-color plum #DDA0DD;
@define-color purple #341731;
@define-color blue #0a8cf0;
@define-color highlightLow #21202e;
@define-color highlightMed #403d52;
@define-color highlightHigh #524f67;

59
waybar/scripts/weather.sh Executable file
View file

@ -0,0 +1,59 @@
#!/bin/bash
# --- CONFIGURATION ---
API_KEY="00e744eb427e575e1e8ed79f31f770fb" # Paste your key here
LAT="48.856613" # Replace with your Latitude
LON="2.352222" # Replace with your Longitude
UNITS="metric" # Use "metric" for Celsius, "imperial" for Fahrenheit
# ---------------------
# Validate configuration
if [ -z "$LAT" ] || [ -z "$LON" ] || [ -z "$UNITS" ] || [ -z "$API_KEY" ]; then
echo "Config missing"
exit 1
fi
# Fetch the weather data
RESPONSE=$(curl -s "[https://api.openweathermap.org/data/2.5/weather?lat=$](https://api.openweathermap.org/data/2.5/weather?lat=$){LAT}&lon=${LON}&appid=${API_KEY}&units=${UNITS}")
# Check if curl failed to get a response
if [ -z "$RESPONSE" ]; then
echo "No connection"
exit 1
fi
# 1. Get the Temperature
# We use jq's built-in 'round' function to avoid ugly decimals (e.g., 71.6°F becomes 72°F)
TEMP=$(echo "$RESPONSE" | jq '.main.temp | round')
# 2. Get the Description (for the tooltip)
DESC=$(echo "$RESPONSE" | jq -r '.weather[0].description')
# 3. Get the Icon Code and map it to an emoji
ICON_CODE=$(echo "$RESPONSE" | jq -r '.weather[0].icon')
case $ICON_CODE in
"01d") ICON="☀️";; # Clear sky day
"01n") ICON="🌙";; # Clear sky night
"02d") ICON="⛅";; # Few clouds day
"02n") ICON="☁️";; # Few clouds night
"03d"|"03n") ICON="☁️";; # Scattered clouds
"04d"|"04n") ICON="☁️";; # Broken clouds
"09d"|"09n") ICON="🌧️";; # Shower rain
"10d") ICON="🌦️";; # Rain day
"10n") ICON="🌧️";; # Rain night
"11d"|"11n") ICON="⛈️";; # Thunderstorm
"13d"|"13n") ICON="❄️";; # Snow
"50d"|"50n") ICON="🌫️";; # Mist
*) ICON="❓";; # Default
esac
# Determine unit label
if [ "$UNITS" = "metric" ]; then
LABEL="°C"
else
LABEL="°F"
fi
# Final JSON output for Waybar
echo "{\"text\": \"${ICON} ${TEMP}${LABEL}\", \"tooltip\": \"${DESC}\"}"

View file

@ -0,0 +1,83 @@
#!/usr/bin/env python3
import requests
import json
import sys
import os
# CONFIGURATION
import requests
import json
import sys
import os
# CONFIGURATION
API_KEY = "ebb6d6ea53be021675e3276f7fe8cd77" # Remplacez par votre clé OpenWeatherMap
CITY = "Paris" # Ville par défaut si non précisée
UNITS = "metric" # "metric" pour °C, "imperial" pour °F
LANG = "fr" # "fr" pour français, "en" pour anglais
def get_weather():
if not API_KEY or API_KEY == "VOTRE_CLE_API_ICI":
return {"text": "❌ Clé API manquante", "class": "weather-error", "tooltip": "Configurez la clé API dans le script."}
try:
url = f"https://api.openweathermap.org/data/2.5/weather?q={CITY}&appid={API_KEY}&units={UNITS}&lang={LANG}"
response = requests.get(url, timeout=5)
if response.status_code == 401:
return {"text": "❌ Clé API invalide", "class": "weather-error", "tooltip": "Erreur 401: Vérifiez votre clé OpenWeatherMap."}
if response.status_code == 404:
return {"text": "❌ Ville introuvable", "class": "weather-error", "tooltip": f"La ville '{CITY}' n'a pas été trouvée."}
if response.status_code != 200:
return {"text": "⚠️ Erreur API", "class": "weather-error", "tooltip": f"Code {response.status_code}: {response.text}"}
data = response.json()
# Extraction des données
temp = data["main"]["temp"]
description = data["weather"][0]["description"].capitalize()
icon_code = data["weather"][0]["icon"]
wind_speed = data["wind"]["speed"]
# Mapping des icônes OpenWeather vers les icônes Waybar standard (ou Unicode)
# OpenWeather utilise des codes comme "10d", "01n". Waybar utilise souvent des noms ou des emojis.
# Ici, nous utilisons des emojis pour une compatibilité universelle.
icon = "☁️"
if "01" in icon_code:
icon = "☀️" if "d" in icon_code else "🌙"
elif "02" in icon_code:
icon = "" if "d" in icon_code else "🌥️"
elif "03" in icon_code or "04" in icon_code:
icon = "☁️"
elif "09" in icon_code or "10" in icon_code:
icon = "🌧️"
elif "11" in icon_code:
icon = "⛈️"
elif "13" in icon_code:
icon = "❄️"
elif "50" in icon_code:
icon = "🌫️"
# Formatage du texte
text = f"{icon} {int(temp)}°C"
tooltip = f"{description}\nVent: {wind_speed} m/s\nVille: {data['name']}, {data['sys']['country']}"
return {
"text": text,
"tooltip": tooltip,
"class": "weather-good" if temp > 10 else "weather-cold" if temp < 0 else "weather-warm"
}
except requests.exceptions.Timeout:
return {"text": "⏱️ Timeout", "class": "weather-error", "tooltip": "La requête a expiré."}
except requests.exceptions.ConnectionError:
return {"text": "🚫 Pas de réseau", "class": "weather-error", "tooltip": "Impossible de se connecter à OpenWeatherMap."}
except Exception as e:
return {"text": "❌ Erreur", "class": "weather-error", "tooltip": str(e)}
if __name__ == "__main__":
result = get_weather()
print(json.dumps(result))
sys.stdout.flush()

234
waybar/style.css Normal file
View file

@ -0,0 +1,234 @@
@import "./rose-pine.css";
/* --- Global-Settings ---*/
* {
font-family: 'JetBrainsMono Nerd Font';
font-size: 16px;
font-weight: 600;
min-height: 0px;
border-radius:7px;
}
/* --- Waybar ---*/
window#waybar {
background-color: transparent;
transition-property: background-color;
transition-duration: .5s;
}
#waybar > box {
margin: 2px 6px;
padding: 0px;
background-color: @base;
border: 0px solid alpha(@highlightMed, 0.3);
box-shadow:
inset 3px 0 0 0px @iris,
inset -3px 0 0 0px @iris,
0px 1px 2px rgba(0, 0, 0, 0.6);
}
/* --- Single Module Config's ---*/
#left0, #left1, #left2, #left3, #left4,
#right1, #right2,
.modules-center {
margin: 0px 2px;
padding: 0 5px;
transition: all 0.2s ease-in-out;
}
#left0 {
background-color: @overlay;
border-radius: 1px;
}
#left1 {
background-color: @overlay;
border-radius: 7px;
}
#left2 {
background-color: @overlay;
box-shadow: inset 0 -3px 0 0 @love;
padding: 0px;
}
#left3 {
background-color: @surface;
box-shadow: inset 0 -3px 0 0 @pine;
}
.modules-center {
color: @plum;
background-color: @surface;
box-shadow: inset 0 -3px 0 0 @foam;
padding: 0px;
}
#right1 {
background-color: @surface;
box-shadow: inset 0 -3px 0 0 @subtle;
}
#right2 {
background-color: @overlay;
}
window#waybar.empty #window {
background: transparent;
background-color: transparent;
border: none;
border-radius: 0;
color: transparent;
padding: 0;
margin: 0;
}
#waybar.empty .modules-center {
opacity: 0;
}
#mpris {
background-color: @surface;
box-shadow: inset 0 -3px 0 0 @rose;
color: @rose;
}
#workspaces {
background-color: transparent;
padding: 0px;
margin: 0px;
}
#workspaces button {
color: @subtle;
padding: 0 8px;
margin: 2px 2px;
transition: all 0.2s ease;
opacity: 0.75;
}
#workspaces button.active {
color: @love;
}
#workspaces button.empty {
color: @muted;
opacity: 0.2;
}
#workspaces button.empty.active {
color: @rose;
opacity: 1;
}
#workspaces button:hover {
background-color: alpha(@highlightMed, 0.5);
color: @text;
}
#workspaces button.urgent {
color: @base;
background-color: @love;
}
/* --- General Modules --- */
#tray,
#window,
#cpu,
#clock,
#battery,
#network,
#memory,
#backlight,
#bluetooth,
#pulseaudio,
#custom-weather,
#custom-update,
#idle_inhibitor,
#custom-idle-indicator,
#custom-notification-silencing-indicator,
#custom-debian,
#custom-screenrecording-indicator,
#custom-updatespacman {
min-width: 16px;
margin: 0 2px;
padding: 0 4px;
}
#custom-update {
padding-left: 3px;
}
/* --- Module-Group-Colors --- */
#custom-debian { color: @gold; }
#clock, #custom-weather { color: @text; }
#bluetooth { color: @rose; }
#memory { color: @iris; }
#pulseaudio { color: @love; }
#network { color: @foam; }
#battery { color: @pine; }
#backlight { color: @gold; }
#idle_inhibitor.activated { color: @gold; }
#idle_inhibitor.deactivated { color: @muted; }
#tray { color: @muted; }
#custom-voxtype {
min-width: 12px;
margin: 0 0 0 7.5px;
}
#custom-voxtype.recording,
#custom-idle-indicator.active,
#custom-notification-silencing-indicator.active {
color: @love;
}
#custom-idle-indicator,
#custom-notification-silencing-indicator {
min-width: 12px;
margin-left: 0;
margin-right: 0;
font-size: 12px;
padding-bottom: 1px;
}
/* Specific Module */
#tray > .needs-attention {
-gtk-icon-effect: highlight;
background-color: @transparent;
}
.hidden {
opacity: 0;
}
tooltip * {
background-color: @purple;
border: 0px solid @highlightHigh;
border-radius: 3px;
}
tooltip label {
color: @text;
padding: 4px;
}
/* Specific animation Module */
#custom-screenrecording-indicator.active {
color: @rose;
animation: blink-recording 0.5s infinite alternate linear;
}
@keyframes blink-recording {
to { color: transparent; }
}

234
waybar/style.css.save Normal file
View file

@ -0,0 +1,234 @@
@import "./rose-pine.css";
/* --- Global-Settings ---*/
* {
font-family: 'JetBrainsMono Nerd Font';
font-size: 18px;
font-weight: 600;
min-height: 0px;
border-radius:7px;
}
/* --- Waybar ---*/
window#waybar {
background-color: transparent;
transition-property: background-color;
transition-duration: .5s;
}
#waybar > box {
margin: 2px 6px;
padding: 0px;
background-color: @base;
border: 0px solid alpha(@highlightMed, 0.3);
box-shadow:
inset 3px 0 0 0px @iris,
inset -3px 0 0 0px @iris,
0px 1px 2px rgba(0, 0, 0, 0.6);
}
/* --- Single Module Config's ---*/
#left0, #left1, #left2, #left3, #left4,
#right1, #right2,
.modules-center {
margin: 0px 2px;
padding: 0 5px;
transition: all 0.2s ease-in-out;
}
#left0 {
background-color: @overlay;
border-radius: 1px;
}
#left1 {
background-color: @overlay;
border-radius: 7px;
}
#left2 {
background-color: @overlay;
box-shadow: inset 0 -3px 0 0 @love;
padding: 0px;
}
#left3 {
background-color: @surface;
box-shadow: inset 0 -3px 0 0 @pine;
}
.modules-center {
color: @plum;
background-color: @surface;
box-shadow: inset 0 -3px 0 0 @foam;
padding: 0px;
}
#right1 {
background-color: @surface;
box-shadow: inset 0 -3px 0 0 @subtle;
}
#right2 {
background-color: @overlay;
}
window#waybar.empty #window {
background: transparent;
background-color: transparent;
border: none;
border-radius: 0;
color: transparent;
padding: 0;
margin: 0;
}
#waybar.empty .modules-center {
opacity: 0;
}
#mpris {
background-color: @surface;
box-shadow: inset 0 -3px 0 0 @rose;
color: @rose;
}
#workspaces {
background-color: transparent;
padding: 0px;
margin: 0px;
}
#workspaces button {
color: @subtle;
padding: 0 8px;
margin: 2px 2px;
transition: all 0.2s ease;
opacity: 0.75;
}
#workspaces button.active {
color: @love;
}
#workspaces button.empty {
color: @muted;
opacity: 0.2;
}
#workspaces button.empty.active {
color: @rose;
opacity: 1;
}
#workspaces button:hover {
background-color: alpha(@highlightMed, 0.5);
color: @text;
}
#workspaces button.urgent {
color: @base;
background-color: @love;
}
/* --- General Modules --- */
#tray,
#window,
#cpu,
#clock,
#battery,
#network,
#memory,
#backlight,
#bluetooth,
#pulseaudio,
#custom-weather,
#custom-update,
#idle_inhibitor,
#custom-idle-indicator,
#custom-notification-silencing-indicator,
#custom-debian,
#custom-screenrecording-indicator,
#custom-updatespacman {
min-width: 16px;
margin: 0 2px;
padding: 0 4px;
}
#custom-update {
padding-left: 3px;
}
/* --- Module-Group-Colors --- */
#custom-debian { color: @gold; }
#clock { color: @text; }
#bluetooth { color: @rose; }
#memory { color: @iris; }
#pulseaudio { color: @love; }
#network { color: @foam; }
#battery { color: @pine; }
#backlight { color: @gold; }
#idle_inhibitor.activated { color: @gold; }
#idle_inhibitor.deactivated { color: @muted; }
#tray { color: @muted; }
#custom-voxtype {
min-width: 12px;
margin: 0 0 0 7.5px;
}
#custom-voxtype.recording,
#custom-idle-indicator.active,
#custom-notification-silencing-indicator.active {
color: @love;
}
#custom-idle-indicator,
#custom-notification-silencing-indicator {
min-width: 12px;
margin-left: 0;
margin-right: 0;
font-size: 12px;
padding-bottom: 1px;
}
/* Specific Module */
#tray > .needs-attention {
-gtk-icon-effect: highlight;
background-color: @transparent;
}
.hidden {
opacity: 0;
}
tooltip * {
background-color: @purple;
border: 0px solid @highlightHigh;
border-radius: 3px;
}
tooltip label {
color: @text;
padding: 4px;
}
/* Specific animation Module */
#custom-screenrecording-indicator.active {
color: @rose;
animation: blink-recording 0.5s infinite alternate linear;
}
@keyframes blink-recording {
to { color: transparent; }
}