lupan-set-theme: now works with busybox readlink

This commit is contained in:
Lukasz Pankowski
2026-07-13 21:02:01 +02:00
parent a6e37c95d7
commit d63711ed06

View File

@@ -23,8 +23,8 @@ fi
pkill -USR1 '^dwm$' pkill -USR1 '^dwm$'
XRES=$(readlink -e ~/.Xresources) XRES=$(readlink -f ~/.Xresources)
if [ -n "$XRES" ]; then if [ -f "$XRES" ]; then
if [ "$THEME" = dark ]; then if [ "$THEME" = dark ]; then
sed -i 's/^#undef THEME_DARK/#define THEME_DARK/' "$XRES" sed -i 's/^#undef THEME_DARK/#define THEME_DARK/' "$XRES"
elif [ "$THEME" = light ]; then elif [ "$THEME" = light ]; then
@@ -35,11 +35,11 @@ if [ -n "$XRES" ]; then
fi fi
# Alacritty # Alacritty
AYML=$(readlink -e ~/.config/alacritty/alacritty.yml) AYML=$(readlink -f ~/.config/alacritty/alacritty.yml)
if [ -n "$AYML" ]; then if [ -f "$AYML" ]; then
sed -i "s/^colors: [*].*/colors: *$THEME/" "$AYML" sed -i "s/^colors: [*].*/colors: *$THEME/" "$AYML"
fi fi
ATOML=$(readlink -e ~/.config/alacritty/alacritty.toml) ATOML=$(readlink -f ~/.config/alacritty/alacritty.toml)
if [ -f "$ATOML" ]; then if [ -f "$ATOML" ]; then
sed -i "s#^import =.*#import = [\"~/.config/alacritty/$THEME.toml\"]#" "$ATOML" sed -i "s#^import =.*#import = [\"~/.config/alacritty/$THEME.toml\"]#" "$ATOML"
fi fi
@@ -52,27 +52,27 @@ elif [ "$THEME" = light ]; then
fi fi
# Foot # Foot
FOOT=$(readlink -e ~/.config/foot/foot.ini) FOOT=$(readlink -f ~/.config/foot/foot.ini)
if [ -n "$FOOT" ]; then if [ -f "$FOOT" ]; then
sed -i "s/^initial-color-theme .*/initial-color-theme = $THEME/" "$FOOT" sed -i "s/^initial-color-theme .*/initial-color-theme = $THEME/" "$FOOT"
fi fi
# GTK # GTK
XSET=$(readlink -e ~/.config/xsettingsd/xsettingsd.conf) XSET=$(readlink -f ~/.config/xsettingsd/xsettingsd.conf)
if [ -n "$XSET" ]; then if [ -f "$XSET" ]; then
sed -i -E "s#(Net/ThemeName) .*#\\1 \"${GTK_THEME}\"#" "$XSET" sed -i -E "s#(Net/ThemeName) .*#\\1 \"${GTK_THEME}\"#" "$XSET"
pkill -HUP -x xsettingsd pkill -HUP -x xsettingsd
gsettings set org.gnome.desktop.interface gtk-theme "${GTK_THEME}" gsettings set org.gnome.desktop.interface gtk-theme "${GTK_THEME}"
fi fi
# niri # niri
NIRI=$(readlink -e ~/.config/niri/config.kdl) NIRI=$(readlink -f ~/.config/niri/config.kdl)
if [ -n "$NIRI" ]; then if [ -f "$NIRI" ]; then
sed -i -E "s%^(include) \"(dark|light).kdl\".*%\\1 \"${THEME}.kdl\"%" "$NIRI" sed -i -E "s%^(include) \"(dark|light).kdl\".*%\\1 \"${THEME}.kdl\"%" "$NIRI"
fi fi
# waybar # waybar
WCSS=$(readlink -e ~/.config/waybar/style.css) WCSS=$(readlink -f ~/.config/waybar/style.css)
if [ -f "$WCSS" ]; then if [ -f "$WCSS" ]; then
sed -i -E "s#file:///.*/(light|dark)[.]css#file://$HOME/.config/waybar/$THEME.css#" "$WCSS" sed -i -E "s#file:///.*/(light|dark)[.]css#file://$HOME/.config/waybar/$THEME.css#" "$WCSS"
killall -SIGUSR2 waybar killall -SIGUSR2 waybar