#!/usr/bin/env bash
# Prepara o venv local do inventário.
# NÃO roda apt sozinho. Se faltar python3-venv/pip/ffmpeg, apenas informa.

set -euo pipefail
cd "$(dirname "$0")"

need_apt=()
command -v python3 >/dev/null || need_apt+=("python3")
python3 -c "import venv" 2>/dev/null || need_apt+=("python3.12-venv")
command -v ffprobe >/dev/null || need_apt+=("ffmpeg")

if ((${#need_apt[@]})); then
  echo "Pacotes do sistema necessários para inventário completo (instalar manualmente se autorizar):"
  echo "  sudo apt-get install -y ${need_apt[*]}"
  echo
  echo "A Fase 0 evita alterar o ambiente sem sua autorização explícita."
  if ! python3 -c "import venv" 2>/dev/null; then
    echo "ERRO: módulo venv indisponível — não é possível criar .venv agora."
    exit 1
  fi
fi

if [[ ! -d .venv ]]; then
  python3 -m venv .venv
fi
# shellcheck disable=SC1091
source .venv/bin/activate
pip install -U pip
pip install -r requirements.txt
echo "OK: venv pronto em $(pwd)/.venv"
echo "Próximo: edite cameras.yaml e rode: python inventory.py"
