5.1 安装、卸载与查询 Cask

原文链接: https://brew.sh/

安装 Cask

在公式名前加 --cask:

1
2
3
brew install --cask firefox
brew install --cask visual-studio-code
brew install --cask font-fira-code

官方 homebrew/cask 仓库中的 cask 在加入前需要人工审查,并且必须满足 Acceptable Casks 中的要求。安装第三方 tap 的 cask 时建议使用全限定名并遵循 3.4 Tap 第三方仓库与信任模型 的信任流程。

Cask 会把应用装到哪里

每个 cask 的下载内容先解压进 Caskroom:

1
/opt/homebrew/Caskroom/<cask>/<版本>/

随后 brew 会把其中的 .app 复制或链接到默认应用目录(通常为 /Applications)。如果你希望装到自己的用户目录:

1
brew install --cask --appdir=~/Applications firefox

.app、.pkg、字体、QuickLook 插件等不同类型的产物由 cask 定义决定,安装时的 “Installing” 输出会说明它做了什么。

查询与搜索

1
2
3
4
brew search <text> --cask  # 只搜索 cask
brew info --cask firefox   # 查看 cask 信息、版本与下载地址
brew home --cask firefox   # 在浏览器打开软件官网
brew list --cask           # 列出已安装 cask

升级、卸载与重新安装

1
2
3
4
brew upgrade --cask firefox          # 升级指定 cask
brew upgrade --cask                  # 升级所有已安装 cask
brew uninstall --cask firefox        # 卸载
brew reinstall --cask firefox        # 重新安装

卸载 cask 时,brew 会执行该 cask 定义的 uninstall 逻辑,把复制到 /Applications 的应用一并移除。若应用被手动删除或 cask 状态不一致,可用 brew reinstall 修复。

关于 Gatekeeper 与 macOS 安全检查

官方 cask 必须通过 Homebrew 的 Gatekeeper 检查,不需要用户绕过安全设置即可安装。若某个 cask 因上游产物无法通过检查,Homebrew 会将其弃用、禁用并最终移除,直到上游提供能通过签名的产物。因此看到“该 cask 已弃用”时,通常意味着上游发布物本身有问题,而不是 Homebrew 在“误报病毒”。

与手动安装的取舍

  • 优点:安装/升级/卸载全部可脚本化,配合 Brewfile 能批量恢复;
  • 缺点:部分应用自行更新(见 5.2 自更新应用、–greedy 与 –adopt),可能绕过 brew 的记录,造成“看似未升级”的现象。