Open-source project
chocolatey/ChocolateyGUI avatar
chocolatey/ChocolateyGUI

Chocolatey GUI wraps the choco client in a desktop app, and still targets .NET Framework 4.8

A delicious GUI for Chocolatey

1,828 stars273 forksC#Apache-2.0

At a glance

What is it?
ChocolateyGUI is a C# Windows front end for the Chocolatey package manager, covering install, uninstall, update and package details. It installs through Chocolatey itself, builds through Cake with a WiX toolset, and its support process asks you for verbose logs before anything else.
Who is it for?
Adopt ChocolateyGUI on a Windows workstation where people who do not live in a terminal need to install and update packages, and where.NET Framework 4.8 is already present. Skip it in any automated pipeline, where choco.exe is the interface and a GUI adds a layer with nothing to configure.
Can I use it commercially?
Yes. Apache-2.0 is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
Is it still maintained?
Yes. The repository last received commits 37 days ago.
What is it written in?
Mainly C#, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on October 22, 2026, and from our analysis. They are not legal advice.

Editorial analysis

A front end, not a package manager of its own

The README describes Chocolatey GUI as a user interface for Chocolatey, the machine package manager for Windows. That framing sets expectations correctly. The project contributes a desktop window for the Chocolatey command-line client.

The feature list is four items: view all installed and available packages, update installed but outdated packages, install and uninstall packages, and see detailed package information.

That is the whole surface. There is no private repository management, no package authoring, no deployment orchestration in the README. If your requirement list includes any of those, this is not the tool, and the choco command line underneath is where you would look instead.

The primary language is C# and the runtime requirement is.NET Framework 4.8. Supported systems are stated as Windows 7 SP1 and above and Windows Server 2008 R2 SP1 and above. The desktop support statement is notable, since Windows 7 is long out of vendor support and.NET Framework is Windows-only.

Installation is one choco command, which is the whole story

The installation section is a single instruction:

powershell
choco install ChocolateyGUI

Chocolatey GUI installs through Chocolatey. The README does not list a separate installer or standalone download link, and it lists.NET Framework 4.8 as a requirement. For anyone deploying it across a set of workstations, that means it uses their existing Chocolatey installation mechanism.

The flip side is that the tool is not independently distributable. If you are evaluating it, the practical first step is getting Chocolatey onto the machine, not evaluating the GUI.

Documentation lives at the Chocolatey documentation site under the chocolatey-gui section, linked from both the README and the repository homepage field. Community support is a Discord room and an IRC channel at #chocolatey.

Building means Cake, WiX and an elevated PowerShell

The build assumes a machine with Visual Studio 2019 or newer already installed, and adds the WiX toolset through Chocolatey:

powershell
choco install wixtoolset -y

WiX is what packages the application, so the Visual Studio integration for WiXToolset has to be installed as well. The WiX extension for Visual Studio 2019 is the one the README points at.

There is an optional step for code analysis tooling, where FXCOPDIR is set by locating the analyser with vswhere:

powershell
$FXCOPDIR = vswhere -products * -latest -prerelease -find **/FxCopCmd.exe
[Environment]::SetEnvironmentVariable("FXCOPDIR", $FXCOPDIR, 'User')
refreshenv

The build itself is build.ps1, run from an administrative PowerShell window in the cloned repository, which invokes Cake. The repository root shows how much scaffolding sits behind that one command: recipe.cake and cake.config, GitVersion.yml for versioning, GitReleaseManager.yaml for release automation, a nuspec directory, config.wyam for documentation, and a family of build batch files including build.bat, build.debug.bat, build.official.bat and build.official.localrelease.bat.

Source lives under Source/, with Tests/ and a TESTING.md alongside. A Vagrantfile at the root suggests at least part of the test environment is provisioned rather than hand configured.

The default branch is develop, which is where the build workflow status badge points.

Submitting an issue starts with logs, and the logs are a hazard

The issue guidance is more detailed than most, and it is worth reading before you file anything.

First, the issue has to concern Chocolatey GUI itself rather than a package or the website. Search existing issues with one relevant term first, then add terms if results are too broad. Enhancements are explicitly not handled through issues and are directed at CONTRIBUTING instead.

The core requirement is debug and verbose output, produced with -dv or --debug --verbose, attached to the ticket or linked from a gist. choco.exe writes to a file under $env:ChocolateyInstall\log\, so the log can be collected directly rather than by redirecting screen output. The README asks for the entire log from the run rather than the relevant excerpt, on the grounds that trimming loses what triage needs.

