Homebrew für macOS, Windows 10 und Linux

brewing

brewing

Auf die Frage „Was macht Homebrew?“ antwortet die deutschsprachige Projektseite mit „Homebrew installiert Zeug, das du brauchst, Apple aber nicht mitliefert.“

Seit der Version 2.0 macht Homebrew das auch offiziell unter Windows 10 und Linux. Mit Zeug ist beispielsweise die Programmiersprache Python gemeint, Kommandozeilenbefehle wie wget, die Bibliothek OpenSSL, der Editor VIM, das Node Projekt, die Programmiersprache Ruby, die Datenbank MySQL, die Programmiersprache Go und viele tausende Programme mehr.

Seit ein paar Versionen sammelt Homebrew optional Daten darüber, was so installiert wird. Das Ergebnis dieser anonym visualisierten Daten findet sich im Analytics Bereich (https://formulae.brew.sh/analytics/). Ausserdem gibt es ein Diskussionsforum für die Community, eine ausführliche Dokumentation, ein Blog, eine Spendenmöglichkeit und natürlich das Verzeichnis der zur Verfügung stehenden Pakete.

homebrew
homebrew

Homebrew selbst ist in der Sprache Ruby geschrieben und eine freie und quelloffene Paketverwaltung, die die Installation von Software erheblich vereinfacht. Da die Sprache Ruby auf dem Mac bereits vorinstalliert ist, erlangte Homebrew in der Ruby-on-Rails Szene so um das Jahr 2013 eine starke Verbreitung. Das Projekt erfreut sich seither grosser Beliebtheit. Seit zwei Jahren steht Homebrew auch für Linux zur Verfügung und seit ein paar Monaten nun auch für Windows.

Die Software, die Homebrew installiert, lässt sich vollständig wieder vom Rechner entfernen und daher ist es auch eine gute Wahl, wenn du mal etwas ausprobieren willst.

Die Installation auf einem Mac ist denkbar einfach. Man öffnet ein Terminalfenster, kopiert den Befehl …

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

dort hinein und drückt die Enter Taste. Je nach Geschwindigkeit der Internetverbindung ist die Installation nach kurzer Zeit erledigt.

Erfolgreiche Installation von Homebrew

Der Befehl brew help gibt eine Übersicht über die möglichen Befehle.

Hagens-MacBook:local hagengraf$ brew help
Example usage:
  brew search [TEXT|/REGEX/]
  brew info [FORMULA...]
  brew install FORMULA...
  brew update
  brew upgrade [FORMULA...]
  brew uninstall FORMULA...
  brew list [FORMULA...]

...

Ein einfaches Installationsbeispiel ist das Programm wget. Es steht unter macOS nicht zur Verfügung, ist aber extrem praktisch. Du kannst damit Dateien auf vielfältige Weise aus dem Internet laden. Der Aufruf wget blog.novatrend.ch lädt beispielsweise die index.html Datei des Blogs herunter. So sieht das aus:

Hagens-MacBook:Documents hagengraf$ wget blog.novatrend.ch
--2019-04-13 16:16:09--  http://blog.novatrend.ch/
Aufl"osen des Hostnamens blog.novatrend.ch (blog.novatrend.ch)... 193.33.128.50
Verbindungsaufbau zu blog.novatrend.ch (blog.novatrend.ch)|193.33.128.50|:80 ... verbunden.
HTTP-Anforderung gesendet, auf Antwort wird gewartet ... 200 OK
L"ange: 89790 (88K) 
Wird in >>index.html<< gespeichert.

index.html                            100%[=======================================================================>]  87.69K   505KB/s    in 0.2s    

2019-04-13 16:16:09 (505 KB/s) - >>index.html<< gespeichert [89790/89790]

Ausser dieser einzelnen Datei kannst du auch ganze Websites oder einzelne sehr grosse Dateien laden. Ich benutze es beispielsweise oft für den Download von Drupal Paketen und Linux Distributionen. Wget ist mit zahlreichen Parametern konfigurierbar und – wie gesagt – „Zeug, das du brauchst“.

Mit Homebrew installierst du wget folgendermassen:

brew install wget

Danach kannst du wget einfach benutzen. Zur Installation benutzt Homebrew kleine, in Ruby geschriebene Installationsskripte mit allen Abhängigkeiten und nennt sie Formeln (formulae). Mit dem Befehl

brew edit wget

kannst du dir das Skript für die Installation von wget ansehen (und natürlich auch verändern, wenn du willst).

Weil das so schön geht, wünscht man sich das natürlich auch für „normale“ Software, und auch das kann Homebrew. Der Befehl brew cask installiert ganz normale macOS Software (auch nicht Open Source Software).
Den Firefox Browser kannst du beispielswiese mit dem Befehl

brew cask install firefox 

installieren. Die Liste aller möglichen cask Installationen findest du unter https://formulae.brew.sh/cask/ oder direkt als JSON unter https://formulae.brew.sh/api/cask.json. Momentan sind es etwa 5000 Programme.

Wer beispielsweise, so wie ich gerade, eine lokale Entwicklungsumgebung für Mastodon benötigt, benötigt eine Menge Software (ImageMagick, FFmpeg, PostgreSQL, Node, Redis und weitere). Das alles zu installieren dauert lange und ist schwer wieder zu deinstallieren. Mit Docker geht es auch nicht wirklich, steht zumindest im Development Guide.

Don’t use Docker to do development. It’s a quick way to get Mastodon running in production, it’s really really inconvenient for development

https://github.com/tootsuite/documentation/blob/master/Running-Mastodon/Development-guide.md

Dieser Homebrew Befehl, der alles installiert, löst das Problem doch recht elegant:

brew install imagemagick ffmpeg yarn postgresql redis rbenv nodejs protobuf libidn

Fazit

Egal, was du auf deinem lokalen Rechner ausprobieren willst, Homebrew ist eine gute Ausgangsbasis. Wenn du keine Daten an das Projekt weitergeben willst, so kannst du die Sammelei mit dem Befehl brew analytics off ausschalten.

Links


tl;dr: Homebrew ist der fehlende Paketmanager in macOS, Linux und Windows 10

Autor: hagengraf

consultant, author, trainer, solution finder, web architect, developer, open source lover, visionary, orator, the good old webmaster. Able to simplify!

Kommentar verfassen