不用等索引
即使应用还没有进入公开 Homebrew Cask 索引,或者下载地址不在 GitHub 上,也能进入 Homebrew 工作流。
面向本地 cask 的 Homebrew 命令
ghcask 会把 GitHub Release 或直接 package URL 转换成本地 Homebrew cask,让公开 Cask 索引之外的应用也能使用同一套安装、更新、重新安装、查看和清理流程。
为什么需要 ghcask?
即使应用还没有进入公开 Homebrew Cask 索引,或者下载地址不在 GitHub 上,也能进入 Homebrew 工作流。
不再反复打开 release 页面、手动下载 package、拖拽安装,用一个熟悉的命令完成。
安装、更新、重新安装、查看信息、卸载和清理,都留在同一个终端工作流里。
需要尝鲜时用 prerelease,追求稳定时固定版本,准备好后再回到保存的 release 轨道。
用 Brewghcask.json 把生成的 cask 带到另一台 Mac,让 Brewfile 恢复更稳定。
使用本地 generated cask,不必等待公开 cask 审核,也不必发布个人 cask 定义。
安装与更新
brew tap oxsean/ghcask
brew ghcask install owner/repo
brew ghcask install cask-name \
--url https://example.com/download/Example-1.2.3.dmg
brew ghcask install owner/repo --version v1.2.3
brew ghcask unpin cask-name
brew ghcask reinstall cask-name --prerelease
brew ghcask update
brew ghcask outdated --all
brew ghcask upgrade
本地状态
生成的 cask 保存在本地 tap 中,distribution tap 保持干净。
下载好的 package 会移动到 Homebrew 期望的 cask cache,再安装或重新安装。
brew ghcask dump 会把生成的 cask 和 registry 数据导出到 Brewghcask.json。
恢复本地 generated 状态,信任 tap,再让 Brewfile 安装这些 cask。
鉴权
优先使用已认证的 gh。
然后使用带有 GH_TOKEN 或 GITHUB_TOKEN 的 curl。
公开仓库可在条件允许时使用匿名 curl。