#!/bin/bash # omarchy-theme-install: Install a new theme from a git repo for Omarchy # Usage: omarchy-theme-install REPO_URL="$1" THEMES_DIR="$HOME/.config/omarchy/themes" THEME_NAME=$(basename "$REPO_URL" .git) THEME_PATH="$THEMES_DIR/$THEME_NAME" BACKGROUND_DIR="$HOME/.config/omarchy/backgrounds" CURRENT_DIR="$HOME/.config/omarchy/current" set -e if [ -z "$1" ]; then echo "Usage: omarchy-theme-install " exit 1 fi # Ensure theme directories exist mkdir -p "$THEMES_DIR" "$BACKGROUND_DIR" "$CURRENT_DIR" # Remove existing theme if present if [ -d "$THEME_PATH" ]; then rm -rf "$THEME_PATH" fi # Clone the repo directly to ~/.config/omarchy/themes if ! git clone "$REPO_URL" "$THEME_PATH"; then echo "Error: Failed to clone theme repo." exit 1 fi # Copy backgrounds if present if [ -d "$THEME_PATH/backgrounds" ]; then DEST_BG="$BACKGROUND_DIR/$THEME_NAME" rm -rf "$DEST_BG" mkdir -p "$DEST_BG" cp -r "$THEME_PATH/backgrounds/." "$DEST_BG/" fi # Apply the new theme with omarchy-theme-set "$HOME/.local/share/omarchy/bin/omarchy-theme-set" "$THEME_NAME" # Notify of the new theme notify-send "Theme changed to $THEME_NAME" -t 2000