Бандлер для безмолвных зависимостей от Homebrew, Homebrew Cask, Mac App Store, Whalebrew и Visual Studio Code.
Homebrew (на MacOS или Linux) для установки зависимостей.
Homebrew Cask является необязательным и используется для установки MAC -приложений.
MAS-CLI необязательно и используется для установки приложений Mac App Store.
Whalebrew не является обязательным и используется для установки изображений Whalebrew.
Visual Studio Code является необязательным и используется для установки расширений кода Visual Studio.
brew bundle
автоматически устанавливается при первом запуске.
См. Раздел brew bundle
в выводе вывода brew generate-man-completions
или brew bundle --help
.
Пример 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 - это диспетчер пакетов Rolling Release, поэтому он не поддерживает установку произвольных старых версий программного обеспечения. Если вашему программному обеспечению нужны конкретные закрепленные версии, рассмотрим линии whalebrew
в вашем Brewfile
для установки контейнеров Docker.
После успешного запуска brew bundle
он создает Brewfile.lock.json
для записи окружающей среды. Если пробег в будущем brew bundle
не удастся, вы можете проверить различия между Brewfile.lock.json
доладки. Поскольку он может содержать информацию о локальной среде, которая меняется между системами, не стоит совершать контроль версий на многопользовательских репозиториях.
Отключите генерацию файла Brewfile.lock.json
, установив переменную среды с помощью export HOMEBREW_BUNDLE_NO_LOCK=1
или с помощью аргумента командной строки brew bundle --no-lock
.
brew bundle
в настоящее время поддерживает Homebrew, Homebrew Cask, Mac App Store, Whalebrew и Visual Studio Code.
Мы заинтересованы в взносах для других установщиков/шашек/самосвал, но они должны:
Brewfile
файлеsudo
Примечание. На основании этих критериев мы не принимаем EG Whalebrew (но не планируем его удалить.)
Тесты можно запустить с помощью bundle install && bundle exec rspec
. Синтаксис Linting можно запустить с brew style homebrew/bundle
.
Авторские права (C) Содействия домашним пивоварам и Эндрю Несбитт. Смотрите лицензию для деталей.