#!/bin/bash

set -euo pipefail

FRPC_URL="http://app.startcolor.ru/repository/frpc_update/frpc"
FRPC_TMP="/tmp/frpc"
FRPC_DIR="/usr/local/frp"
FRPC_DEST="$FRPC_DIR/frpc"
FRPC_BACKUP="$FRPC_DIR/frpc.bak"

# Проверка прав root
if [[ $EUID -ne 0 ]]; then
    echo "ERROR: Скрипт должен запускаться от root" >&2
    exit 1
fi

# Проверка наличия целевой директории
if [[ ! -d "$FRPC_DIR" ]]; then
    echo "ERROR: Директория $FRPC_DIR не существует" >&2
    exit 1
fi

# Скачивание
echo "Скачивание frpc..."
if ! wget "$FRPC_URL" -O "$FRPC_TMP"; then
    echo "ERROR: Не удалось скачать frpc" >&2
    exit 1
fi

# Проверка что файл не пустой
if [[ ! -s "$FRPC_TMP" ]]; then
    echo "ERROR: Скачанный файл пустой" >&2
    rm -f "$FRPC_TMP"
    exit 1
fi

chmod ugo+x "$FRPC_TMP"

echo "Обновление frpc..."

setsid bash -c "sleep 2 && systemctl stop frpc && mv '$FRPC_TMP' '$FRPC_DEST' && systemctl restart frpc" &

echo "OK: frpc обновлён, сервис перезапускается..."
exit 0
