chocolatey2

Chocolatey

Command-line package manager for Windows. Install, upgrade and remove software unattended with choco, from the community repository or your own internal feed. Chocolatey CLI is free and open source (Apache 2.0).

OSWindows
Size28 MB
Version 2.4.3
FreeLatest version: 2.7.4Actively developed

Chocolatey is a command-line package manager for Windows. Sysadmins and MSP technicians use it to install, upgrade and remove software with one command instead of clicking through installers. People searching for a Chocolatey download should know it is not installed from a zip: you run the official PowerShell bootstrap script, and the choco command does the rest.

The core tool, Chocolatey CLI, is free and open source under the Apache 2.0 licence. Chocolatey Software also sells commercial editions for business, with extras such as package internalisation and central management. The free CLI on its own covers most scripting and workstation-build work.

Chocolatey at a glance

ItemDetails
Latest versionChocolatey CLI 2.7.4 (19 August 2026)
LicenceFree and open source, Apache 2.0 (commercial business editions available separately)
PlatformsWindows (desktop and Server versions still supported by Microsoft); Linux Docker image for package building
DeveloperChocolatey Software, Inc.
Official websitechocolatey.org
Best forScripted workstation builds, keeping third-party apps patched, internal software repositories

What it does

  • Installs software unattended from the Chocolatey Community Repository or from your own feeds (NuGet v2 compatible, on a file share or a repository server).
  • Upgrades everything at once with choco upgrade all, or shows what is out of date with choco outdated.
  • Pins packages so a specific version is never upgraded by accident.
  • Installs a whole machine’s software list from a packages.config file and exports the current list with choco export.
  • Wraps existing MSI and EXE installers with silent switches in PowerShell-based packages you can build yourself with choco new and choco pack.
  • Integrates with configuration tools. Ansible, for example, has a win_chocolatey module.

How sysadmins use it

Build a new workstation in one command

  1. Open an elevated PowerShell window.
  2. Turn on global confirmation so scripts do not stop at prompts (or add -y to each command):
    choco feature enable -n=allowGlobalConfirmation
  3. Install the standard toolset:
    choco install 7zip git vscode googlechrome notepadplusplus -y
  4. For repeatable builds, keep the list in a file and install from it:
    <?xml version="1.0" encoding="utf-8"?>
    <packages>
      <package id="7zip" />
      <package id="git" />
      <package id="vscode" />
    </packages>
    choco install C:buildpackages.config -y

Keep third-party apps patched

  1. Check what is out of date: choco outdated
  2. Pin anything that must stay on a tested version: choco pin add -n=googlechrome
  3. Upgrade the rest: choco upgrade all -y
  4. Schedule the upgrade as a SYSTEM task in Task Scheduler, and review the log in C:ProgramDatachocolateylogschocolatey.log.

Use an internal repository

  1. Host your approved packages on an internal NuGet feed or a file share.
  2. Add it with top priority and disable the public source:
    choco source add -n=internal -s="https://repo.example.local/chocolatey/" --priority=1
    choco source disable -n=chocolatey
  3. Machines now install only what you have tested. This also avoids the community repository’s rate limits for large fleets.

Install and first run

Run this from an administrative PowerShell session. It is the official install command:

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'))
  • Requirements: a Windows version supported by Microsoft, PowerShell v3 or later for the installer (TLS 1.2), and .NET Framework 4.8 for Chocolatey CLI 2.x. The script tries to install .NET 4.8 if it is missing, and that may need a reboot.
  • Location: Chocolatey installs to C:ProgramDatachocolatey and adds choco to the PATH. Open a new shell afterwards.
  • Proxy and offline: behind a proxy, set the proxy before running the script. For air-gapped machines, the documentation describes an offline install from the chocolatey nupkg.
  • Old servers: Windows Server 2008 R2 and 2012 need the TLS 1.2 updates and registry settings before they can reach the community repository.

Check it works with choco --version. In version 2.x, choco list shows only locally installed packages; use choco search to query a source.

Limitations

  • Community packages are maintained by volunteers. Many download the vendor installer at install time, so a package can break when a vendor changes a URL. Test before rolling out.
  • Chocolatey tracks what it installed. Software installed by hand is not managed unless you reinstall or adopt it through a package.
  • It runs on Windows only; the Linux Docker image is for building packages, not for managing Linux.
  • Features such as package internalisation, a self-service GUI for users, and central reporting belong to the paid business editions.
  • The public repository applies rate limits, so large fleets should use an internal feed.

Chocolatey vs alternatives

Microsoft’s winget ships with current Windows and reads Microsoft’s manifest repository. It is good for ad-hoc installs, but offers less control over internal packaging. Scoop installs portable apps per user without admin rights and suits developers more than fleet management. For multi-machine configuration, Ansible can call Chocolatey on Windows hosts, so the two work well together.

FAQ

Is Chocolatey free?

Yes. Chocolatey CLI is free and open source (Apache 2.0) for personal and business use. The paid editions add business management features.

How do I install Chocolatey on Windows 11?

Open PowerShell as administrator and run the official install command shown above, then open a new window and run choco --version.

Chocolatey vs winget: which should I use?

winget is built in and fine for quick installs. Chocolatey gives more control through internal feeds, pinning, packages.config and custom packages, so many admins use it for managed fleets.

How do I list installed Chocolatey packages?

Run choco list. Since version 2.0 it shows local packages only, and the old --local-only switch is gone.

How do I upgrade or uninstall with Chocolatey?

Use choco upgrade <package> -y or choco upgrade all -y, and choco uninstall <package> -y to remove software.

Is Chocolatey safe?

The CLI is open source, and community packages go through moderation and automated checks. Packages still run install scripts as administrator, so review them or use an internal repository with tested packages.

Is there Chocolatey for Mac or Linux?

No. Chocolatey manages Windows software; on macOS the usual equivalent is Homebrew, and on Linux the distribution’s own package manager.

Last checked against official sources: 30 September 2026 (developer website: chocolatey.org). Versions and licence terms change — confirm on the developer's site before deploying in production.

Other articles

Submit your application