Chocolatey Package Manager

 Chocolatey is a command-line package manager for Windows operating system based on the NuGet package manager. Chocolatey manages its own package feed; however, you can set up your own local repository for the enterprise environment to control the package's source for installation. If you are familiar with Linux or macOS environments, the Chocolatey is similar to Apt and Homebrew, respectively

Prerequisites

  • Windows 10 + / Windows Server 2012+
  • PowerShell 5.1 +

Installing Chocolatey on Windows

You can install Chocolatey by either using the PowerShell script method or downloading the offline installer. Follow the steps below to download and install Chocolatey using the online method:

  • Open PowerShell in Administrator Mode by right-clicking on the application and choosing Run as Administrator:
https://s3-us-west-2.amazonaws.com/secure.notion-static.com/8c35ca6e-9941-4e5d-a532-9f2df662e185/01-powershell-admin.png
PowerShell Admin Mode
  • You need to update the script execution policy on your device before installing any package. Run the following command in the PowerShell terminal to allow script execution for the system:
Set-ExecutionPolicy Bypass -Scope Process
  • Type Y when prompted for confirmation and allow the changes:
https://s3-us-west-2.amazonaws.com/secure.notion-static.com/29ab4b8f-e391-4d73-94f0-17f29e08285f/02-policy-update.png
The next command does a few different things before installing chocolatey on the system. The first part of the command checks the security settings for the system, followed by downloading and running the install.ps1 that's downloaded from the chocolatey website without any additional dialog box. The install.ps1 PowerShell file contains the instructions to install and prepare the package manager for the system.
[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('<https://chocolatey.org/install.ps1>'))
Installing Chocolatey using PowerShell
  • The output of the command will look like this:
https://s3-us-west-2.amazonaws.com/secure.notion-static.com/e3eaaeee-3b9e-49ff-8079-aea21189e799/03-choco-install.png
Chocolate Install Output
  • Verify the installation using the following command while in the same terminal session:
choco --help
The output of the command will look like this, confirming the installation of chocolatey on the system:
https://s3-us-west-2.amazonaws.com/secure.notion-static.com/e05403e3-8690-444c-b0cf-640cab0fe811/04-choco-help.pngExploring Commands and Searching Chocolatey Package

Like most other PowerShell commands and tools, Chocolatey also comes with an inbuilt search and help command to make it easier to find the packages and get help for associated commands.

You can search for packages using the listsearch, or info command. All these commands are an alias for each other and display similar results. The result for a package winrar looks like this:

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/801e1493-fe9a-4245-99e7-150d9443545e/05-choco-search.pngThe output displays the list of packages that matched the search. In this case, the output only displays Winrar 6.02. However, they may be more packages depending on the package name and similar packages release from different vendors. You can optionally search for winrar and observe the difference in the output.

Another useful command to know while using Chocolatey is the info command. Unlike the search command, this command gives out detailed information about the package and lists install instructions and any accepted parameters for the installation of the package. Below is an example of the Winrar package:

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/f4c96b30-530a-4eb0-bb56-8b1669727011/06-info.pngThe info command is very beneficial when identifying the details of what the package does and other relevant information about the package you will install.

Another common argument that you might often use when identifying any command's possible commands and arguments are the help argument. The  --help/? or -? can be used to get assistance with almost any command.

Installing Chocolatey Packages

Once you have done enough research on the package you want to install, the next step is to download and install the package. The command used to install the chocolatey package is choco installfollowed by the name of the package of choice. The install command first downloads the package from the remote repository and then installs it on the operating system as part of one command.

The output of the command choco install Winrar will look like this:

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/66be044b-9584-4383-b21e-7fbc91a8bbc7/07-install-winrar.pngYou will be prompted to confirm the action if you have not specified the auto-accept parameters in the original command. You can add -y--yes or --confirm at the end of your command to suppress the prompt in the terminal.
If you are planning to install a package but unsure about what exactly the package will do to install the application, you can add --whatif argument to the end of the statement to understand the process that will follow. Below is an example of whatif for Winrar installation:
https://s3-us-west-2.amazonaws.com/secure.notion-static.com/33ca3172-6eff-47a6-bd51-9a5ea89bd14d/08-winrar-whatif.pngWhile installing a new package, you may have some old versions lying around on the system that you must update. Luckily, chocolatey has a outdated command that identifies any old packages installed on the system that can be updated. The following command list all the packages that are not using the latest version:                
choco outdated
If you identify any old package that you'd like to update, chocolatey comes with upgrade a command that updates one or multiple packages behind the latest version release. If the package is not installed on the system already, the upgrade command will prompt and install the application for you.

Run the following command and see the results in action:

choco upgrade googlechrome

Uninstalling Chocolatey Packages

Since you've seen multiple ways to install Chocolatey packages, the uninstall command only takes uninstall to remove any package from the system.

Run the following command to uninstall the Winrar package install earlier:

choco uninstall winrar
The output will look like this:
https://s3-us-west-2.amazonaws.com/secure.notion-static.com/b3d69615-acc8-4f67-b0b0-c7dbb551f821/09-winrar-uninstall.png

Comments

Popular posts from this blog

Email Sending through O365 using OAuth Protocol

IISRESET vs App Pool Recycling ?

Deploy .Net6.0 Web api with docker