#!/usr/bin/env bash set -euo pipefail REPO_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)" TEMPLATE_FILE="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)/.env.template" ENV_DIR="${HOME}/.4nk_template" ENV_FILE="${ENV_DIR}/.env" mkdir -p "${ENV_DIR}" chmod 700 "${ENV_DIR}" || true if [[ ! -f "${ENV_FILE}" ]]; then if [[ -f "${TEMPLATE_FILE}" ]]; then cp "${TEMPLATE_FILE}" "${ENV_FILE}" chmod 600 "${ENV_FILE}" || true echo "Fichier d'environnement créé: ${ENV_FILE}" >&2 echo "Veuillez renseigner les variables requises (OPENAI_API_KEY, OPENAI_MODEL, etc.)." >&2 exit 3 else echo "Modèle d'environnement introuvable: ${TEMPLATE_FILE}" >&2 exit 2 fi fi # Charger pour validation set -a . "${ENV_FILE}" set +a MISSING=() for var in OPENAI_API_KEY OPENAI_MODEL; do if [[ -z "${!var:-}" ]]; then MISSING+=("$var") fi done if (( ${#MISSING[@]} > 0 )); then echo "Variables manquantes dans ${ENV_FILE}: ${MISSING[*]}" >&2 exit 4 fi echo "Environnement valide: ${ENV_FILE}" >&2