Supprimer l'enregistrement Chocolatey sans désinstaller l'application

22

Je veux pouvoir utiliser choco upgrade all -ypour mettre à jour presque tous mes packages Chocolatey.

Certains packages représentent des applications que je souhaite installer, mais je ne souhaite plus qu'elles soient mises à jour, du moins pas automatiquement par la choco upgrade allcommande.

Puis-je supprimer un package de Chocolatey sans réellement désinstaller l'application? Cela aurait l'effet souhaité.

Ou puis-je mieux atteindre mon objectif?

Klas Mellbourn
la source
3
Vous pouvez utiliser la broche (voir choco pin -hpour plus de détails) et Chocolatey n'essaiera pas de mettre à niveau le package. github.com/chocolatey/choco/wiki/CommandsPin
ferventcoder
Une nouvelle option est la synchronisation dans pro / business - chocolatey.org/docs/features-synchronize
ferventcoder

Réponses:

30

Vous avez deux options:

  1. Vous pouvez utiliser la broche (voir choco pin -h pour plus de détails) et chocolaté ne tenterez pas de mettre à niveau le paquet: choco pin add -n=packageName. Après cette commande, choco upgrade allle package sera ignoré avec le nom packageName.

  2. Vous pouvez supprimer l'application de la base de données Chocolatey (vous devez supprimer le dossier d'application). Toutes les applications métadonnées sont stockés dans le dossier C:\ProgramData\chocolatey\lib\<package-name>, par exemple: C:\ProgramData\chocolatey\lib\adobereader.

    Supprimez soigneusement le répertoire, car des applications sont parfois installées dans le dossier des applications chocolatées, par exemple: C:\ProgramData\chocolatey\lib\javadecompiler-gui\jd-gui-windows-1.4.0

agabrys
la source
On dirait que ça marche. Et cela n'a pas d'effets secondaires néfastes pour le chocolat? Pas de fichiers de configuration à modifier?
Klas Mellbourn
1
Chocolatey stocke toutes les données des packages dans un libdossier, vous pouvez donc supprimer ces dossiers en toute sécurité.
agabrys
2
Option 2, je ne modifierai pas cela (car c'est déjà la réponse acceptée), mais vous pouvez également épingler les packages que vous ne souhaitez pas mettre à niveau. C'est une bien meilleure solution que d'avoir à supprimer manuellement les fichiers.
ferventcoder
@agabrys si vous voulez que je modifie la réponse, je peux ajouter des détails sur la broche. Ou vous pouvez le modifier.
ferventcoder
2
J'ai modifié la réponse.
N'hésitez
28

Exemple (supprimer le paquet myExamplePackagede chocolatey sans désinstaller)

choco uninstall myExamplePackage -n --skipautouninstaller

Des documents chocolatés :

REMARQUE: un package dont la désinstallation a échoué peut être supprimé avec les -n --skipautouninstallerindicateurs. Cela supprimera le package de chocolatey sans tenter de désinstaller le programme.

Patrick Heck
la source
Je ne peux pas comprendre comment utiliser la commande - pouvez-vous me dire la commande complète d'un package?
user598527
1
bien sûr - j'ai ajouté un exemple au message.
Patrick Heck
Cela ne semble plus fonctionner avec la version actuelle de Chocolatey
Mica
1
A parfaitement fonctionné pour moi, merci!
spongessuck