brew: comment supprimer la version obsolète du paquet

Homebrew se met à niveau vers brew . Et il semble que les responsables de la maintenance naient pas implémenté certaines commandes utilisées quotidiennement comme brew cleanup.

Donc, nimporte qui sait comment supprimer automatiquement une version obsolète du logiciel? >

$ brew Example usage: brew search [TEXT|/REGEX/] brew (info|home|options) [FORMULA...] brew install FORMULA... brew update brew upgrade [FORMULA...] brew uninstall FORMULA... brew list [FORMULA...] Troubleshooting: brew config brew doctor brew install -vd FORMULA Brewing: brew create [URL [--no-fetch]] brew edit [FORMULA...] https://github.com/Homebrew/brew/blob/master/share/doc/homebrew/Formula-Cookbook.md Further help: man brew brew help [COMMAND] brew home 

Commentaires

  • Je ' je suis presque sûr ' est juste brew clean.
  • rm -rf "$(brew --cache)"

Réponse

La commande souhaitée est cleanup – en cours dexécution brew cleanup supprimera les paquets qui sont sur le disque, mais qui ne sont plus installés.

> brew help cleanup brew cleanup [--prune=days] [--dry-run] [-s] [formulae]: For all installed or specific formulae, remove any older versions from the cellar. In addition, old downloads from the Homebrew download-cache are deleted. If --prune=days is specified, remove all cache files older than days. If --dry-run or -n is passed, show what would be removed, but do not actually remove anything. If -s is passed, scrubs the cache, removing downloads for even the latest versions of formulae. Note downloads for any installed formulae will still not be deleted. If you want to delete those too: rm -rf $(brew --cache) 

Par exemple:

> brew cleanup Removing: /usr/local/Cellar/awscli/1.10.19... (2,955 files, 22.3M) Removing: /usr/local/Cellar/git/2.8.2... (1,418 files, 30.5M) Removing: /usr/local/Cellar/imagemagick/6.9.3-7... (1,459 files, 17.9M) Removing: /usr/local/Cellar/libgcrypt/1.7.0... (17 files, 1.5M) Removing: /usr/local/Cellar/libgpg-error/1.21... (19 files, 419.4K) Removing: /usr/local/Cellar/libksba/1.3.3... (13 files, 343K) Removing: /usr/local/Cellar/mercurial/3.7.3... (386 files, 4.7M) Removing: /usr/local/Cellar/node/6.0.0... (3,655 files, 38.8M) Removing: /usr/local/Cellar/openssl/1.0.2g... (1,678 files, 12.0M) Removing: /usr/local/Cellar/vim/7.4.1795... (1,687 files, 22.6M) Removing: /Library/Caches/Homebrew/git-2.8.2.el_capitan.bottle.tar.gz... (11.2M) Removing: /Library/Caches/Homebrew/imagemagick-6.9.3-7.el_capitan.bottle.tar.gz... (7M) Removing: /Library/Caches/Homebrew/libgcrypt-1.7.0.el_capitan.bottle.tar.gz... (565.4K) Removing: /Library/Caches/Homebrew/libgpg-error-1.21.el_capitan.bottle.tar.gz... (130.8K) Removing: /Library/Caches/Homebrew/libksba-1.3.3.el_capitan.bottle.tar.gz... (126.6K) Removing: /Library/Caches/Homebrew/node-6.0.0.el_capitan.bottle.tar.gz... (10.9M) Removing: /Library/Caches/Homebrew/openssl-1.0.2g.el_capitan.bottle.tar.gz... (3.6M) Removing: /Library/Caches/Homebrew/vim-7.4.1795.tar.gz... (12.0M) ==> This operation has freed approximately 196.4M of disk space. 

Jai un régime le lundi matin de:

brew update brew upgrade brew cleanup 

Cela mamène à jour sur Homebrew, puis tout de mes infusions installées, puis cela libère de lespace disque en supprimant les anciennes infusions qui ne sont plus référencées. Pour les breuvages que je dois conserver à une version spécifique, jutilise brew pin pour les maintenir là-bas afin que je puisse toujours exécuter cette simple chaîne à trois commandes pour mettre à jour tout le reste autour des packages épinglés .

Réponse

Pas de réponse, mais trop long pour un commentaire, cest le code que jutilise comme régime pour garder mon breuvage à jour:

 fullBrewUpdate(){ brew update brew cask update casks=( $(brew cask list) ) for cask in ${casks[@]} do # in the first line there is version current="$(brew cask info $cask | sed -n "1p" | sed -n "s/^.*: \(.*\)$/\1/p")" installed=( $(ls /opt/homebrew-cask/Caskroom/$cask)) if (! [[ " ${installed[@]} " == *" $current "* ]]); then (set -x; brew cask install $cask --force;) fi done brew upgrade brew cleanup } 

Je lai enregistré dans mon ~/.bash_profile pour que je puisse lappeler depuis le terminal comme nom de la fonction à la volée.

Commentaires

  • Au moins à partir de la version 1.5.12 de brew, brew cask update est désactivé. Error: Calling 'brew cask update' is disabled! Use 'brew update' instead.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *