[FR] Présentation & Tutoriel sur le gestionnaire de paquets Chocolatey

in #fr6 years ago (edited)

chocolatey
Renard jaune par Meoxie


Salut les Steemiens !

Il y'a quelques jours j’ai publié une vidéo assez courte qui s’en tenait à s’essentiel sur un magnifique logiciel qui se nomme Chocolatey. Je voulais à la base faire une vidéo détaillée pour expliquer beaucoup de choses. Finalement je n’avais pas la possibilité de passer des longues minutes de vocales, j’ai donc fait une vidéo rapide puis j’ai décidé de faire un article écrit avec tout ce qu’il y'a à savoir dessus.

Si vous souhaitez voir ma vidéo, je vous laisse le lien. Sachez qu’elle est courte, mais que j’ai fait de mon mieux pour expliquer les bases.

Ma vidéo sur Chocolatey:

Désolé par avance si le manque d’instructions oral fait défaut, je n’ai pas d’endroit calme pour ça actuellement.


Présentation rapide du logiciel

Chocolatey est un gestionnaire de paquet pour Windows, si vous avez déjà touché de prêt ou de loin à UNIX ou GNU Linux, vous devez très certainement connaitre. Un gestionnaire de paquet tel que Chocolatey est très pratique, car on peut installer très rapidement ses logiciels.

Par exemple vous venez d’installer une version non OEM de Windows sur votre ordinateur, lors de son premier démarrage vous risquer de trouver ça vide. Avec ce genre d’outils vous pourrez installer tous vos logiciels en une commande puis vaquer à vos occupations IRL sans rien toucher.

Il s’occupera également des dépendances, ce qui est une bonne chose, car parfois ennuyeux de faire ça à la main. Il pourra également mettre à jour vos logiciels, ce genre de petit outil et bien sympathique pour gagner du temps.

Présentation détaillée du logiciel

Chocolatey utilise le principe des installations silencieuses, une méthode qui installe les logiciels avec des paramètres prédétermine à l’avance par les concepteurs dans la configuration du paquet. Pour l’installation de ces paquets PowerShell est utilisé, c’est pour cette raison que de base tout passe par un terminal.

Certes au premier abord ce genre de truc de geek fait un peu peur, mais vous verrez que lorsque que l’on connaît l’essentiel des commandes de Chocolatey on se sent heureux, car on a juste à lui donner une liste de logiciels à installer ou mettre à jour puis c’est lui qui se débrouille tout seul dans la grande majorité des cas.

Le logiciel repose sur NuGet qui est un gestionnaire de paquet pour .NET disponible comme extension pour .NET Visual Studio, SharpDevelop il est aussi intégré par défaut dans WebMatrix depuis la version 2. Il simplifie grandement la vie des développeurs dans la gestion des packages et de leurs dépendances.

Bien ! Assez parlé de NuGet mais sachez qu’il est une référence dans le monde du développement .NET. Chocolatey est lui aussi beaucoup utilisé dans sa version professionnelle, elle apporte un système d’inventaire et de packaging local puissant. Les paquets de Chocolatey sont tout comme ceux de NuGet fournis avec des fichiers manifestes qui listent tout ce qu’il faut savoir, comme les descendances par exemple.


Installation de Chocolatey

Prérequis minimum

  • Windows 7 / Windows Server 2003
  • PowerShell v2
  • .NET Framework 4
  • /!\ Droits administrateur sur la machine

Basique

Par CMD

Appuyer sur la touche WINDOWS + R taper cmd puis Ctrl + Shift + Entrée

@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"

Par Powershell

Appuyer sur la touche WINDOWS + R taper powershell puis Ctrl + Shift + Entrée

Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))



Une fois la commande lancée, ne fermez surtout pas la fenêtre et ne touchez à rien. Si vous n’êtes pas familier avec les terminaux cela risque de vous surprendre de voir le contenu, mais ne vous inquiéter pas.

Lorsque le terminal n’affiche plus d’activité, il devrait vous afficher C:\Windows\system32> cela veut dire qu’il a fini d’exécuter la commande. Si vous lisez Chocolatey (coco.exe) is now ready. c’est que tous s’est bien passé.

Vérifier tout de même en tapant choco il devrait vous retourner une réponse de ce type :

Chocolatey v0.10.11
Please run 'choco -?' or 'choco <command> -?' for help menu.



Voilà votre installation est terminée et s’est bien passé, nous allons pouvoir passer aux choses sérieuses et amusantes.

