Bundler untuk dependensi non-Ruby dari Homebrew, Homebrew Cask, Mac App Store, Whalebrew dan Visual Studio Code.
Homebrew (pada macOS atau Linux) untuk memasang dependensi.
Tong homebrew adalah opsional dan digunakan untuk memasang aplikasi Mac.
MAS-CLI adalah opsional dan digunakan untuk menginstal aplikasi Mac App Store.
Whalebrew adalah opsional dan digunakan untuk memasang gambar Whalebrew.
Kode Visual Studio adalah opsional dan digunakan untuk menginstal ekstensi kode Visual Studio.
brew bundle
secara otomatis diinstal saat dijalankan pertama kali.
Lihat bagian brew bundle
dari Output atau brew bundle --help
brew generate-man-completions
.
Contoh 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 adalah manajer paket rilis bergulir sehingga tidak mendukung menginstal versi perangkat lunak yang lebih lama secara sewenang -wenang. Jika perangkat lunak Anda membutuhkan versi yang disematkan spesifik, pertimbangkan jalur whalebrew
di Brewfile
Anda untuk menginstal wadah Docker.
Setelah menjalankan brew bundle
yang sukses, ia menciptakan Brewfile.lock.json
untuk merekam lingkungan. Jika run brew bundle
di masa depan gagal, Anda dapat memeriksa perbedaan antara Brewfile.lock.json
untuk debug. Karena dapat berisi informasi lingkungan lokal yang bervariasi antara sistem, tidak ada gunanya berkomitmen untuk kontrol versi pada repositori multi-pengguna.
Nonaktifkan pembuatan file Brewfile.lock.json
dengan mengatur variabel lingkungan dengan export HOMEBREW_BUNDLE_NO_LOCK=1
atau dengan menggunakan brew bundle --no-lock
.
brew bundle
saat ini mendukung Homebrew, Homebrew Cask, Mac App Store, Whalebrew dan Visual Studio Code.
Kami tertarik pada kontribusi untuk installer/checker/dumpers lain tetapi mereka harus:
Brewfile
sudo
untuk menginstalCatatan: Berdasarkan kriteria ini, kami tidak akan menerima misalnya Whalebrew (tetapi tidak memiliki rencana untuk menghapusnya.)
Tes dapat dijalankan dengan bundle install && bundle exec rspec
. Linting sintaks dapat dijalankan dengan brew style homebrew/bundle
.
Hak Cipta (C) Pemelihara Homebrew dan Andrew Nesbitt. Lihat lisensi untuk detailnya.