Compare commits

...

3 Commits

Author SHA1 Message Date
0e0ae462bc update wofi so it has corrects styles 2026-03-06 15:39:27 +00:00
bb7df51c39 add way to generate color config files 2026-03-06 15:39:14 +00:00
2d2f069a7d Update to use GTK variable names 2026-03-06 15:38:25 +00:00
5 changed files with 95 additions and 38 deletions

2
.gitignore vendored Normal file
View File

@@ -0,0 +1,2 @@
*/colors.css
*/colors.conf

View File

@@ -133,7 +133,7 @@ bind = $mod, Return, exec, $terminal
bind = $mod SHIFT, Q, killactive
# Launcher (wofi replaces dmenu)
bind = $mod, D, exec, wofi --show run --style ~/scripts/wofi/wofi_style.css
bind = $mod, D, exec, wofi --show run --style ~/scripts/wofi/style.css
# To approximate your dmenu colors, configure wofi's style.css
# Pavucontrol

55
sh/gen-colors Executable file
View File

@@ -0,0 +1,55 @@
#!/bin/sh
# Generate color fragment files for all configs from colors.conf
set -e
SCRIPT_DIR="$(cd "$(dirname "$0")/.." && pwd)"
SRC="$SCRIPT_DIR/colors.conf"
if [ ! -f "$SRC" ]; then
echo "Error: $SRC not found" >&2
exit 1
fi
# Read colors into variables
while IFS='=' read -r key value; do
case "$key" in \#* | "") continue ;; esac
eval "color_$key=$value"
done <"$SRC"
# Hyprland: $color_name = rgb(HEXVAL) format (no #)
{
while IFS='=' read -r key value; do
case "$key" in \#* | "") continue ;; esac
hex="${value#\#}"
echo "\$color_$key = rgb($hex)"
done <"$SRC"
} >"$SCRIPT_DIR/hypr/colors.conf"
echo "Wrote hypr/colors.conf"
# Sway: set $color_name #HEXVAL
{
while IFS='=' read -r key value; do
case "$key" in \#* | "") continue ;; esac
echo "set \$color_$key $value"
done <"$SRC"
} >"$SCRIPT_DIR/sway/colors.conf"
echo "Wrote sway/colors.conf"
# i3: same format as sway
cp "$SCRIPT_DIR/sway/colors.conf" "$SCRIPT_DIR/i3/colors.conf"
echo "Wrote i3/colors.conf"
# Waybar CSS: @define-color color_name #HEXVAL;
{
while IFS='=' read -r key value; do
case "$key" in \#* | "") continue ;; esac
echo "@define-color color_$key $value;"
done <"$SRC"
} >"$SCRIPT_DIR/waybar/colors.css"
echo "Wrote waybar/colors.css"
# Wofi CSS: same as waybar
cp "$SCRIPT_DIR/waybar/colors.css" "$SCRIPT_DIR/wofi/colors.css"
echo "Wrote wofi/colors.css"
echo "Done. All color fragments generated."

View File

@@ -11,39 +11,39 @@
}
window#waybar {
background-color: var(--color-bg);
color: var(--color-primary);
background-color: @color_bg;
color: @color_primary;
}
/* Workspaces */
#workspaces button {
padding: 0 8px;
background-color: var(--color-alt_bg);
color: var(--color-white);
background-color: @color_alt_bg;
color: @color_white;
border-bottom: 2px solid transparent;
}
#workspaces button:hover {
background-color: var(--color-alt_bg);
border-bottom: 2px solid var(--color-primary);
background-color: @color_alt_bg;
border-bottom: 2px solid @color_primary;
box-shadow: none;
}
#workspaces button.focused,
#workspaces button.active {
background-color: var(--color-bg);
color: var(--color-white);
border-bottom: 2px solid var(--color-primary);
background-color: @color_bg;
color: @color_white;
border-bottom: 2px solid @color_primary;
}
#workspaces button.urgent {
background-color: var(--color-tertiary);
color: var(--color-white);
background-color: @color_tertiary;
color: @color_white;
}
#mode {
background-color: var(--color-tertiary);
color: var(--color-text_dark);
background-color: @color_tertiary;
color: @color_text_dark;
padding: 0 8px;
font-style: italic;
}
@@ -60,7 +60,7 @@ window#waybar {
#battery,
#clock {
padding: 0 10px;
color: var(--color-primary);
color: @color_primary;
}
/* Pink separators between modules (matching i3bar separator color) */
@@ -73,45 +73,45 @@ window#waybar {
#network,
#battery,
#clock {
border-left: 1px solid var(--color-tertiary);
border-left: 1px solid @color_tertiary;
}
#battery.warning {
color: var(--color-secondary);
color: @color_secondary;
}
#battery.critical {
color: var(--color-tertiary);
color: @color_tertiary;
}
#custom-greetings {
color: var(--color-secondary);
color: @color_secondary;
}
#clock {
color: var(--color-tertiary);
color: @color_tertiary;
}
/* claudebar severity classes */
#custom-claudebar.low {
color: var(--color-primary);
color: @color_primary;
}
#custom-claudebar.mid {
color: var(--color-secondary);
color: @color_secondary;
}
#custom-claudebar.high {
color: var(--color-tertiary);
color: @color_tertiary;
}
#custom-claudebar.critical {
color: var(--color-tertiary);
color: @color_tertiary;
}
#tray {
padding: 0 8px;
border-left: 1px solid var(--color-tertiary);
border-left: 1px solid @color_tertiary;
}
#tray > .passive {
@@ -120,5 +120,5 @@ window#waybar {
#tray > .needs-attention {
-gtk-icon-effect: highlight;
background-color: var(--color-tertiary);
background-color: @color_tertiary;
}

View File

@@ -1,29 +1,29 @@
@import url("colors.css");
@import "/home/adamf/scripts/wofi/colors.css";
window {
margin: 0px;
border: 1px solid var(--color-primary);
background-color: var(--color-bg);
border: 1px solid @color_primary;
background-color: @color_bg;
border-radius: 8px;
}
#input {
padding: 4px 8px;
margin: 6px;
color: var(--color-text_light);
background-color: var(--color-alt_bg);
border: 1px solid var(--color-primary);
color: @color_text_light;
background-color: @color_alt_bg;
border: 1px solid @color_primary;
border-radius: 4px;
}
#inner-box {
background-color: var(--color-bg);
background-color: @color_bg;
}
#outer-box {
margin: 4px;
padding: 4px;
background-color: var(--color-bg);
background-color: @color_bg;
}
#scroll {
@@ -33,7 +33,7 @@ window {
#text {
margin: 2px 8px;
color: var(--color-primary);
color: @color_primary;
}
#entry {
@@ -41,10 +41,10 @@ window {
}
#entry:selected {
background-color: var(--color-alt_bg);
border: 1px solid var(--color-primary);
background-color: @color_alt_bg;
border: 1px solid @color_primary;
}
#text:selected {
color: var(--color-tertiary);
color: @color_tertiary;
}