Si vous rencontrer des soucis, laissez-moi un commentaire en incluant @voltagrou dedans pour que j’en soi notifié en temps réel sur Telegram.


Installation de logiciels

Sans Chocolatey

Bon comme je le disais, maintenant on va bien s’amuser pour installer des logiciels. En temps général c’est plutôt redondant, car cela se passe en plusieurs étapes.

  • Démarrer son navigateur.
  • Rechercher son logiciel.
  • Trouver de préférence le site officiel. ( Les débutants ont tendance à aller sur des sites tiers )
  • Télécharger le logiciel.
  • Attendre...
  • Exécuter son logiciel.
  • Installer le logiciel. ( En installation personnalisée pour éviter les bundlewares )
  • Attendre de nouveau...

Vous devez rester à proximité pour faire chaque installation manuellement, et ceci pour chaque logiciel. C’est véritable supplice si vous faites souvent des installations de Windows pour vous/amis/famille. Le gros avantage avec Chocolatey c’est que vous pourrez installer vos logiciels en une seule ligne de commande.

Avec Chocolatey

Les commandes en question qui vont vous changer la vie :
choco install
choco search


Par exemple vous venez d’installer Windows chez un ami, hé bien en une commande le nécessaire sera installé. Certains libristes comme moi versent toujours une larme avec certains de ces logiciels.
choco install -y vcredist-all googlechrome silverlight directx phython phython2

Je vais vous donner des détails sur cette commande :
choco Raccourci utilisé dans la console par Chocolatey.
install Commande passée à Chocolatey pour indiquer que l’on souhaite installer.
-y Argument super pratique qui permet d’accepter automatiquement les installations.


Si vous ne savez pas le nom d’un paquet précisément, vous pouvez vous aider de la commande de recherche.
Prenons par exemple le cas du pilote de carte graphique Nvidia, cela vous donnera ce genre de commande.
choco search nvidia

Dans mon cas elle me retourne de nombreux paquets, mais je garde les 3 plus importants seulement.

Chocolatey v0.10.11
geforce-game-ready-driver 399.24 [Approved] Downloads cached for licensed users
geforce-experience 3.14.1.48 [Approved] Downloads cached for licensed users
nvidia-display-driver 399.24 [Approved] Downloads cached for licensed users


Astuce : Vous pouvez encore vous faciliter la vie en remplacent choco install par cinst


Mettre à jour des logiciels

Si vos logiciels n’embarquent pas de système de mise à jour automatique, le cauchemar risque de continue. Beaucoup d’utilisateurs utilisent des logiciels non à jour, car ils n’ont pas la motivation de perdre leurs temps avec ça. Dans un sens c’est une très grosse erreur, quand on sait aujourd’hui que un des plus gros vecteurs d’attaque c’est l’exploitation de failles dans les logiciels. Un simple fichier vidéo, son ou texte peut sur une session non administrateur peut avoir accès à une élévation de privilèges puis installer tout est n’importe quoi. Dans ce qui se fait de plus courant on y trouve, chevaux de Troie, ransomwares, keylogers, cryptojacking, botnets.

Après je comprends parfaitement que lorsque l’on est un utilisateur lambda on ne souhaite pas forcément administrer son système pendant des heures chaque semaine. De nombreux élitistes en informatique ont tendance à toujours râler et se passer les nerfs sur les personnes qui ne sont pas à l’aise sur informatique. Ils devraient plutôt avoir une approche pédagogique en prenant le temps de les guider avec calme et en leur expliquant avec des termes moins techniques.

Sans Chocolatey

Pour mettre à jour dans ce cas, il faut recommencer l’étape de la même manière que lors de son installation. Il faut savoir qu’il y a parfois plusieurs mises à jour de sécurité par semaine dans les périodes noires de certains logiciels.

Bien je vous résume donc le procédé classique des mises à jour manuelles

  • Vérifiez la version du logiciel.
  • Démarrer son navigateur.
  • Rechercher son logiciel, en allant de préférence sur le site officiel.
  • Vérifier si une mise à jour existe et s’il y en a une...
  • Télécharger le logiciel.
  • Attendre...
  • Exécuter son logiciel.
  • Mettre à jour le logiciel. ( parfois il faut réinstaller par-dessus )
  • Attendre de nouveau...

Vous devez rester à proximité pour faire chaque installation manuellement, et ceci pour chaque logiciel. C’est véritable supplice si vous faites souvent des installations de Windows pour vous/amis/famille. Le gros avantage avec Chocolatey c’est que vous pourrez installer vos logiciels en une seule ligne de commande.

