feigned

Chocolatey : le gestionnaire de paquets pour Windows

44.9K vues
22
Le Crabe

Le Crabe vous a aidé ? Aidez-le en retour en désactivant votre bloqueur de publicités !

(merci pour le coup de pince )

  • 03/02/20 : réorganisation de l'article.

Chocolatey est un gestionnaire de paquets pour Windows. C’est un programme qui vous permet d’installer et de désinstaller des applications à la vitesse de l’éclair en utilisant la commande choco. Son point fort : il est capable de mettre à jour l’ensemble des applications installées sur votre système avec une seule commande !

Le Crabe

Le Crabe vous a aidé ? Aidez-le en retour en désactivant votre bloqueur de publicités !

(merci pour le coup de pince )

Dans cet article, nous allons voir comment utiliser Chocolatey, le gestionnaire de paquets pour Windows. Un indispensable !

Préambule

Vous ne trouvez pas que c’est une plaie de mettre à jour ses applications sur Windows ? Moi si !

Un petit exemple pour vous en convaincre : pour mettre à jour le logiciel 7-Zip par exemple, on doit :

  1. Se rendre sur le site web officiel de l’éditeur du logiciel. Note : je vous déconseille de passer par des sites tiers comme 01net ou Clubic pour éviter les adwares et les spywares. Pour pour d’informations :
    Protéger son PC contre les PUP (adwares, spywares)
  2. Trouver la version du logiciel adaptée à son système (32 ou 64 bits, version de Windows…).
  3. Télécharger le programme d’installation.
  4. Lancer l’installation du logiciel, cliquer sur Suivant, Suivant, Suivant… (tout en faisant attention aux cases pré-cochées qui installent d’éventuels spywares) et enfin cliquer sur le bouton Terminer.

Pfiou…. Et ça c’est uniquement pour UN logiciel !

Alors certes, de plus en plus de logiciels proposent des mises à jour automatiques. Certaines sont silencieuses et pratiques (Mozilla Firefox, Spotify…) quand d’autres le sont nettement moins (VirtualBox, TeamViewer…) : ces logiciels lancent simplement le téléchargement de la mise à jour et on se retrouve à subir le fameux programme d’installation…

Je me suis alors demandé s’il existait un moyen fiable de mettre à jour tous ses logiciels en même temps et en une seule fois. Et j’ai fini par trouver !

Alors si comme moi vous voulez gagner du temps et mettre à jour tous vos logiciels d’un coup, laissez-moi vous présenter Chocolatey, le gestionnaire de paquets de référence pour Windows !

Le Crabe

Le Crabe vous a aidé ? Aidez-le en retour en désactivant votre bloqueur de publicités !

(merci pour le coup de pince )

Présentation de Chocolatey

Chocolatey est un gestionnaire de paquets pour Windows.

Un gestionnaire de paquets, qu’est-ce que c’est ?

Un gestionnaire de paquets, c’est un outil qui permet d’installer des logiciels, de les désinstaller et de les mettre à jour.

C’est une fonctionnalité bien connue des utilisateurs de Linux où plusieurs gestionnaires de paquets existent (APT, pacman…). C’est d’ailleurs pour moi la fonctionnalité n°1 de Linux. Une fois qu’on y a goûté, difficile de revenir en arrière !

Son fonctionnement est simple : un gestionnaire est connecté à un ou plusieurs dépôts dans lesquels sont stockés des paquets. Un paquet est une archive contenant les fichiers nécessaires à l’installation d’un logiciel sur un système d’exploitation (on peut y trouver des fichiers exécutables, des fichiers de configuration, des fichiers de documentation, des dépendances logicielles, des scripts de pré/post installation, des scripts de pré/post désinstallation…).

Vous percevez les avantages d’un tel outil ?

  • Tous les logiciels (les paquets) sont centralisés dans un seul et même serveur (le dépôt) : plus besoin de parcourir le Web pour trouver les fichiers d’installation de tel ou tel logiciel, tous se trouvent au même endroit ! On va enfin pouvoir installer et mettre à jour plusieurs logiciels avec une seule commande.
  • Tous les logiciels sont dépourvus de spywares et malwares en tout genre : toutes les cases qui installaient des logiciels non désirés n’existent plus.
  • Les dépendances sont automatiquement installées : si un logiciel a besoin d’un programme (ex. : Microsoft Visual C++ 2010 Redistributable Package) pour fonctionner, le gestionnaire va l’installer automatiquement.

