Come posso integrare Homebrew con software non gestito in / usr / local?

5

Sto per passare a Homebrew sistema di gestione dei pacchetti, e quasi tutto sembra molto semplice. Però, Sto usando questo computer da un po 'e quindi ne ho già un sacco roba in /usr/local . Sto bene cancellando quasi tutto ciò, come ci sono formule per quasi tutto lì dentro. Tuttavia, è il "quasi" che è portando alla mia attuale confusione. Ci sono alcuni eseguibili, inclusi quelli pubblicati quelli, piccoli script personali e persino tool-in mate di TextMate /usr/local/bin che non sono disponibili tramite Homebrew. Suggerimenti Homebrew La pagina 'N' Tricks suggerisce usando ./configure --prefix=/usr/local/Cellar/foo/1.2 && make && make install && brew link foo , ma questo è solo un suggerimento utile se c'è qualcosa che vorrei piace effettivamente build , piuttosto che un semplice binario o un collegamento simbolico a qualcosa locale.

La mia domanda, quindi, è come trattare con software non gestito e Homebrew contemporaneamente. Vedo alcuni possibili approcci:

  1. mescolare i due liberamente. Non posso dire se Homebrew mi tollererà il dumping binari non gestiti e collegamenti simbolici in /usr/local/bin ; la mia ipotesi è che funzionerà per ora, ma porterà solo a problemi lungo la strada. Tuttavia, anche io vedere che Homebrew dovrebbe essere flessibile con le gerarchie di file esistenti. Sarei curioso di sapere qual è la linea ufficiale su questo. Tuttavia, non è chiaro che sia un approccio attraente.
  2. (Ab?) Usa il sistema ufficiale. Crea vuoto /usr/local/Cellar/foo/1.0 directory, copia i file binari / link simbolici e poi brew link foo . Questo farà sì che i collegamenti simbolici vengano indirizzati due volte, ma ciò non sembra come a vero problema Questo mi sembra il miglior approccio, ma non l'ho usato Homebrew, non sono sicuro degli inconvenienti. Questo causerà problemi a lungo termine quando, ad esempio, si aggiornano le formule o quando sono nuove vengono create formule sovrapposte?
  3. Basta non mescolare i due. Ci sono due approcci qui:
    1. Metti i miei binari / collegamenti simbolici personali in un'altra directory. non ne sono sicuro qual è la posizione migliore ( ~/bin ? ~/usr/bin ? Qualcos'altro?), ma risolve il problema di mixaggio puntando su di esso.
    2. Inserisci Homebrew in un'altra directory ( ad es. , /usr/homebrew/ ). Questo risolve il problema allo stesso modo di 3.1. Lo svantaggio è che io sono mettere Homebrew da qualche parte non standard, il che sembra che sarà giusto causare una serie di piccoli mal di testa minori a lungo termine.
  4. Qualcos'altro che non so o non ho pensato.

Qual è il modo migliore per farlo? Esiste uno ufficiale? Sono ovvi difetti o benefici a qualcuno di questi approcci a cui non ho pensato?

    
posta Antal Spector-Zabusky 27.12.2011 - 09:01
fonte

2 risposte

6

Io uso 1.

Compilo il mio software usando /usr/local come prefisso e ho finito. Non ho avuto problemi finora. Non so se avrò dei problemi, ma ho iniziato ~ 1 ora fa e finora tutto bene.

Tuttavia ...

Se dovessi ricominciare oggi, seguirei 2 (che non sapevo all'epoca). In questo modo è abbastanza facile sapere dove è tutto e cosa, esattamente, il software ha installato (poiché la gerarchia per /usr/local/Cellar/foo/1.0 è qualcosa come

bin/      etc/      include/  lib/      share/

)

3 non sembra degno.

    
risposta data 27.12.2011 - 10:25
fonte
1

Homebrew tollera perfettamente le cose non homebrew in /usr/local . Puoi confermare che va tutto bene, facendo brew doctor - se qualcosa potrebbe essere in conflitto, homebrew ti avviserà.

    
risposta data 04.06.2014 - 01:39
fonte

Leggi altre domande sui tag