Instalando pacotes Homebrew sem vincular

16

Eu gostaria de instalar várias versões do Ruby (ou realmente qualquer pacote Homebrew) sem vincular nenhuma delas. Basicamente, eu gostaria de tratar qualquer fórmula como apenas barril.

Não consigo encontrar uma maneira de fazer isso, embora pareça trivial. Eu pensei que haveria algo parecido brew install --no-link <formula>.

Existe uma maneira de fazer o que eu quero, ou algum motivo para que essa seja uma má idéia?

Eu realmente gostaria de usar o Homebrew para instalar versões do Ruby e o rbenv para gerenciá-las.

Além disso
fonte
Sim, isso seria realmente útil, também não consegui encontrar uma resposta.
Aron Ahmadia
Penso que a falta desta funcionalidade é sintomática do fraco apoio geral do Homebrew às versões. Você sempre obtém a versão mais recente e a única maneira de obter uma versão mais antiga é esperar que alguém a tenha copiado para o barril de versões ou caçando a história do git. Existem muitas coisas que devem ser simples argumentos de linha de comando, mas que só são possíveis brew edit.
Mark Reed

Respostas:

10

Tudo o que você precisa fazer é editar a fórmula padrão e personalizá-la para o seu objetivo, que está sendo apenas o barril. Na verdade, é muito fácil criar sua própria versão personalizada de fórmulas e, depois de editar uma fórmula, o Homebrew mantém sua versão personalizada para usos futuros.

Portanto, basta editar o arquivo da fórmula (para a versão específica do toque que você pretende instalar) e adicionar keg_only "My reason for making this keg-only"na classe da fórmula, por exemplo, em uma nova linha diretamente após o desccomando.

Caso você não tenha editado uma fórmula antes, leia estas poucas linhas das Perguntas frequentes do Homebrew para aprender como fazê-lo:

Posso editar as fórmulas eu mesmo?

Sim! É fácil! Apenas brew edit $FORMULA. Você não precisa enviar modificações de volta ao Homebrew / homebrew , basta editar a fórmula conforme necessário e brew install. Como bônus brew update, as alterações serão mescladas com o upstream, para que você possa manter a fórmula atualizada com suas modificações pessoais!

retrografia
fonte
0

Você pode executar brew install <formula>e brew unlink <formula>, em seguida , remover todos os links.

jaimeMF
fonte
Certo, mas isso ainda vincula o Ruby, que falhará se já houver uma versão vinculada. Eu quero instalar sem nunca ligar.
também
0

Não tenho certeza sobre Ruby, mas, para fazer isso em muitos softwares, você pode simplesmente baixar o código-fonte e ajustar o arquivo make ou usar os sinalizadores do script de configuração do autoconf para especificar o diretório de instalação desejado e, em seguida, você pode executá-lo a partir daí.

(From configure --help output)
Installation directories:
  --prefix=PREFIX         install architecture-independent files in PREFIX
                          [/usr/local]
  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
                          [PREFIX]
ilustração numérica
fonte