Bundler für Nicht-Ruby-Abhängigkeiten von Homebrew, Homebrew Cask, Mac App Store, Walebrew und Visual Studio Code.
Homebrew (unter macOS oder Linux) zur Installation von Abhängigkeiten.
Homebrew Cask ist optional und wird zur Installation von MAC -Anwendungen verwendet.
MAS-CLI ist optional und wird zur Installation von Mac App Store-Anwendungen verwendet.
Whalebrew ist optional und wird zur Installation von Walebrew -Bildern verwendet.
Der Visual Studio -Code ist optional und wird zur Installation von Visual Studio -Code -Erweiterungen verwendet.
brew bundle
wird beim ersten Ausführen automatisch installiert.
Siehe den brew bundle
Bündelabschnitt des brew generate-man-completions
oder brew bundle --help
.
Ein Beispiel Brewfile
:
# 'brew tap'
tap "homebrew/cask"
# 'brew tap' with custom Git URL
tap "user/tap-repo" , "https://[email protected]/user/homebrew-tap-repo.git"
# 'brew tap' with arguments
tap "user/tap-repo" , "https://[email protected]/user/homebrew-tap-repo.git" , force_auto_update : true
# set arguments for all 'brew install --cask' commands
cask_args appdir : "~/Applications" , require_sha : true
# 'brew install'
brew "imagemagick"
# 'brew install --with-rmtp', 'brew link --overwrite', 'brew services restart' on version changes
brew "denji/nginx/nginx-full" , link : :overwrite , args : [ "with-rmtp" ] , restart_service : :changed
# 'brew install', always 'brew services restart', 'brew link', 'brew unlink mysql' (if it is installed)
brew "[email protected]" , restart_service : true , link : true , conflicts_with : [ "mysql" ]
# install only on specified OS
brew "gnupg" if OS . mac?
brew "glibc" if OS . linux?
# 'brew install --cask'
cask "google-chrome"
# 'brew install --cask --appdir=~/my-apps/Applications'
cask "firefox" , args : { appdir : "~/my-apps/Applications" }
# bypass Gatekeeper protections (NOT RECOMMENDED)
cask "firefox" , args : { no_quarantine : true }
# always upgrade auto-updated or unversioned cask to latest version even if already installed
cask "opera" , greedy : true
# 'brew install --cask' only if '/usr/libexec/java_home --failfast' fails
cask "java" unless system "/usr/libexec/java_home" , "--failfast"
# 'mas install'
mas "1Password" , id : 443_987_910
# 'whalebrew install'
whalebrew "whalebrew/wget"
# 'vscode --install-extension'
vscode "GitHub.codespaces"
Homebrew ist ein Rolling -Release -Paket -Manager, weshalb die Installation von willkürlichen älteren Softwareversionen nicht unterstützt wird. Wenn Ihre Software spezifische Fixed -Versionen benötigt, sollten Sie whalebrew
-Linien in Ihrer Brewfile
in Betracht ziehen, um Docker -Container zu installieren.
Nach einem erfolgreichen brew bundle
-Lauf schafft es eine Brewfile.lock.json
, um die Umgebung aufzunehmen. Wenn ein zukünftiger brew bundle
fehlschlägt, können Sie die Unterschiede zwischen Brewfile.lock.json
auf Debugug überprüfen. Da es lokale Umgebungsinformationen enthalten kann, die zwischen den Systemen unterschiedlich sind, lohnt es sich nicht, sich für die Versionskontrolle für Multi-Benutzer-Repositorys zu verpflichten.
Deaktivieren Sie die Erzeugung der Datei Brewfile.lock.json
, indem Sie die Umgebungsvariable mit export HOMEBREW_BUNDLE_NO_LOCK=1
oder mithilfe des Befehlszeilenarguments brew bundle --no-lock
einstellen.
brew bundle
unterstützt derzeit Homebrew, Homebrew Cask, Mac App Store, Walebrew und Visual Studio Code.
Wir interessieren uns für Beiträge für andere Installateure/Checkers/Dumpers, müssen jedoch:
Brewfile
gespeichert werden kannsudo
installiert wirdHinweis: Basierend auf diesen Kriterien würden wir z.
Tests können mit bundle install && bundle exec rspec
ausgeführt werden. Die Syntax -Linie kann mit brew style homebrew/bundle
betrieben werden.
Copyright (c) Homebrew -Betreuer und Andrew Nesbitt. Weitere Informationen finden Sie in Lizenz.