Comment puis-je supprimer les versions installées obsolètes des paquets Homebrew?

Réponses:

333

La commande cleanup ( brew cleanup) supprimera les versions de paquet installées obsolètes. Pour affecter un ensemble particulier / formule, vous pouvez fournir un nom de formule comme ceci: brew cleanup $FORMULA. Pour simuler le nettoyage, voir par exemple ce qui serait supprimé, vous pouvez utiliser l' -noption de : brew cleanup -n.

aknuds1
la source
31
Pour mémoire: brew cleanupne nettoie versions paquet obsolète si vous avez la dernière version installée, donc d' abord , brew upgradepuisbrew cleanup
Jan
38
Merde sainte. Cela m'a juste donné plus que 3G en arrière. Qui savait…
Alper
38
This operation has freed approximately 17.2GB of disk space.
fvgs
11
OMG! Je viens de récupérer plus de 12 Go d'espace. WooHoo!
Richard Hurt
3
Wow, une année upgradesans avoir cleanupabouti à 17,6 Go de logiciels inutilisés pour moi! (Cochez cette case pour brew cleanup -nne rien supprimer.) Merci pour cette réponse. :)
Erik
80

@ aknuds1 a raison, brew cleanupalors je vais juste ajouter que j'ai un alias dans mon fichier ~/.profilequi effectue tout le nettoyage lié à la bière, y compris la mise à jour / nettoyage du fût

alias brewski='brew update && brew upgrade && brew cleanup; brew doctor'

Je termine avec brew doctorpour m'assurer que tous les paquets sont correctement liés, par exemple, awsclisemble avoir un problème avec cela sur une base régulière, donc je dois constamment dissocier / relier. J'espère que cela t'aides.


EDIT: Comme cela m’a été signalé dans les commentaires, la brew caskfonctionnalité a été intégrée au cœur de l’homebrew. Ces commandes généraient également des erreurs, les références brew caskont donc été supprimées.

EDIT2: En lançant ce quotidien, j’ai remarqué le commentaire suivant aujourd’hui. J'ai mis à jour la commande en conséquence

    Warning: We decided to not change the behaviour of `brew upgrade` so
    `brew upgrade --all` is equivalent to `brew upgrade` without any other
    arguments (so the `--all` is a no-op and can be removed).
SaxDaddy
la source
3
Vous n'avez plus besoin de le faire brew upgrade brew-caskcar cette demande d'extraction brew update mettra également à jour automatiquement Homebrew-Cask.
Lantrix
1
@Lantrix Merci pour cette mise à jour. J'ai modifié ma réponse pour refléter ce changement.
SaxDaddy
2
brew upgrade --cleanupsupprime les anciens paquets au fur et à mesure de l'installation des nouveaux
Zenexer
Je ne conseille pas d'utiliser, brew upgrademais d'utiliser brew outdatedet de mettre à jour chacun des paquets de brew upgrade PACKAGEcette façon, vous aurez plus de contrôle
Pedro Luz
Comme brew upgradeune commande unique pour mettre à jour tous les paquets, cela fonctionne bien pour l'automatisation. Vous pouvez pinégalement créer des packages de versions que vous souhaitez conserver et mettre à niveau le reste en même temps.
SaxDaddy
34

Juste pour les enregistrements, vous pouvez nettoyer les versions obsolètes des paquets que vous êtes sur le point de mettre à niveau en utilisant l'indicateur --cleanup:

brew upgrade --cleanup <package_name>

bergercookie
la source