Status: Veraltet
Dieser Artikel ist veraltet und wird nicht mehr gewartet.
Grund
Homebrew bietet nun offizielle Unterstützung für Linux.
Stattdessen ansehen
Dieser Artikel kann immer noch als Referenz nützlich sein, funktioniert jedoch möglicherweise nicht mehr oder folgt nicht den besten Praktiken. Wir empfehlen dringend, einen aktuellen Artikel für das von Ihnen verwendete Betriebssystem zu verwenden.
Einführung
LinuxBrew ist ein Linux-Fork des beliebten Mac OS X-Paketmanagers HomeBrew.
LinuxBrew ist eine Paketverwaltungssoftware, die die Installation von Paketen aus dem Quellcode ermöglicht, zusätzlich zur Standard-Paketverwaltung des Systems (z. B. „apt/deb“ in Debian/Ubuntu und „yum/rpm“ in CentOS/RedHat).
Warum LinuxBrew verwenden?
-
HomeBrew wurde ursprünglich für Mac OS X entwickelt (das kein standardisiertes Open-Source-Paketverwaltungssystem hat). Es hat Paketverwaltungen wie MacPorts und Fink abgelöst. LinuxBrew ist Homebrew für Linux portiert.
-
Die meisten Linux-Distributionen verfügen über ein gutes Paketverwaltungssystem (z. B. „apt/deb“ in Debian/Ubuntu und „yum/rpm“ in CentOS/RedHat), jedoch
-
Pakete in den Standard-Repositories sind oft älter als die neuesten verfügbaren Versionen, und
-
Viele Open-Source-Pakete sind nicht in den Standard-Repositories verfügbar (z. B. gängige bioinformatische Werkzeuge).
-
-
LinuxBrew stellt ein Repository von Softwareinstallationsrezepten bereit (Pakete werden aus Quellen installiert und lokal auf dem Rechner kompiliert), um die Pakete aus dem Standard-Repository der Distribution zu ergänzen.
-
LinuxBrew bietet eine einfache Methode, um eigene Repositories zu erstellen (d.h. eine Liste von Open-Source-Paketen, die auf Ihre Bedürfnisse zugeschnitten sind).
-
LinuxBrew installiert Software in einem vom Benutzer festgelegten Verzeichnis (nicht systemweit) und erfordert keinen
sudo
-Zugriff. -
LinuxBrew (und HomeBrew) integrieren sich sehr gut mit GitHub und ermöglichen so ein einfaches Teilen von Installationsrezepten.
Insbesondere bei DigitalOcean, das (zum Zeitpunkt dieser Schreibens) keine gemeinsam nutzbaren Droplet-Images (mit benutzerdefinierter installierter Software) bereitstellt, kann ein LinuxBrew-Repository eine schnelle Methode bieten, um spezifische Pakete und Versionen auf einem Standard-Linux-Rechner zu installieren.
Das Wesentliche von LinuxBrew
Einfach ausgedrückt, übernimmt LinuxBrew das Herunterladen der tar.gz
-Datei und das Ausführen von ./configure && make && make install
für Sie (oder welche Befehle auch immer zur Installation des Pakets benötigt werden).
A LinuxBrew Formula is a Ruby script which defines where to find the tar.gz
file, how to build the package, and how to install it.
A formula file can be as simple as hmmer.rb (a bioinformatics tool):
class Hmmer < Formula
homepage 'http://hmmer.janelia.org/'
url 'http://selab.janelia.org/software/hmmer3/3.1b1/hmmer-3.1b1.tar.gz'
def install
system "./configure", "--prefix=#{prefix}"
system "make"
system "make install"
end
end
Oder so kompliziert wie emacs.rb.
Sobald eine Formeldatei ordnungsgemäß definiert ist, erfolgt die Installation des Pakets einfach durch Ausführen:
$ brew install FORMULA
Vorbereitung für LinuxBrew – Debian/Ubuntu
Für Debian/Ubuntu-basierte Systeme führen Sie die folgenden Befehle aus:
$ sudo apt-get update
$ sudo apt-get upgrade -y
$ sudo sudo apt-get install -y build-essential make cmake scons curl git \
ruby autoconf automake autoconf-archive \
gettext libtool flex bison \
libbz2-dev libcurl4-openssl-dev \
libexpat-dev libncurses-dev
Vorbereitung für LinuxBrew – CentOS/RedHat
Für RedHat/CentOS-basierte Systeme führen Sie die folgenden Befehle aus:
$ sudo yum update -y
$ sudo yum groupinstall -y "Development Tools"
$ sudo yum install -y \
autoconf automake19 libtool gettext \
git scons cmake flex bison \
libcurl-devel curl \
ncurses-devel ruby bzip2-devel expat-devel
Installation von LinuxBrew
Die Installation von LinuxBrew ist einfach eine Frage des Klonens des LinuxBrew-Repositorys.
Schritt 1 – Klonen von LinuxBrew
Um die Dinge ordentlich zu halten, klonen Sie LinuxBrew in ein verstecktes Verzeichnis im Home-Verzeichnis des Benutzers:
$ git clone https://github.com/Homebrew/linuxbrew.git ~/.linuxbrew
Aber jedes andere Verzeichnis würde genauso gut funktionieren.
Schritt 2 – Aktualisieren von Umgebungsvariablen
Der nächste Schritt besteht darin, LinuxBrew zu den Umgebungsvariablen des Benutzers hinzuzufügen.
Fügen Sie die folgenden Zeilen am Ende der Datei ~/.bashrc
des Benutzers hinzu:
# Bis LinuxBrew behoben ist, ist das Folgende erforderlich.
# Siehe: https://github.com/Homebrew/linuxbrew/issues/47
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:/usr/local/lib64/pkgconfig:/usr/lib64/pkgconfig:/usr/lib/pkgconfig:/usr/lib/x86_64-linux-gnu/pkgconfig:/usr/lib64/pkgconfig:/usr/share/pkgconfig:$PKG_CONFIG_PATH
## Setup linux brew
export LINUXBREWHOME=$HOME/.linuxbrew
export PATH=$LINUXBREWHOME/bin:$PATH
export MANPATH=$LINUXBREWHOME/man:$MANPATH
export PKG_CONFIG_PATH=$LINUXBREWHOME/lib64/pkgconfig:$LINUXBREWHOME/lib/pkgconfig:$PKG_CONFIG_PATH
export LD_LIBRARY_PATH=$LINUXBREWHOME/lib64:$LINUXBREWHOME/lib:$LD_LIBRARY_PATH
HINWEIS: Wenn Sie LinuxBrew in ein anderes Verzeichnis installiert haben, ändern Sie den Pfad in LINUXBREWHOME
oben.
Schritt 3 – Installation testen
Um sicherzustellen, dass diese Änderungen wirksam werden, melden Sie sich ab und wieder an. Die Shell sollte dann diese neuen Einstellungen verwenden.
Um diese neuen Einstellungen zu testen, versuchen Sie:
$ which brew
/home/ubuntu/.linuxbrew/bin/brew
$ echo $PKG_CONFIG_PATH
/home/ubuntu/.linuxbrew/lib64/pkgconfig:/home/ubuntu/.linuxbrew/lib/pkgconfig:/usr/local/lib/pkgconfig:/usr/local/lib64/pkgconfig:/usr/lib64/pkgconfig:/usr/lib/pkgconfig:/usr/lib/x86_64-linux-gnu/pkgconfig:/usr/lib64/pkgconfig:/usr/share/pkgconfig:
Pakete mit LinuxBrew installieren
Welche Pakete sind verfügbar?
Geben Sie brew search
ein, um die Liste aller verfügbaren Pakete anzuzeigen (alle Pakete, die derzeit in der Installation von LinuxBrew bekannt sind – siehe unten, wie Sie Repositories hinzufügen können).
Geben Sie brew search WORT
ein, um alle Pakete (im HomeBrew-Jargon als Formeln bezeichnet) anzuzeigen, die WORT enthalten. Beispiel:
$ brew search xml
blahtexml libnxml libxml2 xml-coreutils xml2 xmlrpc-c
html-xml-utils libwbxml libxmlsec1 xml-security-c xmlcatmgr xmlsh
libmxml libxml++ tinyxml xml-tooling-c xmlformat xmlstarlet
Ein Paket installieren
Um ein Paket zu installieren, führen Sie brew install PAKET
aus.
Beispiel, Installation von jq – JSON-Prozessor:
$ brew install jq
==> Downloading http://stedolan.github.io/jq/download/source/jq-1.3.tar.gz
==> ./configure
==> make
/home/ubuntu/.linuxbrew/Cellar/jq/1.3: 7 files, 256K, built in 10 seconds
$ which jq
/home/ubuntu/.linuxbrew/bin/jq
$ jq --version
jq version 1.3
Die Nützlichkeit von LinuxBrew ist offensichtlich: Während Ubuntu jq in den neuesten Repositories hat, ist die Version veraltet (1.2). Debian Stable und Testing haben das jq-Paket überhaupt nicht. Die Version von LinuxBrew ist die neueste (1.3). Darüber hinaus installiert LinuxBrew das Programm an einem Pfad, der nicht mit dem Standardstandort des Systems in Konflikt steht.
Vorhandene HomeBrew-Repositories hinzufügen
Die HomeBrew/LinuxBrew-Repositories werden TAPS genannt. Dies sind einfach GitHub-Repositories, die Ruby-Skripte (‚Formulas‘) enthalten. Der HomeBrew-GitHub-Benutzer hat mehrere gemeinsame Repositories.
Beispiel: Hinzufügen des homebrew-science-Repository (das viele nützliche Open-Source-wissenschaftliche Programme enthält) und des HomeBrew-Games-Repository:
$ brew tap homebrew/science
Cloning into '/home/ubuntu/.linuxbrew/Library/Taps/homebrew-science'...
Tapped 237 formula
$ brew tap homebrew/games
Cloning into '/home/ubuntu/.linuxbrew/Library/Taps/homebrew-games'...
Tapped 57 formula
Liste verfügbarer Taps:
$ brew tap
homebrew/science
homebrew/games
Installieren Sie jedes Paket aus diesen Repositories:
$ brew install gnu-go
==> Downloading http://ftpmirror.gnu.org/gnugo/gnugo-3.8.tar.gz
#################################################################
==> ./configure --prefix=/home/ubuntu/.linuxbrew/Cellar/gnu-go/3.8 --with-readline=/usr/lib
==> make install
/home/ubuntu/.linuxbrew/Cellar/gnu-go/3.8: 9 files, 7.0M, built in 60 seconds
Aktualisierung von TAPs und Paketen
Um Updates für Formeln herunterzuladen, führen Sie aus:
$ brew update
Um Pakete zu aktualisieren (falls Updates verfügbar sind), führen Sie aus:
$ brew upgrade PACKAGE
Erstellen von benutzerdefinierten/privaten TAPs (Repositories)
A HomeBrew TAP/Repository is simply a collection of Formulas – Ruby scripts stored in local files or in GitHub repositories.
Formeln in lokalen Dateien
Um eine Formel aus einer lokalen Datei zu installieren, führen Sie aus:
$ brew install /full/path/to/file.rb
Dies ist nützlich beim Erstellen (und Debuggen) einer neuen Formel.
Formeln in GitHub-Repositories
Um ein benutzerdefiniertes TAP-Repository in GitHub zu erstellen, erstellen Sie ein neues GitHub-Repository (in Ihrem GitHub-Benutzerkonto) und benennen Sie es homebrew-NAME
. Es muss mit „homebrew-“ beginnen, um als HomeBrew/LinuxBrew-Tap zu funktionieren. NAME
kann ein beliebiger Name sein, den Sie möchten.
Beispiel:
GitHub-Benutzer agordon hat ein HomeBrew-Repository namens gordon, die vollständige URL lautet: https://github.com/agordon/homebrew-gordon.
Um dieses Repository zu verwenden („anzapfen“):
$ brew tap agordon/gordon
Cloning into '/home/ubuntu/.linuxbrew/Library/Taps/agordon-gordon'...
Warning: Could not tap agordon/gordon/libestr over Homebrew/homebrew/libestr
Warning: Could not tap agordon/gordon/coreutils over Homebrew/homebrew/coreutils
Tapped 12 formula
ANMERKUNGEN
-
brew tap
verwendete den Benutzernamenagordon
und das Repositoriesuffixgordon
(Suffix von ‚homebrew-gordon‘) und deduzierte die GitHub-URL zum Zugriff. -
Formeln in benutzerdefinierten Repositories können mit Formeln in den offiziellen HomeBrew-Repositories in Konflikt geraten. Das ist völlig normal. Siehe unten, wie solche Pakete installiert werden.
Um nicht konfliktaufällige Pakete aus benutzerdefinierten Repositories zu installieren, führen Sie Folgendes aus:
$ brew install libjson
Um Pakete aus bestimmten Taps zu installieren, führen Sie Folgendes aus:
$ brew install agordon/gordon/coreutils
Weitere Informationen
HINWEIS: Beim Lesen von HomeBrew-bezogenen Informationen beachten Sie bitte, dass HomeBrew für Mac OS X entwickelt wurde.
LinuxBrew (der Linux-Port von HomeBrew) weist viele Gemeinsamkeiten mit HomeBrew auf, aber auch einige Linux-spezifische Unterschiede.
<div class=“author”>Eingereicht von <a href=“https://github.com/agordon”>Assaf Gordon</a></div>
Source:
https://www.digitalocean.com/community/tutorials/how-to-install-and-use-linuxbrew-on-a-linux-vps