Then the warning. The debug and verbose output for some commands can contain sensitive data such as passwords or apiKeys, and those must be removed before submitting. The README goes further on gist handling: save the file as log.sh, mark the gist secret so it does not clutter your public gists, and if a secret does get committed, delete the gist and create a new one rather than editing, because gist history is visible to anyone while issue history is not retained beyond email.

That is a specific and correct piece of operational advice, and it is the reason to read this section rather than skim it. Screenshots and animated gifs are also requested where possible, and the choco version, OS version and PowerShell version should be included, which the debug script is expected to capture.

Localisation runs through transifex, credits through tracked files

Translation is handled on transifex, with a how-to article on the Chocolatey documentation site. The repository reflects that arrangement at the root, with a .tx/ directory for the transifex client configuration and .templates/ for the strings, and .notifications/ alongside them.

Attribution is handled by tracked files rather than by the README alone: CREDITS.md at the root plus CREDITS.json and a rendered CREDITS.pdf, and a COMMITTERS.md that the README describes as a list for people who commit regularly. THANKS.md exists for contributors who are not committers.

Licensing is Apache 2.0, with LICENSE.txt and NOTICE at the root. Apache-2.0 carries an explicit patent grant, which matters more than usual for a client that ends up on locked down corporate machines.

Where the GUI is the wrong tool

The obvious wrong case is automation. Package installation in a CI pipeline, a deployment script or a configuration management run is a command line activity, and a GUI adds a process that cannot be driven non-interactively and cannot assert on exit conditions.

The second wrong case is a machine without the runtime..NET Framework 4.8 is required, so the GUI cannot be dropped onto a Windows system where that framework is not installed.

The third is scope. Looking at a package before installing it is a genuinely different workflow from browsing what is already installed, and only the second workflow is listed as a GUI feature.

A related boundary: if the problem is with a package rather than with the GUI, this is the wrong repository, as the issue guidance says in its first prerequisite.

Release pace and the current state of the project

The repository is not archived and the last push was on 2026-09-16. The version numbering moves in minor increments: 3.1.0 on 2026-05-12, 3.2.0 on 2026-06-10 and 3.3.0 on 2026-09-16, with 3.3.0 carrying a plain version tag rather than a descriptive release name.

There is a CHANGELOG.md at the root, so the release history is inspectable without reconstructing it from commits.

Build and release automation is visible in the repository: GitVersion.yml and GitReleaseManager.yaml handle version derivation and release drafting, and the GitHub Actions workflow for the develop branch carries the build status badge the README displays. Contributing and testing guidance are separate documents, CONTRIBUTING.md and TESTING.md, and the hacktoberfest topic tag indicates the project participates in that seasonal cycle.

Editorial conclusion

Adopt ChocolateyGUI on a Windows workstation where people who do not live in a terminal need to install and update packages, and where.NET Framework 4.8 is already present. Skip it in any automated pipeline, where choco.exe is the interface and a GUI adds a layer with nothing to configure. Verify first what your logs will contain before attaching them to an issue, because the project asks for full verbose output and warns that it can include passwords or apiKeys.

Frequently asked questions

How do I install Chocolatey GUI on Windows?

Run choco install ChocolateyGUI. Chocolatey GUI installs through Chocolatey itself, so Chocolatey has to be present on the machine first. There is no separate installer in the README.

What does Chocolatey GUI need to run?

.NET Framework 4.8, and it should work on all Windows operating systems from Windows 7 SP1 and above, plus Windows Server 2008 R2 SP1 and above.

How do I build Chocolatey GUI from source?

Install Visual Studio 2019 or newer, run choco install wixtoolset -y, install the WiX toolset Visual Studio extension, then run build.ps1 from an administrative PowerShell window in the cloned repository, which invokes Cake.

What logs does the Chocolatey GUI project want with a bug report?

Debug and verbose output produced with -dv or --debug --verbose, taken from the choco.exe log under $env:ChocolateyInstall\log\. The project warns that this output can contain passwords or apiKeys which must be removed before attaching it.

What licence is Chocolatey GUI released under?

Apache 2.0, with the terms in LICENSE.txt and the attribution requirements in the NOTICE file at the root of the repository.

Official sources

  1. chocolatey/ChocolateyGUI on GitHub
  2. License: Apache-2.0
  3. Project website
  4. README
  5. Releases
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/chocolatey-chocolateygui.svg)](https://hysenlabs.com/projects/chocolatey-chocolateygui)

Was this useful?