ghcask
英文

面向本地 cask 的 Homebrew 命令

从任意发布包安装 Mac 应用。

ghcask 会把 GitHub Release 或直接 package URL 转换成本地 Homebrew cask,让公开 Cask 索引之外的应用也能使用同一套安装、更新、重新安装、查看和清理流程。

为什么需要 ghcask?

更多应用,一个 Homebrew 工作流

不用等索引

即使应用还没有进入公开 Homebrew Cask 索引,或者下载地址不在 GitHub 上,也能进入 Homebrew 工作流。

减少手动安装

不再反复打开 release 页面、手动下载 package、拖拽安装,用一个熟悉的命令完成。

统一日常管理

安装、更新、重新安装、查看信息、卸载和清理,都留在同一个终端工作流里。

控制 release 轨道

需要尝鲜时用 prerelease,追求稳定时固定版本,准备好后再回到保存的 release 轨道。

迁移到新 Mac

Brewghcask.json 把生成的 cask 带到另一台 Mac,让 Brewfile 恢复更稳定。

自己掌控

使用本地 generated cask,不必等待公开 cask 审核,也不必发布个人 cask 定义。

安装与更新

可直接执行的 release-aware 命令

安装发布包应用

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

更新受管 cask

brew ghcask update
brew ghcask outdated --all
brew ghcask upgrade

本地状态

本地生成,由 Homebrew 管理

本地 tap

生成的 cask 保存在本地 tap 中,distribution tap 保持干净。

Homebrew cache

下载好的 package 会移动到 Homebrew 期望的 cask cache,再安装或重新安装。

备份

brew ghcask dump 会把生成的 cask 和 registry 数据导出到 Brewghcask.json

恢复

恢复本地 generated 状态,信任 tap,再让 Brewfile 安装这些 cask。

鉴权

优先使用 gh,再逐级回退

1

优先使用已认证的 gh

2

然后使用带有 GH_TOKENGITHUB_TOKENcurl

3

公开仓库可在条件允许时使用匿名 curl