Homebrew

macOS Paketmanager - CLI-Tools und Apps mit einem Befehl installieren, Abhangigkeiten automatisch verwalten

TL;DR

Was: Der fehlende Paketmanager für macOS (und Linux).

Warum: Software mit einem Befehl installieren, Abhängigkeiten automatisch verwalten.

Quick Start

Homebrew installieren:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

Zum PATH hinzufügen (Apple Silicon Mac):

echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile
eval "$(/opt/homebrew/bin/brew shellenv)"

Installation überprüfen:

brew --version

Ein Paket installieren:

brew install wget
brew install git
brew install node

GUI-Apps installieren (Casks):

brew install --cask visual-studio-code
brew install --cask google-chrome
brew install --cask docker

Cheatsheet

BefehlBeschreibung
brew install pkgEin Paket installieren
brew uninstall pkgEin Paket entfernen
brew upgradeAlle Pakete upgraden
brew upgrade pkgBestimmtes Paket upgraden
brew updateHomebrew selbst aktualisieren
brew listInstallierte Pakete auflisten
brew search textNach Paketen suchen
brew info pkgPaketinformationen
brew doctorProbleme diagnostizieren
brew cleanupAlte Versionen entfernen
brew services listHintergrunddienste auflisten
brew services start pkgEinen Dienst starten

Gotchas

Command not found after install

# Zum PATH hinzufügen (überprüfen Sie Ihre Shell)
# Für zsh (Standard unter macOS):
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile

# Für bash:
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.bash_profile

# Dann neu laden:
source ~/.zprofile  # oder ~/.bash_profile

Permission errors

# Homebrew-Verzeichnisberechtigungen korrigieren
sudo chown -R $(whoami) /opt/homebrew

# Oder für Intel Mac:
sudo chown -R $(whoami) /usr/local/Homebrew

Package conflicts

# Konfliktierendes Paket unlinken
brew unlink pkg

# Das gewünschte Paket linken
brew link pkg

# Bei Bedarf erzwungen linken
brew link --overwrite pkg

Brew doctor warnings

# Diagnose ausführen
brew doctor

# Warnungen über ungelinkte Kegs sind normalerweise sicher zu ignorieren
# Beheben Sie Probleme wie in der Ausgabe vorgeschlagen

Next Steps