Sous Windows, aucun gestionnaire de paquets n’est malheureusement intégré.

Heureusement, il y a Chocolatey !

Si c’est encore un peu flou pour vous, les lignes qui suivent vont certainement vous permettre d’y voir plus clair. 🙂

Le Crabe

Le Crabe vous a aidé ? Aidez-le en retour en désactivant votre bloqueur de publicités !

(merci pour le coup de pince )

Installation de Chocolatey

Chocolatey s’installe en quelques secondes :

  1. Ouvrez Powershell en tant qu’administrateur.
  2. Exécutez la commande suivante (faites un copier/coller) :
    Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
Chocolatey est maintenant installé sur votre PC et prêt à l’emploi !

Utilisation de Chocolatey

Rechercher un logiciel

Avant d’installer votre logiciel, il faut savoir si Chocolatey le propose dans ses dépôts.

En effet, les dépôts contiennent beaucoup de logiciels mais tous les logiciels du marché ne sont évidemment pas présents (Adobe Photoshop, Microsoft Word…).

Comment faire pour savoir si un logiciel est disponible dans Chocolatey ?

Vous pouvez effectuer une recherche soit :

  • Via la commande choco :
    choco search --by-id-only firefox

    L’argument --by-id-only permet de ne retourner que les paquets dont l’id contient le filtre de recherche.

  • Via le site web de Chocolatey :

Le logiciel que vous souhaitez installer est disponible ? Bien ! Maintenant, installons-le !

Installer des logiciels

Pour installer un logiciel avec Chocolatey, c’est simple :

  1. Ouvrez PowerShell en tant qu’administrateur.
  2. Utilisez la commande choco install comme ici :
    choco install firefox -y

    L’argument -y est optionnel, il permet de valider automatiquement l’installation.

  3. Vous pouvez également installer plusieurs logiciels à la fois en séparant le nom des paquets avec un espace :
    choco install gimp libreoffice thunderbird

    Cette commande installe GIMP, LibreOffice et Thunderbird.

Vous voyez le gain de temps !

Plus besoin de visiter le site web de l’éditeur, de télécharger le programme d’installation, l’exécuter, cliquer comme un bourrin sur Suivant…

En une seule commande, vos logiciels sont automatiquement installés. 🙂

Désinstaller des logiciels

Pour désinstaller un logiciel, c’est tout aussi simple :

  1. Utilisez la commande choco uninstall comme ici :
    choco uninstall firefox

    Validez en entrant Y, puis appuyez sur Entrée.

  2. De la même manière que pour l’installation de logiciels, vous pouvez désinstaller plusieurs logiciels en même temps :
    choco uninstall firefox virtualbox vlc

Voyons maintenant la fonctionnalité la plus utile : la mise à jour de vos logiciels !

Mettre à jour des logiciels

Pour mettre à jour des logiciels avec Chocolatey :

  1. Vérifiez si des mises à jour sont disponibles :
    choco outdated

    Dans la capture ci-dessus, on voit que 17 logiciels ne sont pas à jour.

  2. Pour mettre à jour un seul paquet :
    choco upgrade f.lux -y

    Ici, seule l’application f.lux sera mise à jour.

  3. Pour mettre à jour tous les paquets du système :
    choco upgrade all -y

Je crois que vous avez maintenant saisi l’utilité d’un gestionnaire de paquets comme Chocolatey : il vous permet d’installer des logiciels, de les désinstaller et les mettre à jour avec une facilité déconcertante !

A titre personnel, je n’utilise désormais que lui pour gérer mes logiciels sur Windows. 😉

Lister les logiciels installés

Pour lister tous les paquets installés avec Chocolatey :

choco list -l

Liste des commandes de Chocolatey

