arch-hyprland-setup/bin/omarchy-theme-remove
2025-08-07 18:19:16 -04:00

41 lines
1.1 KiB
Bash
Executable File

#!/bin/bash
# omarchy-theme-remove: Remove a theme from Omarchy by name
# Usage: omarchy-theme-remove <theme-name>
if [ -z "$1" ]; then
mapfile -t extra_themes < <(find ~/.config/omarchy/themes -mindepth 1 -maxdepth 1 -type d ! -xtype l -printf '%f\n')
if [[ ${#extra_themes[@]} -gt 0 ]]; then
THEME_NAME=$(gum choose --header="Remove extra theme" "${extra_themes[@]}")
else
echo "No extra themes installed."
exit 1
fi
else
THEME_NAME="$1"
fi
THEMES_DIR="$HOME/.config/omarchy/themes"
CURRENT_DIR="$HOME/.config/omarchy/current"
THEME_PATH="$THEMES_DIR/$THEME_NAME"
# Ensure a theme was set
if [ -z "$THEME_NAME" ]; then
exit 1
fi
# Check if theme exists before attempting removal
if [ ! -d "$THEME_PATH" ]; then
echo "Error: Theme '$THEME_NAME' not found."
exit 1
fi
# Move to the next theme if the current theme is the one being removed
if [ "$(readlink -f "$CURRENT_DIR/theme")" = "$(readlink -f "$THEME_PATH")" ]; then
~/.local/share/omarchy/bin/omarchy-theme-next
fi
# Now remove the theme directory for THEME_NAME
rm -rf "$THEME_PATH"