====== Chocolatey : l'installeur de package sous PowerShell ======
Depuis longtemps dans le monde de linux, il a été compris qu'il était nécessaire pour suivre l'évolution des applications et des différents composants qui constituent son système d'exploitation. Depuis Windows 8, Microsoft a commencé à l'intéresser à proposer une solution, d'abord via un "Market" via Windows Store (renommé depuis en Microsoft Store) puis pour le monde professionnel avec le « [[https://docs.microsoft.com/en-us/powershell/module/packagemanagement/?view=powershell-6|PackageManagement]] ».
Cependant une équipe s'est réapproprié cette technologie, [[https://chocolatey.org/
|Chocolatey]]. Leur slogan est le suivant: //"Chocolatey Software s’efforce d’aider notre communauté, nos clients et nos partenaires avec des solutions qui aident à combler les lacunes qui sont souvent ignorées. Nous proposons une approche simple, pragmatique et ouverte de la gestion des logiciels."//.
Il est important de ce souvenir que ce module est utilisable dans un cadre privé de manière gratuite, cependant dans le monde professionnel, il faudra passer à la caisse.
===== Installation =====
==== Prérequis ====
* Windows 7 Minimum / Windows Server 2003 Minimum
* PowerShell v2 Minimum
* .NET Framework 4 Minimum
L'installation se fait via Windows PowerShell et demande des droits administrateurs.
Via leur Script PowerShell
Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
===== Utilisation =====
====Via Interface Graphique ====
Une fois que Chocolatey sera sur votre ordinateur, si vous le souhaitez, il existe une interface graphique. Il faudra l'installer via une commande.
choco install chocolateygui -y
Après son installation, vous pourrez lancer l’application Chocolatey GUI depuis votre menu démarrer. Avec cela vous pourrez installer, désinstaller, visualiser et mettre à jour vos paquets.et comme pour la version en ligne de commande, vous pourrez visualiser les paquets installés, supprimer vos paquets ou encore en installer de nouveau.
{{ :script:powershell:2019-10-06_09_59_24-source_-_cet_ordinateur.png |}}
{{ :script:powershell:2019-10-06_10_00_42-source_-_cet_ordinateur.png? |}}
{{ :script:powershell:2019-10-06_10_01_06-source_-_chocolatey.png |}}
==== Via Commande PowerShell ====
{{ :script:powershell:choco-1.png?400|}}
Installer une application, dans cette exemple VideoLan VLC
Choco install vlc -y
\\
\\
\\
\\
\\
\\
Voici un ensemble d'exemple possible d'installation :
choco install sysinternals
choco install notepadplusplus googlechrome atom 7zip
choco install notepadplusplus --force --force-dependencies
choco install notepadplusplus googlechrome atom 7zip -dvfy
choco install git -y --params="'/GitAndUnixToolsOnPath /NoAutoCrlf'"
choco install git -y --params="'/GitAndUnixToolsOnPath /NoAutoCrlf'" --install-arguments="'/DIR=C:\git'"
choco install nodejs.install --version 0.10.35
choco install git -s "'https://somewhere/out/there'"
choco install git -s "'https://somewhere/protected'" -u user -p pass
===== Mettre à jour un paquet =====
Pour mettre à jour vos paquets, il faudra encore passer par la console Windows PowerShell, et utiliser la commande **upgrade**.
Choco upgrade VLC -===== Headline =====
y
Pour mettre l'ensemble des applications à jour
Choco upgrade all
En alternative, voici mon petit script, qui est perfectible.
choco list -local-only | foreach-object {choco upgrade ($_.split(' ')[0]) -y }
===== Désinstallation d'un paquet =====
Attention: Chocolatey ne va désinstaller que les paquets qui ont été installés par lui, car à chaque installation, il récupère le script PowerShell d'installation de son package et le script de désinstallation, toujours en PowerShell.
Voici donc la commande pour retirer vlc.
choco uninstall vlc