Como você reinstala um pacote com o Homebrew (Mac)?

119

Lutando para encontrar uma boa documentação Homebrew (ou tutorial) ...

Enquanto isso, preciso reinstalar o ImageMagick que foi instalado com o Homebrew ( brew install imagemagick) e não tenho certeza se devo primeiro brew uninstall imagemagickou prosseguir brew install imagemagick --disable-openmp --forcecom a instalação existente?!?

o que --forcerealmente faz? é efetivamente uma desinstalação seguida por uma nova instalação com novos parâmetros?

Meltemi
fonte

Respostas:

103

A --forceopção para a installação substitui todos os arquivos existentes no disco se os pacotes que você está tentando instalar já existirem. Não remove arquivos do disco como a uninstallação faz.

Eu faria o brew uninstall imagemagickprimeiro antes de fazer um install. Com breweu acho que a abordagem mais simples geralmente é a melhor: quero reinstalar algo e removê-lo primeiro uninstalle colocá-lo novamente install. O sandbox do homebrew faz um trabalho muito bom ao fazer desinstalações limpas do seu sistema.

Se você deseja desinstalá-lo manualmente, basta procurar /usr/local/binpor arquivos vinculados ../Cellar/imagemagicke excluir esses links simbólicos. Em seguida, exclua /usr/local/bin/imagemagicke se foi. Você pode ficar com alguns pacotes de dependência que também precisam ser removidos, mas o pacote principal do imagemagick será excluído. Para ver de que depende o imagemagick, se você deseja fazer uma limpeza adicional, execute:

$ brew info imagemagick
imagemagick 6.7.1-1
http://www.imagemagick.org
Depends on: jpeg, libtiff, little-cms, jasper
Not installed

Some tools will complain unless the ghostscript fonts are installed to:
  /usr/local/share/ghostscript/fonts

http://github.com/mxcl/homebrew/commits/master/Library/Formula/imagemagick.rb
Ian C.
fonte
impressionante! muito útil! obrigado! + & ✔
Meltemi
Parece que não consigo reconstruir (uma reconstrução completa, a partir da fonte) um pacote, há esse problema desde que me lembro de usar o brew: gist.github.com/hydrostarr/9766139 . O que eu posso estar fazendo de errado, se alguma coisa?
Johnny Utahh
Isso está muito desatualizado. Veja a resposta abaixo em @Nelson.
Django Reinhardt
1
@DjangoReinhardt, apesar da aparência de brew reinstall, ainda acho que é objetivamente melhor brew uninstalle brew installnovamente. Veja a discussão na resposta de @ Nelson para saber o porquê.
Ian C.
128

O Homebrew agora tem um brew reinstallcomando, adicionado em fevereiro de 2013 . Simplesmente faz uma desinstalação seguida por uma instalação.

Nelson
fonte
8
brew reinstallparece ser bastante perigoso, pois atualmente não preserva as opções instaladas.
Aron Ahmadia
7
Eu sinto que geralmente seria mais útil não preservá-los. Um pacote pode ser interrompido devido às suas opções de instalação, e ignorá-las na reinstalação pode corrigir um problema em alguns casos.
Nick McCurdy
4
posso reinstalar com opções?
ryanwinchester
13
Ambos brew reinstalle brew upgradeagora silenciosamente preservar opções anteriormente especificados. Odeio vociferantemente isso. Idealmente, brewpelo menos, forneceria uma opção para desativar essa funcionalidade duvidosa. Não faz. O único meio reproduzível de reinstalar pacotes é desinstalar e reinstalar manualmente esses pacotes. A abordagem no estilo de bandeira do Gentoo USE de opções persistentes para um arquivo editável (por exemplo, ~/Library/Homebrew/options.conf) seria muito preferível. Eu sempre sei exatamente quais opções eu quero, Homebrew. (Mas obrigado por tentar ajudar e falhando.)
Cecil Curry
3
bem, eu aprendi uma nova palavra hoje
cambunctious