Homebrew Demystified Ultimate Package Manager di OS X

Continui a vedere la parola "Homebrew" ogni volta che installi un'applicazione che non viene semplicemente trascinata nella cartella Applicazioni. Cos'è l'Homebrew? Il sito dice "gestore pacchetti", ma cos'è un gestore di pacchetti? Cos'è un pacchetto? Cos'è un manager? Lì, lì - non c'è bisogno di tirare fuori i capelli. Vedremo tutto questo e altro nel tutorial di oggi.


Cos'è l'Homebrew?


homebrew

Homebrew è un gestore di pacchetti per OS X, abbiamo coperto così tanto. Ma che cos'è in realtà, in parole povere? Per spiegarlo, dobbiamo coprire l'idea di "pacchetti".


Pacchi

I pacchetti sono pacchetti di codice sorgente distribuiti dagli sviluppatori di software, che possono essere compilati e installati sulla macchina. Sono poco più di un archivio (non diverso da zip) pieno di vari file. Quindi, perché non fare riferimento a loro come archivi? Bene, i pacchetti hanno la caratteristica specifica di essere ciò che si potrebbe chiamare "installabile".

I pacchetti sono pacchetti installabili di codice sorgente.

Quando scarichi manualmente un bundle di codice sorgente, devi in ​​genere annullarlo (espanderlo), quindi andare nella cartella prodotta da questo processo, eseguire diversi comandi criptici (make, configure) e infine, con molta fortuna, il il software viene installato.

Questo fallirà spesso se non si soddisfano alcuni prerequisiti. Ad esempio, hai la versione del sistema operativo sbagliata o non hai alcuni pacchetti preinstallati da cui dipende il pacchetto che stai cercando di installare (questi sono chiamati dipendenze). È possibile vedere questa procedura criptica e apparentemente complessa in un precedente articolo sull'installazione di PHP dal codice sorgente.

Un esempio di tale software sarebbe Imagemagick. Imagemagick è una libreria e uno strumento da riga di comando per la manipolazione delle immagini. In parole povere, è un insieme di programmi che ti aiutano a modificare le immagini in vari modi digitando i comandi nell'applicazione Terminale.

Dire che è una "biblioteca" significa in realtà che può essere utilizzato da altri programmi - il che significa che è possibile avviare comandi Imagemagick da altri linguaggi come Java, PHP, ecc., Installando ulteriori aggiornamenti in quelle lingue.

Una libreria è un insieme di file che possono essere utilizzati da altre applicazioni e linguaggi di programmazione per ottenere lo stesso effetto con vari mezzi.

L'installazione di questa libreria è in realtà abbastanza semplice. Basta scaricare il file binario di installazione (file eseguibile) ed eseguirlo. Sfortunatamente, mantenere il software aggiornato è meno semplice, e dopo aver installato dozzine di librerie simili e simili, è facile perdere traccia di dove è stato posizionato, quindi intasare il disco rigido. È qui che arrivano i manager dei pacchetti.


Gestore pacchetti

Un gestore di pacchetti è un'applicazione che gestisce tutto quanto sopra per te con un semplice comando. Fino a poco tempo fa, MacPorts era il gestore di pacchetti di scelta per OS X, seguito da vicino da Fink. Non entrerò nei confronti di questi gestori qui, e se sei interessato a saperne di più puoi Google in giro per articoli come questo.

Cosa fa un gestore di pacchetti?

