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";
-