Установка пакетов из репозитория Chocolatey в Windows

Менеджер пакетов Chocolatey все еще актуален, несмотря на то, что со времен старых гайдов в Windows появился встроенный WinGet. Даже при наличии штатного средства от Microsoft, Chocolatey остается проверенным инструментом с более зрелой экосистемой и огромной базой пакетов, которые часто отсутствуют в официальном репозитории.

Со временем проект разделился на бесплатную версию Community и платную Business. Для обычных пользователей ничего не изменилось, бесплатное издание поддерживается волонтерами и дает доступ ко всем пакетам.

Установка Chocolatey

Для установки самого Chocolatey достаточно одной команды. Запускаем PowerShell от имени администратора и вводим команду:


Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))

Шпаргалка по командам Chocolatey

Для работы с Chocolatey обязательно используйте PowerShell с правами администратора (через «Win+X»). Без них установка программ в системные папки будет заблокирована из-за отсутствия доступа.

Найти и установить пакет:


choco search <название_пакета>

# и

choco install <название_пакета>

Посмотреть все установленные пакеты:

choco list ––local-only

Обновление всех или конкретного пакета:


choco upgrade all ––yes

# или

choco upgrade <название_пакета> ––yes

Удаление пакета со всеми зависимостями:

choco uninstall <название_пакета> -–remove-dependencies ––yes

Удаление пакета с указанием конкретной версии:

choco uninstall <название_пакета> ––version=66.0.3 ––remove-dependencies ––yes

Если удаление пакета рушит зависимости, то оно будет отменено!

Удаление всех пакетов:

choco uninstall all ––yes

Chocolatey — это не надстройка над Windows, а параллельная система. Она работает по собственной логике и не видит программы, установленные через обычные инсталляторы (.exe или .msi). Чтобы менеджер мог управлять софтом, его нужно устанавливать именно через choco. Программы можно как выводить из-под контроля менеджера, так и передавать под его управление. Не пытайтесь смешивать подходы, база данных может рассинхронизироваться, что приведет к ошибкам в будущем.

Если «родной» для Windows WinGet видит систему насквозь, то Chocolatey требует большего порядка (установки только через себя), взамен предлагая гораздо более мощную автоматизацию и огромную библиотеку софта, накопленную годами.

Установка GUI

choco install chocolateygui -y

В гуи удобно не только управлять софтом, но и просматривать зависимости пакетов, — так вы сразу увидите, что именно «притянет» за собой программа при установке. Chocolatey работает с зависимостями гораздо агрессивнее, чем обычные инсталляторы. Если программе для запуска нужен специфический .NET Framework, SQL Server Express или определенная версия C++ Redistributable, менеджер не просто выдаст ошибку «файл не найден», а сам найдет, скачает и установит все недостающие компоненты.

После этого они ложатся под управление исключительно Chocolatey — менеджер будет сам отслеживать их актуальность и предлагать обновления, даже если это специфические системные патчи, которые обычно скрыты в недрах Windows.

Советы по применению

Само приложение choco.exe находится по адресу C:\ProgramData\chocolatey, который прописан в переменной окружения $env:ChocolateyInstall. Внутри этой директории, в папке lib, хранятся все установленные пакеты, а в config — файлы конфигурации. Остальные папки содержат служебные утилиты и модули PowerShell, необходимые для работы менеджера. К слову, если вы хотите быстро попасть в эту папку, просто нажмите «Win+R» и введите %ChocolateyInstall% — проводник сразу откроет нужную директорию.

Chocolatey идеально подходит для программ без встроенного автообновления, таких как FileZilla или HeidiSQL. Вместо ручного поиска и скачивания дистрибутивов вы просто обновляете их одной командой в консоли или одной кнопкой в гуи.

В 99% случаев читающий данную статью является программистом, поэтому важно учесть один нюанс. Для инструментов разработки Chocolatey использует систему шимов (shims). Вместо добавления прямого пути в переменную окружения PATH, менеджер генерирует крошечные файлы-посредники в своей папке bin. Для простых утилит это удобно, но для языков программирования часто становится проблемой:

  • Конфликты в IDE. Среды разработки (VS Code, PhpStorm, PyCharm) могут некорректно определять пути к интерпретаторам через такие «прокладки», из-за чего ломается отладка или поиск библиотек.
  • Проблемы с путями. Из-за посредника программа может не найти свои настройки или библиотеки, которые она ожидает увидеть при стандартном запуске.

Результат выполнения команды where.exe для Node.js, Python и Ruby в консоли PowerShell

Если вы не используете Docker, устанавливайте языки программирования (Node.js, Python, Ruby) официальными дистрибутивами. Это гарантирует «чистые» системные пути (как на скрине выше) и избавит от лишних забот при настройке рабочего окружения. Оставьте Chocolatey для прикладного софта!

Автор: Kupereal

Занимаюсь разработкой и продвижением веб-сайтов. Развиваю каналы в мессенджерах. Настраиваю рабочее окружение (Win/Lin/Mac) и весь серверный стек для проектов.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *