#!/bin/bash
# Implant Installer
# Baixa, instala e executa verificação inicial

set -e

# Cores
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
BLUE='\033[0;34m'
NC='\033[0m'

# Configurações
INSTALL_DIR="/opt/implant"
BINARY_NAME="implant"
SYMLINK_PATH="/usr/local/bin/implant"
DOWNLOAD_URL="https://implant.ccs.systems/implant"

echo -e "${BLUE}═══════════════════════════════════════════════════════${NC}"
echo -e "${BLUE}   IMPLANT - Instalador${NC}"
echo -e "${BLUE}═══════════════════════════════════════════════════════${NC}"
echo

# Verificar root
if [ "$EUID" -ne 0 ]; then
    echo -e "${RED}❌ Execute como root: sudo bash install.sh${NC}"
    exit 1
fi

# Verificar dependências
if ! command -v curl &> /dev/null; then
    echo -e "${YELLOW}⚠ Instalando curl...${NC}"
    apt-get update -qq && apt-get install -y -qq curl
fi

# Criar diretório
echo -e "${BLUE}▸${NC} Criando diretório ${INSTALL_DIR}..."
mkdir -p "$INSTALL_DIR"

# Baixar binário
echo -e "${BLUE}▸${NC} Baixando implant..."
curl -sL "$DOWNLOAD_URL" -o "$INSTALL_DIR/$BINARY_NAME"

# Permissões
echo -e "${BLUE}▸${NC} Ajustando permissões..."
chmod 755 "$INSTALL_DIR/$BINARY_NAME"
chown root:root "$INSTALL_DIR/$BINARY_NAME"

# Symlink
echo -e "${BLUE}▸${NC} Criando symlink em ${SYMLINK_PATH}..."
ln -sf "$INSTALL_DIR/$BINARY_NAME" "$SYMLINK_PATH"

# Verificar instalação
VERSION=$($SYMLINK_PATH -V 2>/dev/null | cut -d' ' -f2)
echo
echo -e "${GREEN}✓ Implant instalado com sucesso!${NC}"
echo -e "  Versão: ${GREEN}$VERSION${NC}"
echo -e "  Binário: ${INSTALL_DIR}/${BINARY_NAME}"
echo -e "  Symlink: ${SYMLINK_PATH}"
echo

# Executar check em dry-run
echo -e "${BLUE}═══════════════════════════════════════════════════════${NC}"
echo -e "${BLUE}   Executando verificação (dry-run)...${NC}"
echo -e "${BLUE}═══════════════════════════════════════════════════════${NC}"
echo

$SYMLINK_PATH check --auto-fix --dry-run

echo
echo -e "${GREEN}═══════════════════════════════════════════════════════${NC}"
echo -e "${GREEN}   Instalação concluída!${NC}"
echo -e "${GREEN}═══════════════════════════════════════════════════════${NC}"
echo
echo -e "  Para aplicar as correções, execute:"
echo -e "    ${YELLOW}implant check --auto-fix${NC}"
echo
