#!/bin/bash
WORKDIR="/root/debrepo"
PROXY="socks5h://admin:zasada2026@64.188.67.191:1080"
cd $WORKDIR

echo -e "\n\e[1;34m[$(date '+%H:%M:%S')] ПРОВЕРКА VIRTUALBOX...\e[0m"

# Получаем версию через прокси
VERSION=$(curl -s -x "$PROXY" https://download.virtualbox.org/virtualbox/LATEST.TXT)
echo -e "\e[32m[ВЕРСИЯ ORACLE]\e[0m $VERSION"

if [ -z "$VERSION" ]; then
    echo -e "\e[1;31mОШИБКА: Не удалось получить версию с сайта Oracle. Проверьте прокси.\e[0m"
    exit 1
fi

BASE_URL="https://download.virtualbox.org/virtualbox/$VERSION"
# Ищем имя файла в листинге директории через прокси
FILE_NAME=$(curl -s -x "$PROXY" "$BASE_URL/" | grep -oP 'virtualbox-[0-9.]+_'$VERSION'-[0-9]+~Debian~bookworm_amd64.deb' | head -n 1)

if [ -z "$FILE_NAME" ]; then
    echo -e "\e[1;31mОШИБКА: Не нашел .deb файл на сервере Oracle!\e[0m"
    exit 1
fi

CURRENT=$(reprepro -b . list bookworm virtualbox-7.2)
echo -e "\e[32m[ВЕРСИЯ РЕПО]\e[0m ${CURRENT:-пусто}"

if echo "$CURRENT" | grep -q "$VERSION"; then
    echo -e "\e[1;33m=> VirtualBox уже актуален.\e[0m"
else
    echo -e "\e[1;36m=> Качаю $FILE_NAME...\e[0m"
    curl -x "$PROXY" -L -o "$FILE_NAME" "$BASE_URL/$FILE_NAME"

    if [ ! -f "$FILE_NAME" ]; then
        echo -e "\e[1;31mОШИБКА: Файл не скачан!\e[0m"
        exit 1
    fi

    echo -e "\e[1;32m=> Интеграция в репозиторий...\e[0m"
    reprepro -V -b . includedeb bookworm "$FILE_NAME"

    if [ $? -eq 0 ]; then
        echo -e "\e[1;32mУСПЕХ: VirtualBox обновлен!\e[0m"
        rm "$FILE_NAME"
    else
        echo -e "\e[1;31mОШИБКА при работе reprepro\e[0m"
    fi
fi
