Разработчикам
Загрузки Homebrew или npm не проходят на Mac
Homebrew скачивает файлы через curl и Git. npm скачивает из своего реестра. Каждый инструмент читает собственные настройки прокси и сертификатов.
Симптомы
brew installостанавливается с «curl: (28) … timed out» или «Failed to download resource».npm installостанавливается с ETIMEDOUT, ECONNRESET или ошибкой сертификата.- Загрузка не удаётся только в корпоративной сети или через VPN.
- Загрузка начинается, а затем останавливается на медленном подключении.
Вероятные причины
- Прокси, о котором инструмент не знает. Homebrew использует
http_proxy,https_proxyиall_proxy. npm использует свои настройкиproxyиhttps-proxyили те же переменные. - Инспекция TLS. Корпоративный прокси подписывает трафик собственным сертификатом. См. Сертификаты корпоративного прокси ломают инструменты Терминала на Mac.
- Неверный реестр npm. Старая настройка
registryможет указывать на сервер, который вам недоступен. - Медленное или лимитное подключение. Большие загрузки могут не успевать по слабому Wi-Fi или через точку доступа.
Как проверить
Пусть Homebrew проверит вашу систему.
brew doctorПокажите конфигурацию Homebrew и системы.
brew configПокажите настройки реестра и прокси npm.
npm config get registry npm config get proxy npm config get https-proxyЗапросите ответ у реестра npm.
npm pingПроверьте сервер загрузки напрямую через curl.
curl -v -o /dev/null https://formulae.brew.sh/api/formula.json
Как исправить
Для Homebrew за прокси задайте переменную прокси в той же оболочке.
export https_proxy=http://proxy.example.com:8080Для npm за прокси задайте прокси npm.
npm config set https-proxy http://proxy.example.com:8080Удалите старую настройку реестра npm, чтобы npm использовал реестр по умолчанию.
npm config delete registryПусть Homebrew делает больше попыток скачать файл.
export HOMEBREW_CURL_RETRIES=5Если ваша компания использует зеркало, укажите его. Для зеркал Homebrew использует
HOMEBREW_BOTTLE_DOMAINиHOMEBREW_API_DOMAIN.При ошибках сертификата добавьте корневой сертификат компании. См. Сертификаты корпоративного прокси ломают инструменты Терминала на Mac.
С Kilobat
Перед большой установкой проверьте, лимитная ли сеть, идёт ли трафик через VPN и не медленная ли она.
kilobat conditionsНайти уровень, на котором блокируется сервер загрузки. Добавьте
--app, чтобы использовать переменные прокси этого процесса.kilobat why https://ghcr.io/v2/homebrew/core --app process:curlНе давать Mac уснуть, пока идёт установка.
kilobat awake -- brew upgradeЭти команды бесплатны. См. Проверка сети перед большой загрузкой в агенте.
Вопросы
Использует ли Homebrew прокси из Системных настроек?
В документации Homebrew перечислены переменные прокси для curl, Git и Subversion. Задайте https_proxy в своей оболочке.
Сколько ждёт npm?
Согласно документации npm, по умолчанию fetch-timeout равен 300000 ms, то есть пяти минутам, а fetch-retries — 2.
Источники
- Документация Homebrew: man-страница, переменные окружения
- Документация npm: config
- curl(1), man-страница из macOS 27.2
Источники проверены 29 октября 2026 г. Man-страницы — те, что установлены вместе с macOS; откройте любую командой man <name> в Терминале.