#!/bin/bash # Скачивает Firefox ESR и GeckoDriver в vendor/ для включения в репозиторий # (офлайн-развёртывание). Запуск без root: ./scripts/download-vendor.sh set -e SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" REPO_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)" VENDOR="$REPO_ROOT/vendor" FIREFOX_ESR_URL="https://download.mozilla.org/?product=firefox-esr-latest-ssl&os=linux64&lang=en-US" GECKODRIVER_RELEASES="https://api.github.com/repos/mozilla/geckodriver/releases/latest" mkdir -p "$VENDOR/firefox-esr" "$VENDOR/geckodriver" echo "=== Firefox ESR ===" if [ -x "$VENDOR/firefox-esr/firefox" ]; then echo "Уже есть: $VENDOR/firefox-esr/firefox" else echo "Скачивание..." TMP="$(mktemp -d)" trap "rm -rf $TMP" EXIT (cd "$TMP" && wget -q -O firefox-esr.tar.bz2 "$FIREFOX_ESR_URL" && tar xjf firefox-esr.tar.bz2) rm -rf "$VENDOR/firefox-esr" mv "$TMP/firefox" "$VENDOR/firefox-esr" echo "Готово: $VENDOR/firefox-esr/firefox" fi echo "" echo "=== GeckoDriver ===" if [ -x "$VENDOR/geckodriver/geckodriver" ]; then echo "Уже есть: $VENDOR/geckodriver/geckodriver" else echo "Скачивание..." TAG=$(curl -sS "$GECKODRIVER_RELEASES" | sed -n 's/.*"tag_name": *"v\([^"]*\)".*/\1/p' | head -1) [ -z "$TAG" ] && TAG="0.36.0" URL="https://github.com/mozilla/geckodriver/releases/download/v${TAG}/geckodriver-v${TAG}-linux64.tar.gz" wget -q -O - "$URL" | tar xz -C "$VENDOR/geckodriver" echo "Готово: $VENDOR/geckodriver/geckodriver" fi echo "" echo "Компоненты в vendor/ готовы для коммита в репозиторий."