Et bien entendu, répéter l’opération pour chaque logiciel installé sur votre ordinateur.

Avec Chocolatey

Les commandes en question qui vont vous changer la vie :
choco outdated
choco upgrade
choco pin

Je vais vous donner tous les détails à savoir sur ces commandes. Sachez que je ne pourrais pas couvrir tous les usages particuliers de chacun. Si vous avez besoin d’aide, je veux bien faire mon possible pour vous répondre en commentaire.

Je vais donc vous parler de chacune de ces commandes de manière détaillée et simple


choco outdated Cette commande vous listera tous les logiciels qui ne sont plus à jour sur votre ordinateur.

Voilà ce qu’elle me retourne comme réponse de mon côté

Chocolatey v0.10.11
Outdated Packages
Output is package name | current version | available version | pinned?
geforce-game-ready-driver|399.07|399.24|false
GoogleChrome|69.0.3497.8100|69.0.3497.9200|false
Opera|55.0.2994.56|55.0.2994.61|false  


Elle retournera ce genre de réponse, le paramètre de droite est important je vous le détaillerais plus tard.


choco upgrade Cette commande vous permettra de lister les logiciels que vous souhaitez mettre à jour.

Si je prends exemple sur la liste des logiciels non à jour ci-dessus, la logique voudrait que l’on fasse de cette manière.
choco upgrade -y geforce-game-ready-driver googlechrome opera

Je vais vous donner des détails sur cette commande :
choco Raccourci utilisé dans la console par Chocolatey.
upgrade Commande passé à Chocolatey pour indiquer que l’on souhaite mettre à jour.
-y Argument super pratique qui permet d’accepter automatiquement les mises à jour.

Si vous souhaitez tous mettre à jour facilement il y a un paquet maître qui est prévu pour cet usage.
choco upgrade -y all
Cette commande va automatiquement mettre à jour les logiciels qui ne sont pas à jour, mais parfois cela peut poser des soucis avec les logiciels qui se mettent à jour tout seul.

Astuce : Vous pouvez exclure des paquets ponctuellement de cette manière

Si vous avez plusieurs logiciels à exclure, vous séparez les noms par une virgule.
choco upgrade -y all --except="<nom du paquet>,<nom du paquet>"

Bien entendu si vous n’avez qu’un paquet à exclure il faudra faire comme ça
choco upgrade -y all --except="<nom du paquet>"


choco pin Cette commande vous permet d’épingler certains logiciels, ça vous permettra dans le cas d’une mise à jour de les exclure pour éviter des problèmes.

Pour ajouter un programme à la liste des logiciels à épingler vous devrez faire ceci :
choco pin add --name=<nom du paquet>

Si par la suite vous voulez l’ôter de la liste, c’est de cette manière qu’il faudra procéder.
choco pin remove --name=<nom du paquet>

Si vous désirez savoir la liste des logiciels épinglés, il y'a une commande toute simple
choco pin list

Elle retourne une réponse de ce type

Chocolatey v0.10.11
telegram|1.2.15   



Astuce : Vous pouvez encore vous faciliter la vie en remplacent choco upgrade par cup


Désinstaller des logiciels

Sans Chocolatey

Vous ne le savez peut-être pas, mais c’est parfois difficile pour des néophytes de désinstaller un logiciel. Certains se contentent de supprimer le raccourci sur le bureau, d’autres suppriment le raccourci et le dossier. Bien entendu ce genre de démarches surtout la seconde peuvent créer des problèmes dans l’ordinateur. Ceci en bonne partie, car le registre aura des entrées incorrectes non effacées.

Avec Chocolatey

Les commandes en question qui vont vous changer la vie :
choco uninstall
choco list

Lorsque vous installez un programme, il surveillera les entrées de registre pour les nettoyer lors de la désinstallation. Cela permettra de limiter des entrées incorrectes dans le registre, qui finissent par ralentir Windows.

Bien, passons désormais à l’étape de désinstallation de logiciels sur Chocolatey


choco uninstall Cette commande vous permettra de lister les logiciels à désinstaller.

Listez donc les logiciels à désinstaller de la manière suivante.
choco uninstall -y vcredist-all googlechrome silverlight directx phython phython2

Je vais vous donner des détails sur cette commande :
choco Raccourci utilisé dans la console par Chocolatey.
uninstall Commande passé à Chocolatey pour indiquer que l’on souhaite désinstaller.
-y Argument super pratique qui permet d’accepter automatiquement les installations.


choco list --localonly Cette commande vous permettra d’obtenir la liste des logiciels installés sur Windows.

