diff --git a/stow/waybar/.config/waybar/config b/stow/waybar/.config/waybar/config deleted file mode 100644 index 3b1a053..0000000 --- a/stow/waybar/.config/waybar/config +++ /dev/null @@ -1,42 +0,0 @@ -// -// ~/.config/waybar/config -// - -[{ - "name": "toggle", - - "mode": "hide", - "ipc": true, - - "position": "top", - "height": 25, - "spacing": 4, - "margin": "-25px 0 0 0", // Show this bar on top of the other one, seemingly the "same" one. - - "custom/sep": { - "format": "\uf142" - }, - - "include": [ - // Import modules (!) - "~/.config/waybar/modules.json", -// "~/.config/waybar/default.json" - "~/.config/waybar/left.json" - ], - -}, - -{ - "name": "keep", - "position": "top", - "height": 25, - "modules-left": ["sway/mode"], - "modules-center": ["clock"], - "modules-right": ["privacy", "keyboard-state"], - - "include": [ - // Import modules (!) - "~/.config/waybar/modules.json" - ], -}] - diff --git a/stow/waybar/.config/waybar/config.jsonc b/stow/waybar/.config/waybar/config.jsonc new file mode 100644 index 0000000..2a4f8a4 --- /dev/null +++ b/stow/waybar/.config/waybar/config.jsonc @@ -0,0 +1,60 @@ +/* * * * * * * * * * * * * * * * * + * * + * ~/.config/waybar/config.jsonc * + * * + * * * * * * * * * * * * * * * * */ + +[ + /* Always visible, contains less information */ + { + "name": "keep", + "position": "top", + "height": 26, + "modules-left": [ + "group/mode" + ], + "modules-center": [ + "clock#center" + ], + "modules-right": [ + "keyboard-state#numlock", + "keyboard-state#capslock", + "privacy" + ], + "include": [ + "~/.config/waybar/modules.json" + ] + }, + + /* Toggle this bar, contains all information */ + { + "name": "toggle", + "mode": "hide", + "ipc": true, + "position": "top", + "height": 26, + /* Show this bar on top of the other one, seemingly replacing it. */ + "margin": "-26px 0 0 0", + "modules-left": [ + "custom/meta", + "sway/window", + "group/workspaces", + "custom/scratchpad-indicator", + ], + "modules-center": [ + "mpris" + ], + "modules-right": [ + "privacy", + "tray", + "group/control-center", + "group/network", + "pulseaudio", + "group/power", + "clock#bar" + ], + "include": [ + "~/.config/waybar/modules.json" + ] + } +] diff --git a/stow/waybar/.config/waybar/left.json b/stow/waybar/.config/waybar/left.json index 8ab0639..86b9a00 100644 --- a/stow/waybar/.config/waybar/left.json +++ b/stow/waybar/.config/waybar/left.json @@ -2,16 +2,15 @@ "modules-left": [ "sway/workspaces", "custom/scratchpad-indicator", - "mpris", "group/system" ], "modules-right": [ - "group/hardware", + "tray", + "sway/language", "bluetooth", "network", "pulseaudio", "group/battery", - "custom/sep", - "tray" + "mpris" ] } diff --git a/stow/waybar/.config/waybar/modern.css b/stow/waybar/.config/waybar/modern.css new file mode 100644 index 0000000..35ce570 --- /dev/null +++ b/stow/waybar/.config/waybar/modern.css @@ -0,0 +1,80 @@ +@define-color foreground rgb(202, 202, 202); +@define-color background rgb( 3, 3, 3); + +@define-color highlight-background alpha(@foreground, 0.4); + +@define-color accent #00897b; +@define-color white #ecf0f1; +@define-color warning-red #eb4d4b; + +* { + font-family: letter, "Font Awesome 6 Free", font-awesome, monospace; + font-size: 13px; + font-weight: 600; +} + +window#waybar { + border: none; + color: @white; + + transition-property: background-color; + transition-duration: .5s; +} + +window#waybar.keep { + background-color: @transparent; +} + +window#waybar.toggle { + background-color: alpha(@foreground, 0.4); +} + +tooltip { + background: alpha(@background, 0.8); +} +tooltip label { + color: @white; +} + +#workspaces button { + border: none; + padding: 0 8px; + border-radius: 5px; + animation: ws_normal 20s ease-in-out 1; +} + +#mode, +#workspaces button.focused { + background-color: alpha(@background, 0.2); +} + +#workspaces button:hover { + background-color: alpha(@background, 0.2); +} + +#battery, +#disk, +#bluetooth, +#clock, +#custom-browser, +#custom-scratchpad-indicator, +#custom-system-hibernate, #custom-system-lock, #custom-system-reboot, #custom-system-shutdown, #custom-system-sleep, +#custom-toggle-light-dark, +#custom-toggle-night-light, +#custom-toggle-notifications, +#cpu, +#idle_inhibitor, +#keyboard-state, +#memory, +#mpris, +#network, +#sway-language, +#sway-window, +#power-profiles-daemon, +#privacy, +#pulseaudio, +#temperature, +#tray { + color: @white; +} + diff --git a/stow/waybar/.config/waybar/modules.json b/stow/waybar/.config/waybar/modules.json index 026ad07..21b3534 100644 --- a/stow/waybar/.config/waybar/modules.json +++ b/stow/waybar/.config/waybar/modules.json @@ -2,148 +2,224 @@ "battery": { "format": "{capacity}% {icon}", "format-alt": "{time} {icon}", - "format-charging": "{capacity}% \uf0e7 {icon}", - "format-icons": ["\uf244", "\uf243", "\uf242", "\uf241", "\uf240"], + "format-charging": "{capacity}% \ue55b", /*  */ "format-plugged": "{capacity}% \ue55c", - "states": { - "warning": 30, - "critical": 15 + "format-icons": [ + "\uf244", /*  */ + "\uf243", /*  */ + "\uf242", /*  */ + "\uf241", /*  */ + "\uf240" /*  */ + ], + "states": { + "warning": 25, + "critical": 12 } }, - "disk": { - "interval": 30, - "format": "{percentage_used}% \uf0a0", - "on-click": "kitty -e duf /", - "path": "/", - "tooltip-format": "{used} used out of {total} on {path} ({percentage_free}% or {free} free)" - }, - "bluetooth": { - "format-disabled": "\uf294", - "format-off": "\uf294", - "format-on": "\uf294", - "format-connected": "\uf294c", + "format-disabled": "\uf294", /*  */ + "format-off": "\uf294", /*  */ + "format-on": "\uf294", /*  */ + "format-connected": "\uf294c", /* c */ "max-length": 10.3, "on-click": "bluetoothctl power $( bluetoothctl show | sed -n 's/\\s*Powered: \\(yes\\|no\\)/\\1/p' | sed 's/yes/off/;s/no/on/' )", - "on-click-right": "kitty -e bluetoothctl", "tooltip-format": "{status}", "tooltip-format-on": "{status}, no devices connected", "tooltip-format-connected": "{status} ({num_connections}):\n{device_enumerate}", "tooltip-format-enumerate-connected": "{device_alias} ({device_address})", "tooltip-format-enumerate-connected-battery": "{device_alias}\t{device_address}\t{device_battery_percentage}" }, - - "clock": { + + "clock#center": { "format": "{:%H:%M}", - "format-alt": "{:%d/%m/%Y %H:%M}", + "format-alt": "{:%a %b %d, %Y, %R}", "timezone": "Europe/Brussels", - "tooltip-format": "{:%Y %B}\n{calendar}" + "tooltip-format": "{:%Y %B}\n{calendar}", + "calendar": { + "mode": "month", + "week-pos": "left", + "format": { + /* Highlight todays date. */ + "today": "{}" + } + }, + "actions": { + "on-click": "mode" + } }, - "custom/browser": { - "format": "\uf120", - "on-click": "dmenu_run", - "tooltip-format": "Launch an application" + "clock#bar": { + "format": "{:%a %b %d, %R}", + "timezone": "Europe/Brussels", + "tooltip-format": "{:%Y %B}\n{calendar}", + "calendar": { + "mode-mon-col": 3, + "on-scroll": 1, + "format": { + /* Highlight today's date. */ + "today": "{}" + } + }, + "actions": { + "on-click": "mode" + } }, - "custom/light-dark-toggle": { - "exec": "bash ${SCRIPT_DIR}/toggle-light-dark.sh -g", - "exec-on-event": true, - "on-click": "bash ${SCRIPT_DIR}/toggle-light-dark.sh", - // "format": "\uf042 ", - "format": "{icon}", - "format-icons": [ - "\uf185", - "\uf111" - ], - "tooltip": true, - "tooltip-format": "Toggle between light and dark mode" + "custom/control-center": { + "format": "\uf085", /*  */ + "tooltip": false }, - "custom/keyboard-switch": { - "format": "\uf11c", - "on-click": "swaymsg input type:keyboard xkb_switch_layout next", - "tooltip-format": "Toggle keyboard layouts", - "tooltip": true - }, - - "custom/night-light-toggle": { - "on-click": "bash ${SCRIPT_DIR}/sunset.sh", - "format": "\uf0eb ", - "tooltip": true, - "tooltip-format": "Toggle night-light on or off" + "custom/meta": { + "format": "\uf17c", /*  */ + "tooltip": false, + "on-click": "dmenu_run" }, "custom/scratchpad-indicator": { "interval": 3, "return-type": "json", "exec": "swaymsg -t get_tree | jq --unbuffered --compact-output '(recurse(.nodes[]) | select(.name == \"__i3_scratch\") | .focus) as $scratch_ids | [.. | (.nodes? + .floating_nodes?) // empty | .[] | select(.id |IN($scratch_ids[]))] as $scratch_nodes | if ($scratch_nodes|length) > 0 then { text: \"\\($scratch_nodes | length)\", tooltip: $scratch_nodes | map(\"\\(.app_id // .window_properties.class) (\\(.id)): \\(.name)\") | join(\"\\n\") } else empty end'", - "format": "{} \uf2d2", + "format": "\uf2d2 {}", "on-click": "exec swaymsg 'scratchpad show'", "on-click-right": "exec swaymsg 'move scratchpad'" }, "custom/system-lock": { - "format": "\uf09c", + "format": "\uf09c", /*  */ "tooltip": true, "tooltip-format": "Lock device", "on-click": "swaylock -f" }, "custom/system-sleep": { - "format": "\uf186", + "format": "\uf186", /*  */ "tooltip": true, "tooltip-format": "Put device to sleep", "on-click": "swaylock -f; systemctl suspend" }, "custom/system-hibernate": { - "format": "\uf2dc", + "format": "\uf2dc", /*  */ "tooltip": true, "tooltip-format": "Hibernate device", "on-click": "swaylock -f; systemctl hibernate" }, "custom/system-reboot": { - "format": "\uf0e2", + "format": "\uf0e2", /*  */ "tooltip": true, "tooltip-format": "Reboot device", "on-click": "systemctl reboot" }, "custom/system-shutdown": { - "format": "\uf011", + "format": "\uf011", /*  */ "tooltip": true, "tooltip-format": "Shutdown device", "on-click": "systemctl poweroff -i" }, - "custom/toggle-notifications": { - "on-click": "bash ${SCRIPT_DIR}/do-not-disturb.sh", - "tooltip-format": "Toggle notifications", - "format": "\uf1f6 ", - "tooltip": true - }, - - "cpu": { - "format": "{usage}% \uf2db", - "on-click": "foot -e htop", + "custom/toggle-light-dark": { + "exec": "sleep 1 && bash ~/projects/sisyphus/scripts/toggle-light-dark.sh -g", + "return-type": "json", + "on-click": "bash ~/projects/sisyphus/scripts/toggle-light-dark.sh", + "format": "{icon}", + "format-icons": { + "default": "\uf185", + "prefer-dark": "\uf005" + }, "tooltip": true }, - "group/battery": { + "custom/toggle-notifications": { + "exec": "sleep 6 && bash ~/projects/sisyphus/scripts/toggle-notifications.sh -g", + "return-type": "json", + "on-click": "bash ~/projects/sisyphus/scripts/toggle-notifications.sh", + "format": "NOTIS {icon}", + "format-icons": { + "normal": "NRML", + "paused": "PAISED" + }, + "tooltip": true + }, + + "custom/toggle-tailscale": { + "exec": "sleep 2 && bash ~/projects/sisyphus/scripts/toggle-tailscale.sh -g", + "return-type": "json", + "on-click": "bash ~/projects/sisyphus/scripts/toggle-tailscale.sh", + "format": "{icon}", + "format-icons": { + "disconnected": "\ue50b", + "connected": "\ue509", + }, + "tooltip": true + }, + + "group/control-center": { "orientation": "inherit", "modules": [ + "custom/control-center", + "group/language", + /* "hyprland/language", "sway/language", */ + "custom/toggle-notifications", + "custom/toggle-light-dark", + "bluetooth" + ], + "drawer": { + "transition-duration": 500, + "transition-left-to-right": false, + "children-class": "drawer-child" + } + }, + + "group/language": { + "orientation": "inherit", + "modules": [ + "hyprland/language", + "sway/language" + ] + }, + + "group/mode": { + "orientation": "inherit", + "modules": [ + "hyprland/submap", + "sway/mode" + ] + }, + + "group/network": { + "orientation": "inherit", + "modules": [ + /* Preview */ + "network", + /* Most-left */ + "custom/toggle-tailscale" + /* Most-right */ + ], + "drawer": { + "transition-duration": 500, + "transition-left-to-right": false, + "children-class": "drawer-child" + } + }, + + "group/power": { + "orientation": "inherit", + "modules": [ + /* Preview */ "battery", + /* Most-left */ "custom/system-shutdown", "custom/system-reboot", "custom/system-hibernate", "custom/system-sleep", "custom/system-lock", - "custom/sep", "power-profiles-daemon", - "custom/sep" + "idle_inhibitor" + /* Most-right */ ], "drawer": { "transition-duration": 500, @@ -152,170 +228,172 @@ } }, - "group/hardware": { + "group/workspaces": { "orientation": "inherit", "modules": [ - "custom/sep", - "memory", - "cpu", - "temperature" - ], - "drawer": { - "transition-duration": 500, - "transition-left-to-right": false, - "children-class": "drawer-child" - } + "hyprland/workspaces", + "sway/workspaces" + ] }, - "group/system": { - "orientation": "inherit", - "modules": [ - "idle_inhibitor", - "custom/light-dark-toggle", - "custom/night-light-toggle", - "custom/keyboard-switch", - "custom/toggle-notifications" - ], - "drawer": { - "transition-duration": 500, - "tansition-left-to-right": true, - "children-class": "drawer-child" + "hyprland/language": { + "format": "\uf11c", + "on-click": "hyprctl switchxkblayout at-translated-set-2-keyboard next && notify-send \"$(hyprctl devices -j | jq -r '.keyboards[] | select(.name == \"at-translated-set-2-keyboard\") | .active_keymap')\" --app-name 'waybar'", + "tooltip": true, + "tooltip-format": "Switch keyboard layouts", + "keyboard-name": "at-translated-set-2-keyboard" + }, + + "hyprland/workspaces": { + "all-outputs": false, + "disable-scroll": true, + "format": "{icon}{name}", + "format-icons": { + "default": "", + "urgent": "\uf071 " /*  */ } }, "idle_inhibitor": { "format": "{icon}", "format-icons": { - "activated": "\uf06e", - "deactivated": "\uf070" - }, + "activated": "\uf06e", /*  */ + "deactivated": "\uf070" /*  */ + }, "tooltip": false }, - "keyboard-state": { + "keyboard-state#capslock": { + "capslock": true, "format": { "capslock": "{icon}" }, "format-icons": { - "locked": "\uf023", + "locked": "\uf11c", /*  */ "unlocked": "" - }, - "numlock": false, - "capslock": true, - "scrollock": false + } }, - "memory": { - "format": "{}% \uf1c0", - "on-click": "kitty -e zenith" + "keyboard-state#numlock": { + "numlock": true, + "format": { + "numlock": "{icon}" + }, + "format-icons": { + "locked": "\uf1ec", /*  */ + "unlocked": "" + } }, "mpris": { - // "ignored-players": ["firefox"] "format": "{player_icon} {dynamic}", "format-paused": "{status_icon} {dynamic}", "tooltip-format": "{player} ({status}) {title} - {artist} - {album}", "player-icons": { - "default": "\uf51f", - "spotify": "\uf1bc", - "mpv": "🎵" + "default": "\uf8d9", /*  */ + "mpv": "\uf144", /*  */ + "spotify": "\uf1bc" /*  */ }, "status-icons": { - "paused": "⏸" + "paused": "\uf04c" /*  */ }, "dynamic-order": [ "title", "artist" ], - "dynamic-len": 40, + "dynamic-len": 40 }, "network": { - "format-disconnected": "\uf127", - "format-ethernet": "\uf6ff {ifname}: {ipadds}/{cidr}", - "format-wifi": "\uf1eb", + "format-disconnected": "\uf127", /*  */ + "format-ethernet": "\uf6ff", /*  */ + "format-linked": "\uf0c1", /*  */ + "format-wifi": "{icon}", "interval": 5, - "on-click-right": "kitty -e nmtui", + "tooltip": true, "tooltip-format": "{ifname}: {ipaddr}", "tooltip-format-disconnected": "Disconnected", - "tooltip-format-wifi": "{essid} ({signalStrength}%)\n{ifname}: {ipaddr}" + "tooltip-format-wifi": "{essid} ({signalStrength}%)\n{ifname}: {ipaddr}", + "format-icons": [ + "\uf05e", /*  */ + "\uf1eb", /*  */ + "\uf1eb" /*  */ + ] + }, + + "power-profiles-daemon": { + "format": "{icon}", + "format-icons": { + "default": "\uf110", /*  */ + "performance": "\uf135", /*  */ + "balanced": "\uf24e", /*  */ + "power-saver": "\uf06c" /*  */ + }, + "tooltip": true, + "tooltip-format": "Profile: {profile}\nDriver: {driver}" + }, + + "privacy": { + "transition-duration": 250, + "icon-size": 16, + "modules": [ + { + "type": "screenshare", + "tooltip": true + }, + { + "type": "audio-in", + "tooltip": true + } + ] + }, + + "pulseaudio": { + "format": "{volume}% {icon}", + "format-headset": "{volume}% \uf58f", /*  */ + "format-muted": "\uf6a9", /*  */ + "format-icons": [ + "\uf026", /*  */ + "\uf027", /*  */ + "\uf028" /*  */ + ], + "scroll-step": 2.0, + "on-click": "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle" + }, + + "sway/language": { + "format": "{short}", + "on-click": "swaymsg input type:keyboard xkb_switch_layout next", + "tooltip": true, + "tooltip-format": "Switch keyboard layouts" }, "sway/window": { - "max-length": 85 + "format": "{title}", + "max-length": 20, + "tooltip": true, + "all-outputs": true, + "icon": false, + "icon-size": 18, + "rewrite": { + ".* - (.*)": "$1", + ".* — (.*)": "$1" + } }, "sway/workspaces": { "all-outputs": false, "disable-scroll": true, - "format": "{icon}{name}", + "format": "{icon}{name}", "format-icons": { - "default": "", // Prevent showing workspace name literal. - "urgent": "\uf071 " - }, - // "persistent_workspaces": { - // "0:¯\\_(ツ)_/¯": [] - // } - }, - - "power-profiles-daemon": { - "format": "{icon}", - "tooltip-format": "Power profile: {profile}\nDriver: {driver}", - "tooltip": true, - "format-icons": { - "default": "", - "performance": "", - "balanced": "", - "power-saver": "" + "default": "", + "urgent": "\uf071 " /*  */ } }, - "privacy": { - "icon-spacing": 4, - "icon-size": 18, - "transition-duration": 250, - "modules": [ - { - "type": "screenshare", - "tooltip": true, - "tooltip-icon-size": 18, - }, - { - "type": "audio-in", - "tooltip": true, - "tooltip-icon-size": 18, - }, - ], - }, - - "pulseaudio": { - "format": "{volume}% {icon}{format_source}", - "format-muted": "\uf6a9{format_source}", - "format-bluetooth": "{volume}% {icon}\uf294{format_source}", - "format-bluetooth-muted": "\uf6a9 {icon}\uf294{format_source}", - "format-source": " {volume}% \uf130", - "format-source-muted": "", - "format-icons": { - "headphone": "\uf58f", - "hands-free": "\uf590", - "headset": "\uf590", - "phone": "\uf3ce", - "portable": "\uf3ce", - "car": "\uf1b9", - "default": ["\uf026", "\uf027", "\uf028 "] - }, - "on-click": "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle", - "on-click-right": "pavucontrol", - "scroll-step": -2 - }, - - "temperature": { - "critical-threshold": 70, - "format": "{temperatureC}°C {icon}", - "format-icons": ["\uf2cb", "\uf2c9", "\uf2c7"] - }, - "tray": { + "icon-size": 16, + "show-passive-items": true, "spacing": 10 } } diff --git a/stow/waybar/.config/waybar/style-dark.css b/stow/waybar/.config/waybar/style-dark.css new file mode 100644 index 0000000..d99a2e8 --- /dev/null +++ b/stow/waybar/.config/waybar/style-dark.css @@ -0,0 +1,14 @@ +@import 'style.css'; + +* { + color: #C2C2C2; +} + +window#waybar { + background-color: #171717; +} + +window#waybar button.focused { + background-color: #C2C2C2; +} + diff --git a/stow/waybar/.config/waybar/style-light.css b/stow/waybar/.config/waybar/style-light.css new file mode 100644 index 0000000..a0bf37e --- /dev/null +++ b/stow/waybar/.config/waybar/style-light.css @@ -0,0 +1,14 @@ +@import 'style.css'; + +* { + color: #171717; +} + +window#waybar { + background-color: #C2C2C2; +} + +window#waybar button.focused { + background-color: #171717; +} + diff --git a/stow/waybar/.config/waybar/style.css b/stow/waybar/.config/waybar/style.css index f9fe080..11d3b20 100644 --- a/stow/waybar/.config/waybar/style.css +++ b/stow/waybar/.config/waybar/style.css @@ -1,165 +1,119 @@ -/* - * ~/.config/waybar/style.css - * - * `otf-font-awesome` is required to be installed for icons. - * - * Pick your stylesheet: - * - sharp.css - * - transparent.css - * - round.css - */ +/* * * * * * * * * * * * * * * * + * * + * ~/.config/waybar/style.css * + * * + * * * * * * * * * * * * * * * */ -@define-color transparent-black rgba(23, 23, 23, 0.9); -@define-color white #ecf0f1; -@define-color warning-red #eb4d4b; -@define-color accent #00897b; +@define-color background #C2C2C2; +@define-color foreground #171717; + +/* Pantone / PMS 18-1559 TCX / Red Alert */ +@define-color warning rgb(208, 52, 44); +/* Safety orange */ +@define-color safety rgb(255, 103, 0); + +* { + padding: 0 4px; +} window#waybar { + /* background: linear-gradient(90deg, #CECECE 0%, #D1D1D1 10%, #C9C9C9 50%, #BBBBBB 90%, #BABABA 100%); */ + font-family: letter, "Font Awesome 6 Free", font-awesome, monospace; font-size: 13px; - -webkit-font-smoothing: antialiased; - transition-property: background-color; - transition-duration: .5s; + font-weight: 600; } -#window, #workspaces { - margin: 0 5px; -} - -#workspaces button { - border: none; - border-radius: 0; - min-width: 30px; - padding: 0 5px; -} - -#workspaces button.focused { - background-color: transparent; - color: @white; -} - -#workspaces button:hover { - background-color: transparent; - color: @transparent-black; -} - -#workspaces button.urgent { - color: @white; - background-color: @warning-red; -} - -/* All modules individually. */ -#backlight, -#battery, -#bluetooth, -#clock, -#cpu, -#custom-browser, -#custom-light-dark-toggle, -#custom-night-light-toggle, -#custom-system-lock, #custom-system-sleep, #custom-system-hibernate, #custom-system-reboot, #custom-system-shutdown, -#custom-toggle-notifications, -#disk, -#group-hardware, -#group-system, -#idle_inhibitor, -#keyboard-state, -#memory, -#mode, -#mpd, -#mpris, -#network, -#power-profiles-daemon, -#privacy-item.audio-in, #privacy-item.audio-out, #privacy-item.screenshare, -#pulseaudio, -#temperature, -#tray { - padding: 0 5px; -} - -/* 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 { +.modules-right, +.modules-right > widget:last-child { + padding-right: 0; margin-right: 0; } -@keyframes blink { - to { - background-color: #ffffff; - color: #000000; - } -} - -label:focus { - background-color: #000000; -} - -/* Module specific colours */ - -#battery.charging, #battery.plugged { - color: #ffffff; +#battery.charging { background-color: #26A65B; + color: #FFFFFF; } #battery.critical:not(.charging) { - background-color: #f53c3c; - color: #ffffff; + background-color: @warning; + color: #FFFFFF; animation-name: blink; animation-duration: 0.5s; - animation-timing-function: linear; + animation-timing-function: steps(12); + animation-iteration-count: infinite; + animation-direction: alternate; +} + +#battery.plugged { + animation-name: blink; + animation-duration: 1.0s; + animation-timing-function: steps(12); animation-iteration-count: infinite; animation-direction: alternate; } #bluetooth.disabled, -#bluetooth.off, -#network.disconnected, -#pulseaudio.muted { +#bluetooth.off { opacity: 0.6; } -#mpris { - color: #2a5c45; - min-width: 100px; +#custom-toggle-tailscale.disconnected { + opacity: 0.6; +} + + +#mpris.Feishin { + background: linear-gradient(45deg, rgba(170,92,195,1) 100%, rgba(0,164,220,1) 0%); } #mpris.spotify { background-color: #66cc99; + color: #2a5c45; } #mpris.vlc { background-color: #ffa000; } -#temperature.critical { - background-color: #eb4d4b; +#network.disconnected { + opacity: 0.6; } -#custom_light-dark-toggle.activated, -#idle_inhibitor.activated { - background-color: #ecf0f1; - color: #2d3436; +#privacy, +#privacy-item, +#privacy-item.screenshare, +#privacy-item.audio-in { + background-color: @safety; +} + +#privacy-item.screenshare { + background-color: #000000; +} + +#pulseaudio.muted { + opacity: 0.6; +} + +#systemd-failed-units.degraded { + background-color: @warning; +} + +#temperature.critical { + background-color: @warning; +} + +#tray > .needs-attention { + -gtk-icon-effect: highlight; + background-color: @warning; } #tray > .passive { -gtk-icon-effect: dim; } -#tray > .needs-attention { - -gtk-icon-effect: highlight; - background-color: #eb4d4b; +#workspaces button.urgent { + background-color: @warning; + color: white; } -#privacy-item.audio-in, -#privacy-item.audio-out, -#privacy-item.screenshare { - background-color: #ffaa01; - color: #2d3436; -} - -@import "sharp.css"; -