PowerShell integra in Windows 10 il modulo PackageManagement: si tratta di uno strumento, compatibile anche con Windows Server 2016 e Windows Server 2019, che permette di installare, disinstallare e gestire programmi da un repository locale o esterno.
Il modulo PackageManagement consente di effettuare operazioni da riga di comando molto simili a quelle che si possono svolgere con il comando apt-get
dal terminale delle distribuzioni Linux Debian, Ubuntu e derivate.

Per ottenere la lista dei comandi disponibili, è sufficiente aprire PowerShell premendo la combinazione di tasti Windows+X
, scegliere Windows PowerShell (amministratore) quindi digitare Get-Command -Module PackageManagement
.
Utilizzando il comando Find-PackageProvider
è possibile ottenere la lista delle varie sorgenti attraverso le quali è possibile scaricare e installare i pacchetti software in Windows.

Chocolatey è un repository per Windows gestito dalla comunità che ad oggi contiene circa 7.500 differenti pacchetti software pronti per l’installazione.
Si tratta del più vasto registro online di pacchetti per Windows: i pacchetti di Chocolatey racchiudono tutto ciò che è necessario per gestire un particolare programma comprendendo procedure d’installazione, eseguibili, file compressi, script, il tutto in un unico file compilato (formato nupkg).
La lista completa dei programmi installabili usando Chocolatey è disponibile a questo indirizzo.

Per abilitare l’utilizzo di Chocolatey in Windows, basta digitare – sempre al prompt di PowerShell aperto con i diritti di amministratore – il seguente comando:
PowerShell provvederà a scaricare e a eseguire lo script ufficiale per la configurazione di Chocolatey sul sistema locale. Verrà creata anche la variabile globale choco
in modo che sia possibile installare i pacchetti software usando la sintassi choco install nomepacchetto
.
Per evitare che venga richiesta conferma a ogni installazione, si può impartire il comando seguente:
Il nomepacchetto può essere desunto da questa pagina oppure facendo una ricerca dal prompt di PowerShell. Esempio:
Il comando consente di cercare tutti i pacchetti che nel nome contengono la stringa adobe.

Dopo aver utilizzato il comando choco install
, il pacchetto specificato risulterà immediatamente disponibile nella lista dei programmi caricati in Windows.
È possibile anche richiedere l’installazione di una versione specifica usando la sintassi choco install snagit --version
seguita dal numero della release d’interesse.

Nell’esempio, 7-Zip viene installato usando il comando choco install 7zip.install
. Come si vede, tutti i riferimenti all’utilità 7-Zip vengono automaticamente aggiunti al menu Start di Windows.
Si possono usare i comandi choco upgrade
e choco uninstall
, sempre specificando il nome del pacchetto software, per aggiornare o disinstallare i programmi.
Tutti i comandi disponibili con Chocolatey sono ottenibili digitando choco -?
. Se si volesse salvare e stampare la guida, basterà digitare choco -? | Out-File -FilePath $env:userprofile\guida_choco.txt | notepad $env:userprofile\guida_choco.txt
.
Il file della guida verrà automaticamente aperto con il Blocco Note di Windows.
Grazie a Chocolatey è possibile automatizzare l’installazione dei software più utilizzati in ambiente Windows e gestirne l’intero ciclo di vita usando un unico strumento.
Chocolatey è una soluzione open source per il package management in Windows che comunque è disponibile anche sotto forma di pacchetto a pagamento: qui le differenze tra le varie edizioni disponibili.