Je vais vous donner des détails sur cette commande :
choco Raccourci utilisé dans la console par Chocolatey.
list permet de lister les packages de Chocolatey.
--localonly Argument qui limite aux logiciels installés sur votre machine.

Elle vous retourna une réponse de ce type :

Chocolatey v0.10.11
chocolatey 0.10.11
chocolatey-core.extension 1.3.3
chocolatey-windowsupdate.extension 1.0.2
Firefox 62.0
gimp 2.10.6             


Grâce à cette commande, vous voyez d’un seul coup d’œil si vous un logiciel que vous ne vous servez plus peut être supprimé. À gauche c’est le nom du paquet à désinstaller, parfois ils ont des noms compliqués, par exemple les Visual C++ Redistributable.


Astuce :
Vous pouvez encore vous faciliter la vie en remplaçant choco uninstall par cuninst & choco list par clist.


Bon à savoir

Bien qu’il soit déconseillé d’activer la fonctionnalité allowGlobalConfirmation à cause du manque de sécurité, je vous explique comment l’activer et la désactiver.

choco feature enable -n allowGlobalConfirmation

Si tout s’est bien passé, la console renverra ceci :

Chocolatey v0.10.11
Enabled allowGlobalConfirmation


choco feature disable -n allowGlobalConfirmation

Si tout s’est bien passé, la console renverra ceci :

Chocolatey v0.10.11
Disabled allowGlobalConfirmation


Il y a plein d’autres fonctionalités que vous pourrez définir, mais faites très attention à ce que vous faites.



Il existe une interface graphique pour Chocolatey, les frileux de la ligne de commande pourront la tester pour se faire une idée. À titre personnel je ne l’aime pas beaucoup, je trouve qu’elle me ralentit plus que raisonnable.

Pour installer cette interface graphique, rien de plus simple
choco install -y chocolateygui

Démarrer ensuite Chocolatey GUI, et faites-vous une idée sur son ergonomie, après tout les goûts c’est propre à chacun.

Si vous souhaitez voir à quoi il ressemble, je laisse des captures d’écran

chocolateygui.pngchocolateygui4.pngchocolateygui2.pngchocolateygui3.png
Logiciels installésParamètresLogiciels disponibles (liste)Logiciels disponibles (tuiles)

Je vous laisse les liens ou je me suis documenté pour cet article. On y trouve beaucoup d’informations sur tous les aspects de Chocolatey.

Sources:


Voilà c’est fini, j’espère que ce post vous aura plus, c’est long est fastidieux de faire une mise en page comme ça. Je ferais peut-être une suite de ce post sur les fonctionnalités avancées de Chocolatey.

N’hésitez pas à me laisser un commentaire, ça fait toujours plaisir d’échanger ses petites astuces.

Sort:  

Félicitations ! Votre post a été sélectionné de part sa qualité et upvoté par le trail de curation de @aidefr !

Upvoté par rapport à votre précédente vidéo, merci pour ce complément en version texte !


Si vous voulez aider le projet, vous pouvez rejoindre le trail de curation ici!

Bonne continuation !

Nouveau : Rendez-vous sur le nouveau site web de FrancoPartages ! https://francopartages.xyz

Félicitations @voltagrou pour votre beau travail!

Ce post a attiré l'attention de @ajanphoto et a été upvoté à 30% par @steemalsace et son trail de curation comportant actuellement 28 upvotes .
De plus votre post apparaîtra peut-être cette semaine dans notre article de sélection hebdomadaire des meilleurs post francophones.

Vous pouvez suivre @steemalsace pour en savoir plus sur le projet de soutien à la communauté fr et voir d'autres articles qualitatifs francophones ! Nous visons la clarté et la transparence.

Rejoignez le Discord SteemAlsace

Pour nous soutenir par vos votes : rejoignez notre Fanbase et notre Curation Tail sur Steemauto.com. C'est important pour soutenir nos membres, les steemians et Witness francophones ICI!

@ajanphoto

Un gestionnaire de paquet pour Windows ! C'est assez surprenant ! Merci pour votre présentation et tutoriel ! Upvoté à 100% !

Pour un projet qui n’est pas géré en interne, il faut bien reconnaître que ça représente un sacré travail de maintenir une telle base de logiciels. Je me documente actuellement pour essayer de contribuer là ou il y a des lacunes.

Par exemple, CozyDrive n’est pas dans leurs dépôts, ça me gêne un peu, car il est excellent. :)

Merci super post qui accompagne bien la vidéo ;-) !

Merci pour tes encouragements :)