Débattre > Informatique, programmation, geek attitude...

Connaissez vous Chocolatey ? Le système de dépôts Linux (apt-get et yum) porté sous Windows

(1/2) > >>

alex:



Mise à jour (24 mars 2020) :
Choco ayant été revu en profondeur, notamment dans sa façon d'accéder à leur site, ce tuto a été revu dans sa grande majorité.


Salut tous,


Je vous repose la question du titre : Connaissez vous Chocolatey ?
Oui ? Continuez à lire, on ne sait jamais, peut-être apprendrez vous un truc ou m'apprendrez une astuce. :)
Non ? Alors là, c'est bien dommage et il faut absolument que vous lisiez ce qui suit. Sachez simplement que maintenant chocolatey a été rebaptisé choco, c'est quand même plus commode !

Choco est un utilitaire Windows vous permettant d'installer des logiciels issus de dépôt "officiels" sans vous soucier de chercher le site de l'éditeur.

Choco est l'équivalent Linux de apt-get ou yum porté sur Windows. Vous installez ce qui sort du dépôt.
Oh oui, bien sûr, on n'est pas sous Linux. Mais il faut tout de même reconnaitre que choco apporte un certain confort.
De la même façon que vous installez un paquet sous Linux, vous ferez bientôt de même sous Windows !

Grosse cerise sur le gâteau ! :
En utilisant choco, vous n'aurez pas de multiples accords de licence dont un qui vous propose d'installer un logiciel supplémentaire en plus de celui que vous voulez installer (un anti-virus le plus souvent).
Choco installera votre logiciel et rien d'autre !
Si vous êtes un fou du clic, il faut aller vite, je clique donc vite, choco est pour vous !

En ce qui concerne la sécurité, n'oublions pas que nous sommes sous Windows. La plupart des paquets que vous allez installer seront des paquets propriétaires. Alors oui, on ne sait pas ce qui se cache derrière un paquet propriétaire...
Pour info, un paquet propriétaire appartient à une entreprise ou personne et son code source n'est pas accessible. Seul le monde Linux et GNU propose des paquets dont les sources sont accessibles. C'est pour ça que ce sont les logiciels les plus fiables de la planète en terme de sécurité.

Choco fonctionne avec l'aide de PowerShell et il est très simple à installer. Malheureusement, les utilisateurs XP ne pourront pas l'utiliser. Choco fonctionne de Windows 7 à Windows 10.

Cerise sur le gâteau, avec Choco, vous n'installerez pas par accident les logiciels déjà pré-cochés lors d'une installation normale !

Pour les intéressés, vous pouvez suivre le projet sur Github. Bien entendu, choco dispose d'un site web.
Sur le site Web et le dépôt Github, vous pourrez apprendre comment manipuler choco. Vous n'avez pas appris apt-get en 10 secondes. Ce sera pareil pour choco.


Tout d'abord, il va falloir installer les outils nécessaires à PowerShell sur votre machine afin de pouvoir utiliser Choco. La version gratuite de choco suffit amplement. En payant, vous pourrez avoir des mises à jour automatiques, ce qui n'est pas indispensable. Une mise à jour automatique, c'est simple à réaliser, pas la peine de payer pour ça...


Installation de choco sous PowerShell :

PowerShell est fourni avec Windows 7 à 10. Mais vous aurez besoin du framework .NET 4.5
Framework .NET 4.5


Si vous possédez un .NET framework supérieur à 4.5, cette installation n'est pas nécessaire. Il est plus que probable que vous ayez déjà cette installation sans le savoir. Regardez dans les programmes installés, touche WIN + tapez et cliquez sur "Programmes et fonctionnalités".


Ensuite, il ne reste qu'à installer choco.

Tout d'abord, ouvrez PowerShell en mode administrateur. Cliquez sur Démarrer (ou appuyez sur la touche 'Win') et entrez "powershell".
Faites un clic droit sur Windows PowerShell suivi de "Exécuter en tant qu'administrateur".




Une fenêtre avec un fond bleu s'ouvre à vous.
Dans cette fenêtre, entrez la commande suivante suivie de ENTER :

--- Code: ---Get-ExecutionPolicy
--- Fin du code ---
Si le résultat de cette commande est Restricted, entrez la commande suivante :

--- Code: ---Set-ExecutionPolicy AllSigned
--- Fin du code ---
Vous pouvez vérifier que tout est correct en retapant la commande Get-ExecutionPolicy.




Une dernière étape et choco sera installé. Entrez la dernière commande suivante :

--- Code: ---Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
--- Fin du code ---


Et voilà, c'est terminé !
Pour vérifer que choco est bien installé, entrez simplement la commande choco.




Maintenant vous pourrez utiliser CMD ou PowerShell, au choix.

Dorénavant, vous allez pouvoir installer des paquets comme on le fait sous Linux !
Par exemple, pour installer Firefox, vous entrerez :

--- Code: ---choco install firefox
--- Fin du code ---

Pour le désinstaller, ce sera :

--- Code: ---choco uninstall firefox
--- Fin du code ---

Et pour le mettre à jour, ce sera :

--- Code: ---choco upgrade firefox
--- Fin du code ---
Exemple avec une installation de VLC déjà installée sans Choco : (Aucun problème n'est rencontré et VLC est mis à jour sur son disque d'installation originale)