Voici toutes les commandes disponibles avec Chocolatey :

  • list ou search – liste les paquets distants ou locaux
  • info – affiche les informations du paquet. Similaire à : choco search pkgname --exact --verbose
  • install – installe des paquets
  • pin – supprime les mises à jour du paquet
  • outdated – affiche les paquets obsolètes. Similaire à choco upgrade all --noop
  • upgrade – met à jour des paquets
  • uninstall – désinstalle un paquet
  • pack – converti un nuspec en un nupkg compilé
  • push – pousse un nupkg compilé
  • new – génère les fichiers nécessaires pour un paquet chocolatey à partir d’un modèle
  • sources ou source – affiche et configure les sources par défaut
  • config – récupère et configure les paramètres du fichier de configuration
  • feature ou features – affiche et configure les fonctionnalités de choco
  • setapikey ou apikey – recupère ou sauvegarde une apikey depuis une source définie
  • unpackself – have chocolatey set itself up
  • version – [DÉPRÉCIÉ] sera supprimé dans la v1 – utilisez à la place choco outdated ou cup <pkg|all>
  • update – [DÉPRÉCIÉ] réservé pour une utilisation future
  • support – fournit des informations de support
  • download – télécharge des paquets packages
  • synchronize ou sync – se synchronise avec le logiciel installé sur le système – génère des packages manquants
  • optimize – optimise l’installation et réduit l’utilisation de l’espace

FAQ sur Chocolatey

Où sont installés les paquets Chocolatey ?

Les paquets Chocolatey sont installés par défaut dans %SystemDrive%\ProgramData\chocolatey\lib, mais le logiciel peut s’installer dans un autre répertoire, tout dépend de la manière dont le responsable du paquet a créé le paquet.

Si le paquet est basé sur Windows Installer (fichier .msi), le logiciel sera placé dans le répertoire d’installation par défaut du logiciel (le plus souvent dans %ProgramFiles% ou %ProgramFiles(x86)%).

Il existe également des paquets pour lesquels vous pouvez définir un chemin d’installation personnalisé. Ces paquets (comme cmdermini) utilisent la variable d’environnement $env:ChocolateyToolsLocation (si la variable n’existe pas, Chocolatey utilisera le dossier %SystemDrive%\tools).

J’ai déjà des logiciels installés, Chocolatey les détecte-t-il ? Faut-il que je les désinstalle avant d’utiliser Chocolatey ?

Chocolatey ne détecte pas les logiciels que vous avez déjà installés sur votre système.

Je vous recommande donc de les désinstaller par la voie classique puis de les réinstaller avec Chocolatey.

Ainsi, comme Chocolatey sait désormais que vous avez installer ces logiciels, vous pourrez les désinstaller ou les mettre à jour via la commande choco !

Liens utiles

36 commentaires

Répondre à JMPCOMPUTERAnnuler

