Обновить setup_vps.sh

This commit is contained in:
NW 2025-05-13 15:33:20 +00:00
parent a7613a55f8
commit 098e134e3a

View File

@ -33,48 +33,40 @@ get_arch() {
esac esac
} }
# Функция для установки dry # Функция для установки dry с учетом архитектуры ARM
install_dry() { install_dry() {
if command -v dry &> /dev/null; then if command -v dry &> /dev/null; then
echo -e "${GREEN}dry уже установлен.${NC}" echo -e "${GREEN}dry уже установлен.${NC}"
return return
fi fi
echo -e "${YELLOW}Установка dry...${NC}" echo -e "${YELLOW}Установка dry для ARM...${NC}"
# Вариант 1: Установка через официальный скрипт # Для ARM устройств используем установку из репозиториев
if curl -sSf https://moncho.github.io/dry/dryup.sh | sudo sh; then if sudo apt-get install -y dry; then
sudo chmod 755 /usr/local/bin/dry echo -e "${GREEN}dry успешно установлен из репозиториев.${NC}"
echo -e "${GREEN}dry успешно установлен через официальный скрипт.${NC}"
return return
fi fi
echo -e "${YELLOW}Официальный скрипт не сработал, пробуем альтернативные методы...${NC}" # Если не удалось установить из репозиториев, пробуем собрать из исходников
echo -e "${YELLOW}Установка зависимостей для сборки dry...${NC}"
sudo apt-get install -y git golang make
ARCH=$(get_arch) echo -e "${YELLOW}Клонирование репозитория dry...${NC}"
echo -e "${YELLOW}Архитектура системы: $ARCH${NC}" git clone https://github.com/moncho/dry.git /tmp/dry-build
cd /tmp/dry-build
# Вариант 2: Установка из репозиториев (для ARM) echo -e "${YELLOW}Сборка dry...${NC}"
if [[ "$ARCH" == "arm64" || "$ARCH" == "arm" ]]; then if make build; then
echo -e "${YELLOW}Попытка установки dry из репозиториев...${NC}" sudo mv dry /usr/local/bin/
sudo apt-get install -y dry && return echo -e "${GREEN}dry успешно собран и установлен.${NC}"
else
echo -e "${RED}Не удалось собрать dry из исходников.${NC}"
fi fi
# Вариант 3: Ручная установка бинарника # Удаляем временные файлы
if [ "$ARCH" != "unsupported" ]; then cd ~
LATEST_VERSION=$(curl -s https://api.github.com/repos/moncho/dry/releases/latest | grep 'tag_name' | cut -d\" -f4) rm -rf /tmp/dry-build
DRY_URL="https://github.com/moncho/dry/releases/download/${LATEST_VERSION}/dry-linux-${ARCH}"
echo -e "${YELLOW}Скачивание dry для архитектуры ${ARCH}...${NC}"
if curl -sSL $DRY_URL -o /tmp/dry; then
sudo mv /tmp/dry /usr/local/bin/dry
sudo chmod +x /usr/local/bin/dry
echo -e "${GREEN}dry успешно установлен вручную.${NC}"
return
fi
fi
echo -e "${RED}Не удалось установить dry. Пропускаем...${NC}"
} }
# Функция для определения дистрибутива # Функция для определения дистрибутива