Choco vous ouvre les portes de milliers de paquets dans les dépôts !
Faites vos recherches. Par exemple, vous voulez un serveur Apache ? Demandez à choco :

--- Code: ---choco search apache
--- Fin du code ---

Lorsque vous avez repéré un paquet, demandez des infos avant de l'installer :

--- Code: ---choco info wamp-server
--- Fin du code ---

Là, vous aurez tout. L'adresse du site officiel où télécharger le paquet, la licence et une description.

Exemple avec le célèbre CCleaner :




Pour savoir comment manipuler choco, cette ligne suffit :

--- Code: ---choco -?
--- Fin du code ---

Le site internet et le dépôt Github sont également là pour vous.



Petite surprise pour les indécrottables de l'interface graphique Windows (GUI).


Choco existe en mode GUI (graphique) !
Il vous suffit d'installer choco "standard" et d'entrer ce qui suit :


--- Code: ---choco install chocolateygui
--- Fin du code ---





Je vous laisse essayer Choco avant de l'adopter.
Bien entendu, comme d'hab, si vous avez des questions je suis là. ;)



alex:
Chocolatey a changé de nom pour choco. C'est quand même plus pratique !
Ceux qui ont la version graphique de choco n'auront rien remarqué, bien entendu. Une interface graphique dispense de tout claviotage.

Ce que j'adore avec choco, c'est qu'on a la possibilité de mettre à jour tous ses logiciels en une seule fois, comme sous Nunux ! :)
Bien entendu, la mise à jour ne concerne que les logiciels installés avec choco. Le reste n'est pas touché et c'est bien dommage.
L'énorme et indéniable avantage est que choco ne vous installera pas les programmes additionnels proposés par certains logiciels lors d'une installation "classique".
Avec choco, vous aurez votre logiciel et rien d'autre ! Pas de barre de recherche "Babylon" ou autre installée à votre insu.

L'autre avantage, c'est qu'on peut mettre à jour des logiciels directement sans rien toucher. Je m'explique :
J'ai le navigateur Chrome pour tester les changements que j'effectue sur le site. C'est une obligation, ce navigateur est majoritairement utilisé. Il se bat pour la première place avec Firefox. Un coup c'est l'un, un coup c'est l'autre.
Par contre, j'ai désactivé les 2 services que Chrome installe sans rien dire à personne. Le problème, c'est que si les services Google sont désactivés, Chrome ne peut plus être mis à jour. Enfin presque...
Avec choco, j'ai juste à laisser faire. Chrome sera mis à jour si une nouvelle version est là sans réactiver les services Google.


Regardez en qualité 720p et en plein écran, sinon il n'y a rien à voir... :je:



Désolé, je ne pensais pas que Youtube saloperait ma vidéo comme ça, on y voit quasiment rien ! On dirait qu'ils ont changé de politique en ce qui concerne la qualité des vidéos.

Surtout, ne dites pas à Google que j'ai réouvert un compte Youtube avec un autre compte Google, pitié ! :blank:
Avec ce compte, je serai sage, promis. Google n'aura plus à me bannir du service Youtube, je le jure. O:-)

alex:
Ce tuto a été revu en profondeur.
Désolé, je n'avais pas remarqué les gros changements de choco... :-[

N'ayez pas peur de signaler ce qui ne va pas quand vous passez. ;)

lagrace:
bonjour la communauté

j ai cette erreur a la derniere commande


--- Code: ---Exception lors de la définition de « SecurityProtocol » : « Impossible de convertir la valeur « 3312 » en type « System
.Net.SecurityProtocolType » en raison de valeurs d'énumération non valides. Spécifiez l'une des valeurs d'énumération s
uivantes et réessayez. Les valeurs d'énumération possibles sont « Ssl3, Tls ». »
Au niveau de ligne : 1 Caractère : 85
+ Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]:: <<<< SecurityProtocol = [System.
Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://ch
ocolatey.org/install.ps1'))
    + CategoryInfo          : InvalidOperation: (:) [], RuntimeException
    + FullyQualifiedErrorId : PropertyAssignmentException

Exception lors de l'appel de « DownloadString » avec « 1 » argument(s) : « La connexion sous-jacente a été fermée : Une
 erreur inattendue s'est produite lors de l'envoi. »
Au niveau de ligne : 1 Caractère : 219
+ Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.Se
rvicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString <<<< ('https://ch
ocolatey.org/install.ps1'))
    + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
    + FullyQualifiedErrorId : DotNetMethodException

PS C:\Windows\system32>
--- Fin du code ---

alex:
Salut,

Ton souci semble être un problème de protocole, Choco ne communique qu'en TLS v1.2 au minimum (c'est une histoire de chiffrage des communications).


Je vais te poser quelques questions.

- Rassure moi, tu n'es pas sous Win XP ?
- Tu as bien le framework .NET 4.5 demandé ?
- Tu exécutes bien PowerShell en mode Admin ?
- Ta version de PowerShell est bien au moins égale à 3 ?

Pour connaitre la version de PowerShell installée, il suffit d'exécuter ceci dans PowerShell :

--- Code: ---$PSVersionTable.PSVersion
--- Fin du code ---
La version de PowerShell est indiquée à gauche, c'est la version majeure qu'il faut regarder :



Navigation

[0] Index des messages

[#] Page suivante

Utiliser la version classique