什么是 Homebrew?
Homebrew 是免费与开源的包管理工具,它可以简化 macOS 和 Linux 操作系统上软件的安装。一个包管理工具(Package Manager)做以下这些事:
- 接收一个简单的命令,确定你想安装哪个软件。
- 下载软件安装包的源代码。
- 确定是否存在依赖项,如果有,也把它们下载下来。
- 编译源代码与依赖项。
- 建立你需要的软件。
- 把它安装到预先指定的位置。
包管理工具,比如 Homebrew 自动处理所有的依赖项并将请求的软件,安装到指定的位置。
什么是 Homebrew Cask?
Homebrew Cask 建立在 Homebrew 之上。不同于 Homebrew 安装 CLI (command line) APP,Homebrew Cask 专注于安装 GUI APP,比如谷歌浏览器等。
平时你安装 GUI APP 时,一般都是通过 APP Store 或到软件官网下载安装包,安装并移动到 /Applications
文件夹,现在只需要用 Homebrew Cask 一句简单的命令就可以了。比如
brew cask install google-chrome
就可以安装谷歌浏览器了。
在 Homebrew Formulae 页面可以找到 Homebrew 和 Homebrew cask 可以安装的所有软件。另外,在终端中运行
brew search --casks
可以列出 Homebrew cask 可安装的所有软件。
替换国内镜像源
brew 默认的源是国外的 GitHub,平时使用非常慢,这时可替换为国内比较全面的中科大镜像源。
平时我们执行 brew 命令安装软件的时候,跟以下 4 个仓库地址有关:
仓库 | 说明 |
---|---|
brew.git | 源代码仓库 |
homebrew-bottles | 预编译二进制软件包 |
homebrew-core.git | 核心软件仓库 |
homebrew-cask.git | 应用和大型二进制文件 |
替换成国内源:
# brew.git
cd "$(brew --repo)"
git remote set-url origin https://mirrors.ustc.edu.cn/brew.git
# homebrew-bottles
echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles' >> ~/.zshrc
source ~/.zshrc
# homebrew-core.git
cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core"
git remote set-url origin https://mirrors.ustc.edu.cn/homebrew-core.git
# homebrew-cask.git
cd "$(brew --repo)/Library/Taps/homebrew/homebrew-cask"
git remote set-url origin https://mirrors.ustc.edu.cn/homebrew-cask.git
重置为官方地址:
# brew.git
cd "$(brew --repo)"
git remote set-url origin https://github.com/Homebrew/brew.git
# homebrew-bottles
vi ~/.zshrc
然后,删除 HOMEBREW_BOTTLE_DOMAIN 这一行配置
source ~/.zshrc
# homebrew-core.git
cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core"
git remote set-url origin https://github.com/Homebrew/homebrew-core.git
# homebrew-cask.git
cd "$(brew --repo)"/Library/Taps/homebrew/homebrew-cask
git remote set-url origin https://github.com/Homebrew/homebrew-cask.git
Reference
[1] Homebrew (package management software)
[2] A practical guide to Homebrew
[3] Homebrew Demystified: OS X's Ultimate Package Manager
[4] List of installable Homebrew casks
[5] 执行 brew install 命令长时间卡在 Updating Homebrew 的解决方法
[6] Mac上使用brew update会卡住的问题
[7] 解決MAC brew 和 brew cask 慢或不動的問題(必要时手动安装 brew cask)