Page 2 sur 3

  • John

    On aurait aussi pu parler de « Revo unistaller » free qui fait un tres bon taf et assez simple.

  • Gorvak

    Bonjour,
    je n’ai pas réussi à installer 3 logiciels pourtant disponibles sur le site de chocolatey. J’ai ce message dans powershell :
    Failures
    – adwcleaner (exited -1) – Error while running ‘C:\ProgramData\chocolatey\lib\adwcleaner\tools\ChocolateyInstall.ps1’.
    See log for details.
    – xplorer2 (exited -1) – Error while running ‘C:\ProgramData\chocolatey\lib\xplorer2\tools\chocolateyinstall.ps1’.
    See log for details.
    – mozbackup (exited -1) – Error while running ‘C:\ProgramData\chocolatey\lib\mozbackup\tools\chocolateyInstall.ps1’.

    J’ai réussi à installer 41 autres logiciels sans erreur

    Une idée ?

    • Gorvak

      Je recherche une solution, je précise que j’ai aussi ce message par exemple :

      ERROR: Checksum for ‘C:\ProgramData\chocolatey\lib\adwcleaner\tools\adwcleaner_8.0.1.exe’ did not meet ’52F745C5B16C59E4510825E558F0A8367A687F6EC61B79487AC42BC8ECE84C94′ for checksum type ‘sha256’. Consider passing the actual checksums through with –checksum –checksum64 once you validate the checksums are appropriate. A less secure option is to pass –ignore-checksums if necessary.The install of adwcleaner was NOT successful.Error while running ‘C:\ProgramData\chocolatey\lib\adwcleaner\tools\ChocolateyInstall.ps1’.

       See log for details.

      A priori erreur de vérification de fichier y a pas moyen de passer au dessus pour que ça s’installe ?

      Je continue mes investigations

  • Nycole

    Bonjour,
    Comment le désactiver ou le désinstaller?

  • Mousse

    Merci Le Crabe.

    Je ne connaissais pas ce type de logiciel.

    Bien vu une fois de +

    Anthony

  • dregnier

    En effet, c’est vraiment puissant et ça évite ces fastidieuses mise à jour …

    Reste la question : Comment gérer les mises à jour des logiciels portables ?

  • Gilles

    A titre informatif, octobre 2019 : j’ai installé des logiciels avec Ninite (après avoir installé Chocolatey) et une fois installé via Ninite, Chco les « voit » et peut les mettre à jour…

  • BV

    J’ai découvert chocolatey ce soir grâce à mon maître de stage.

    Et j’avoue que j’ai été fasciné par sa puissance.

    Merci pour ce bel article qui me permet encore de prendre en main certaines astuces dudit gestionnaire de paquets.

  • Drumcat

    Super article et tuto le Crabe !

    Depuis que je suis passé à Chocolatey, je prends un réel plaisir à mettre à jour mes logiciels ! Il en faut peu 😀

    Avant ça ne me rebutait pas, mais ça pouvait prendre du temps, là on gagne un temps fou !

    Petit point négatif, certains logiciels après désinstallation manuelle pour être réinstallé via le paquet, perdent leur ancienne config et il faut configurer à nouveau (ccleaner, Marlwarebytes… ).

    Je précise que pour les navigateurs, les options et extensions sont conservées : très bon point !

    Ah si, autre petit point négatif (pas très grave) : à chaque mise à jour de logiciel via Chocolatey, l’icône du logiciel concerné se replace par défaut sur le bureau (dommage si on aime bien avoir ses icônes rangées)… mais c’est vraiment pas hyper grave ;p

    Indispensable, effectivement.

    • Le Crabe

      Merci pour ton retour Drumcat !

      Quand j’étais encore sur Windows, Chocolatey était un de mes logiciels préférés. Une fois qu’on y a goûté, impossible de revenir aux anciennes méthodes d’installation !

      Et t’inquiète moi aussi je prends aussi du plaisir à mettre à jour mes logiciels ! 😅

  • JMPCOMPUTER

    Bonjour,

    Alors là, Le Crabe, tu as peut-être trouvé la pépite du siècle!

    Le top serait de pouvoir créer un script (par exemple avec le bloc-notes) pour automatiser l’installation, la désinstallation ou la mise à jour tel ou tel logiciel avec un simple double-clic, comme on peut le faire pour le Registre.

    Si c’est possible, indique la procédure dans ton tuto. Je pense que cela en aidera beaucoup.

    Merci.

    • Drumcat

      Hello,

      Je me suis fait 2 scripts prêt-à-l’emploi pour vérifier les mises à jour et lancer l’upgrade (ce qui évite de lancer le powershell et taper les lignes de commandes à chaque fois !).

      Créer un fichier texte avec la ligne de commande, exemple :

      choco outdated -l

      pause 

      J’ai ajouté « pause » pour pouvoir lire le résultat sinon une fois le script fini la fenêtre se ferme automatiquement…

      Enregistrer ce fichier en changeant l’extension par .cmd ou .bat

      Et voilà il ne suffit plus qu’à lancer le script juste en double-cliquant sur ce fichier 😉

      Concernant celui qui gère l’installation :

      choco upgrade all -y

      pause

      Il faut faire un clic-droit et choisir « exécuter en tant qu’administrateur ».

      That’s it!

      ps : certains créent même des tâches automatisées Windows pour que les scripts se lancent automatiquement à jour et heure précis, mais je préfère garder le contrôle quand même 😉

  • WIN

    super le crabe pour ce tuto c est tres pratique