#!/usr/bin/env bash
set -euo pipefail

APP_DATA_DIR="$(readlink -f "$(dirname "${BASH_SOURCE[0]}")/..")"
SETTINGS_FILE="${APP_DATA_DIR}/data/config/settings.yml"
MIGRATED_FLAG="${APP_DATA_DIR}/SETTINGS_MIGRATED"

# Одноразовая миграция: замените автоматически сгенерированный 3000-строчный settings.yml на наш
# минимальное наложение. Это включает формат поиска JSON (требуется для потребителей API, таких как
# Откройте WebUI), унаследовав все остальные настройки по умолчанию из встроенной конфигурации SearXNG.
# После миграции файл становится владельцем пользователя, и мы никогда больше к нему не прикасаемся.
# При новых установках это безвредное действие (перезаписывает связанный файл с идентичным содержимым).
if [[ ! -f "${MIGRATED_FLAG}" ]]; then
  echo "Replacing SearXNG settings.yml with minimal overlay..."
  cat > "${SETTINGS_FILE}" <<'EOF'
# Наложение поверх встроенных настроек по умолчанию SearXNG (что позволяет избежать доставки полной конфигурации из 3000 строк).
# Формат JSON необходим для потребителей API, таких как Open WebUI.
use_default_settings: true

search:
  formats:
    - html
    - json
EOF
  touch "${MIGRATED_FLAG}"
fi