Cosa fa esattamente un gestore di pacchetti? La premessa è semplice:

  1. Accetta un singolo comando come input e individua il pacchetto software che si desidera installare
  2. Scarica il codice sorgente del pacchetto (o nel caso di Fink, l'applicazione pre-costruita stessa)
  3. Capisce se sono presenti eventuali dipendenze e, in tal caso, li scarica anche
  4. Compila (crea) le dipendenze dai file del codice sorgente e le installa
  5. Crea il tuo software richiesto
  6. Installa nella posizione predefinita

Un gestore di pacchetti come Homebrew gestisce automaticamente tutte le dipendenze e installa il software richiesto in una posizione comune per un facile accesso e aggiornamento.

Pertanto, l'installazione del suddetto Imagemagick con Homebrew diventa semplice come la corsa brew install imagemagick.


Installazione e dettagli Homebrew

Per installare Homebrew, tutto ciò che devi fare è eseguire la tua app Terminale (Applicazioni> Utilità> Homebrew) ed eseguire il seguente comando:

 ruby -e "$ (curl -fsSkL raw.github.com/mxcl/homebrew/go)"

Non è necessario cuocere il tuo noodle su ciò che significa, tutto ciò che devi sapere è che installa il gestore pacchetti e lo prepara per l'uso.

Se ora corriamo preparare il medico, Homebrew si autodiagnostica, controlla se tutto funziona come dovrebbe e riporta. Di solito ti dirà cosa c'è che non va nei dettagli, in modo che tu possa aiutarti a risolverlo molto velocemente, nella remota possibilità che qualcosa vada storto.

Brew Doctor è lo strumento di autodiagnosi di Homebrew.

Una volta fatto, dovresti correre preparare l'aggiornamento per scaricare nuove "formule".


Aggiornamento Brew in esecuzione

Le formule sono istruzioni per Homebrew su come installare software specifici e dove trovare i file e le dipendenze necessari. Ad esempio, una di queste formule è la formula imagemagick che contiene la posizione dei file di origine di Imagemagick, un elenco di tutte le dipendenze, istruzioni su come e dove installare i file e su come aggiornare l'applicazione. Homebrew conserva queste istruzioni e le aggiorna ogni volta che corri preparare l'aggiornamento per fornirti sempre le "ricette" più recenti. Tuttavia, è importante notare che "update" aggiorna solo Homebrew stesso - non aggiornerà il software. Se si desidera aggiornare un software specifico, è necessario utilizzare il comando "upgrade".

brew update è per l'aggiornamento di Homebrew, l'aggiornamento brew è per l'aggiornamento del software installato

Se la suite Imagemagick dovesse essere aggiornata in seguito, tutto ciò che devi fare è eseguire preparare aggiornamento imagemagick. Per aggiornare tutte le formule installate obsolete, puoi semplicemente eseguire preparare l'aggiornamento, che controlla automaticamente l'intera "Cantina" (la cartella in cui è installato tutto il software HomeHost-Fetch) per installazioni obsolete e le sostituisce con le versioni più recenti.

Se desideri disinstallare una formula perché ritieni di non averne più bisogno o ti sembra di stare pericolosamente in basso sullo spazio del disco, c'è il brew uninstall [formula] comando in cui [formula] deve essere sostituito dal nome della formula, ad es. brew uninstall imagemagick.

Per vedere un elenco della maggior parte delle formule disponibili, vedere questo, ma tieni presente che ci sono altri "tocchi" là fuori - quelli creati su misura che hanno formule non ospitate nel repository principale di Homebrew, e come tale potrebbe dover essere aggiunto specificamente per diventare disponibili, ma offrire alcuni software utili una volta che sono. Uno di questi esempi è il repository brew relativo a PHP di Jose Gonzales che consente di installare PHP con Homebrew, evitando così parte della complessità inutile del suddetto post in PHP..

Puoi leggere i dettagli su questo repository specifico sul suo sito web, ma un altro comando che vorrei menzionare è il "tap": brew tap [repo] dove [repo] è sostituito dal nome del repository, in questo modo: brew tap josegonzalez / homebrew-php. Il comando tap "apre un rubinetto", cioè consente a Homebrew di leggere un altro repository di formule. Questo espande quindi le opzioni del software installabile.


Conclusione

Adesso sai cos'è l'Homebrew e lo fa. Ci sono molti altri comandi da scoprire, ma a questo punto sono irrilevanti visto che chi ne ha già bisogno di solito li conosce. Ciò che importa è che ora sai come installare e aggiornare il software installato nel terminale con una singola riga di input. Spero che questo articolo abbia alleviato parte della paura e della mistica attorno a Homebrew, e spero che lo proverai e scoprirai qualche nuovo software interessante attraverso di esso.

Come sempre, grazie per la lettura, e se avete domande per favore post nei commenti e farò del mio meglio per rispondere il prima possibile. Ti piacerebbe saperne di più su un determinato argomento relativo a Mac o su una parte di OS X che ti confonde o ti spaventa? Si prega di postare anche questo, e faremo del nostro meglio per coprirlo il più presto possibile.