Installazione di pacchetti Homebrew senza collegamento


16

Vorrei installare diverse versioni di Ruby (o davvero qualsiasi pacchetto Homebrew) senza collegarne nessuna. Fondamentalmente, vorrei trattare qualsiasi formula come solo fusto.

Non riesco a trovare un modo per farlo, anche se sembra banale. Ho pensato che ci sarebbe stato qualcosa di simile brew install --no-link <formula>.

C'è un modo per fare quello che voglio, o qualche motivo per cui questa è una cattiva idea?

Mi piacerebbe davvero usare Homebrew per installare le versioni di Ruby e rbenv per gestirle.


Sì, sarebbe davvero utile, non sono riuscito a trovare una risposta da nessuna parte.
Aron Ahmadia,

Penso che la mancanza di questa funzione sia sintomatica del scarso supporto generale di Homebrew per le versioni. Ottieni sempre le ultime novità e l'unico modo per ottenere una versione precedente è sperare che qualcuno l'abbia copiato nel barilotto delle versioni o andare a caccia della storia di Git. Ci sono troppe cose che dovrebbero essere semplici argomenti da riga di comando ma che possono essere fatti solo con brew edit.
Mark Reed,

Risposte:


10

Tutto quello che devi fare è modificare la formula predefinita e personalizzarla per il tuo scopo, che è solo per il barile. In realtà è molto semplice creare la tua versione personalizzata delle formule e, una volta modificata una formula, Homebrew mantiene la tua versione personalizzata per usi futuri.

Quindi, basta modificare il file della formula (per la versione del rubinetto specifica che si intende installare) e aggiungere keg_only "My reason for making this keg-only"all'interno della classe della formula, ad esempio su una nuova riga direttamente dopo il desccomando.

Se non hai mai modificato una formula in precedenza, leggi queste poche righe dalle FAQ di Homebrew per sapere come fare:

Posso modificare le formule da solo?

Sì! È facile! Basta brew edit $FORMULA. Non è necessario inviare nuovamente le modifiche a Homebrew / homebrew , basta modificare la formula di cui ne hai bisogno personalmente e brew install. Come bonusbrew update unirai le tue modifiche con upstream in modo da poter comunque mantenere la formula aggiornata con le tue modifiche personali!


0

È possibile eseguire brew install <formula>e quindi brew unlink <formula>, che rimuove tutti i collegamenti.


Giusto, ma questo collega ancora Ruby, che fallirà se c'è una versione già collegata. Voglio installare senza mai collegare.
anche il

0

Non sono sicuro di Ruby, ma per fare questo per molti software, potresti voler semplicemente scaricare il sorgente e regolare il file make, oppure usare i flag per lo script di configurazione di autoconf per specificare la directory di installazione che vuoi, e poi puoi eseguirlo da lì.

(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]
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.