diff --git a/bin/omarchy-theme-set b/bin/omarchy-theme-set index 9fe57b5f..29ad774a 100755 --- a/bin/omarchy-theme-set +++ b/bin/omarchy-theme-set @@ -12,11 +12,7 @@ OMARCHY_THEMES_PATH="$OMARCHY_PATH/themes" THEME_NAME=$(echo "$1" | sed -E 's/<[^>]+>//g' | tr '[:upper:]' '[:lower:]' | tr ' ' '-') -if [[ -d "$USER_THEMES_PATH/$THEME_NAME" ]]; then - THEME_PATH="$USER_THEMES_PATH/$THEME_NAME" -elif [[ -d "$OMARCHY_THEMES_PATH/$THEME_NAME" ]]; then - THEME_PATH="$OMARCHY_THEMES_PATH/$THEME_NAME" -else +if [[ ! -d "$OMARCHY_THEMES_PATH/$THEME_NAME" ]] && [[ ! -d "$USER_THEMES_PATH/$THEME_NAME" ]]; then echo "Theme '$THEME_NAME' does not exist" exit 1 fi @@ -25,8 +21,9 @@ fi rm -rf "$NEXT_THEME_PATH" mkdir -p "$NEXT_THEME_PATH" -# Copy static configs -cp -r "$THEME_PATH/"* "$NEXT_THEME_PATH/" 2>/dev/null +# Copy official theme first, then overlay user customizations on top +cp -r "$OMARCHY_THEMES_PATH/$THEME_NAME/"* "$NEXT_THEME_PATH/" 2>/dev/null +cp -r "$USER_THEMES_PATH/$THEME_NAME/"* "$NEXT_THEME_PATH/" 2>/dev/null # Generate dynamic configs omarchy-theme-set-templates