- template theme selection in alacritty, btop, fuzzel, ghostty, waybar, swaync, wezterm, zathura, gemini, zsh, and nvim astroui - add apex-aeon assets and refresh apex-neon palettes across terminals, editors, and UI components - switch UI fonts to GeistMono in GTK/Qt, Hyprland/Hyprlock, Kitty, Zed, and Satty - add refresh-apex-themes helper to sync theme outputs
101 lines
3.7 KiB
Bash
101 lines
3.7 KiB
Bash
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
apex_dist="${APEX_DIST_DIR:-$HOME/Dev/Themes/apex/dist}"
|
|
|
|
if [[ ! -d "$apex_dist" ]]; then
|
|
echo "apex dist not found: $apex_dist" >&2
|
|
exit 1
|
|
fi
|
|
|
|
source_dir="${CHEZMOI_SOURCE_DIR:-}"
|
|
if [[ -z "$source_dir" ]] && command -v chezmoi >/dev/null 2>&1; then
|
|
source_dir="$(chezmoi source-path 2>/dev/null || true)"
|
|
fi
|
|
if [[ -z "$source_dir" ]] && [[ -d "./dot_config" ]]; then
|
|
source_dir="$(pwd)"
|
|
fi
|
|
if [[ -z "$source_dir" ]]; then
|
|
echo "could not determine chezmoi source dir (set CHEZMOI_SOURCE_DIR)" >&2
|
|
exit 1
|
|
fi
|
|
|
|
mkdir -p "$source_dir/dot_config/alacritty/themes"
|
|
cp "$apex_dist/alacritty/"*.toml "$source_dir/dot_config/alacritty/themes/"
|
|
|
|
mkdir -p "$source_dir/dot_config/btop/themes"
|
|
cp "$apex_dist/btop/"*.theme "$source_dir/dot_config/btop/themes/"
|
|
|
|
mkdir -p "$source_dir/dot_config/fuzzel/themes"
|
|
for src in "$apex_dist"/fuzzel/*-fuzzel.ini; do
|
|
base="$(basename "$src" -fuzzel.ini)"
|
|
cp "$src" "$source_dir/dot_config/fuzzel/themes/${base}.ini"
|
|
done
|
|
|
|
mkdir -p "$source_dir/dot_config/gtk-4.0"
|
|
cp "$apex_dist/gtk4/gtk.css" "$source_dir/dot_config/gtk-4.0/gtk.css"
|
|
|
|
mkdir -p "$source_dir/dot_gemini/themes"
|
|
cp "$apex_dist/gemini/"*.json "$source_dir/dot_gemini/themes/"
|
|
|
|
mkdir -p "$source_dir/dot_config/ghostty/themes"
|
|
cp "$apex_dist/ghostty/"* "$source_dir/dot_config/ghostty/themes/"
|
|
|
|
mkdir -p "$source_dir/dot_config/hypr/hyprland.d"
|
|
for src in "$apex_dist"/hyprland/*-colors.conf; do
|
|
base="$(basename "$src" -colors.conf)"
|
|
cp "$src" "$source_dir/dot_config/hypr/hyprland.d/theme-${base}.conf"
|
|
done
|
|
|
|
mkdir -p "$source_dir/dot_config/kitty/themes"
|
|
cp "$apex_dist/kitty/"*.conf "$source_dir/dot_config/kitty/themes/"
|
|
|
|
mkdir -p "$source_dir/dot_config/nvim/colors"
|
|
cp "$apex_dist/nvim/colors/"*.lua "$source_dir/dot_config/nvim/colors/"
|
|
|
|
mkdir -p "$source_dir/dot_config/owlry/themes"
|
|
cp "$apex_dist/owlry/"*.css "$source_dir/dot_config/owlry/themes/"
|
|
|
|
mkdir -p "$source_dir/dot_config/sherlock/themes"
|
|
cp "$apex_dist/sherlock/"*.css "$source_dir/dot_config/sherlock/themes/"
|
|
|
|
mkdir -p "$source_dir/dot_config/spicetify/private_Themes/apex-neon"
|
|
cp "$apex_dist/spicetify/apex-neon-color.ini" "$source_dir/dot_config/spicetify/private_Themes/apex-neon/color.ini"
|
|
cp "$apex_dist/spicetify/apex-neon-user.css" "$source_dir/dot_config/spicetify/private_Themes/apex-neon/user.css"
|
|
|
|
mkdir -p "$source_dir/dot_config/spicetify/private_Themes/apex-aeon"
|
|
cp "$apex_dist/spicetify/apex-aeon-color.ini" "$source_dir/dot_config/spicetify/private_Themes/apex-aeon/color.ini"
|
|
cp "$apex_dist/spicetify/apex-aeon-user.css" "$source_dir/dot_config/spicetify/private_Themes/apex-aeon/user.css"
|
|
|
|
mkdir -p "$source_dir/dot_config/swaync/themes"
|
|
for src in "$apex_dist"/swaync/*-style.css; do
|
|
base="$(basename "$src" -style.css)"
|
|
cp "$src" "$source_dir/dot_config/swaync/themes/${base}.css"
|
|
done
|
|
|
|
mkdir -p "$source_dir/dot_config/waybar/themes"
|
|
for src in "$apex_dist"/waybar/*-colors.css; do
|
|
base="$(basename "$src" -colors.css)"
|
|
cp "$src" "$source_dir/dot_config/waybar/themes/${base}.css"
|
|
done
|
|
|
|
mkdir -p "$source_dir/dot_config/wezterm/colors"
|
|
cp "$apex_dist/wezterm/"*.toml "$source_dir/dot_config/wezterm/colors/"
|
|
|
|
mkdir -p "$source_dir/dot_config/zathura/themes"
|
|
for src in "$apex_dist"/zathura/*-zathurarc; do
|
|
base="$(basename "$src" -zathurarc)"
|
|
cp "$src" "$source_dir/dot_config/zathura/themes/${base}.zathurarc"
|
|
done
|
|
|
|
mkdir -p "$source_dir/dot_config/zed/themes"
|
|
cp "$apex_dist/zed/"*.json "$source_dir/dot_config/zed/themes/"
|
|
|
|
mkdir -p "$source_dir/dot_config/zsh"
|
|
for src in "$apex_dist"/zsh/*.zsh-theme; do
|
|
base="$(basename "$src" .zsh-theme)"
|
|
cp "$src" "$source_dir/dot_config/zsh/${base}.zsh"
|
|
done
|
|
|
|
printf "Refreshed apex themes from %s -> %s\n" "$apex_dist" "$source_dir"
|