Automatically update Homebrew versions using Action

Homebrew 可以说是 Mac 上必装的命令行工具之一。它真的太好用太方便的。但是你在维护一个 Homebrew Tap 的时候,如果你的程序有新的 Release 发布时,需要在对应的 .rb 文件中修改版本号以及对应的二进制文件的 sha256,这显然会有些繁琐,或者说不太优雅。 我习惯使用 GitHub Action 去交叉编译各种 Release,重要的是 Action 可以帮助我自动发布。其实在每一次 Action 发布之后,可以添加一个 Step,去更新 Casks 或者 Formula 的 .rb。为了方便,你可以创建一个 .sh 文件来做这件事。 部分代码(以 DeepL X 为例) 更新版本号 Get the latest version of Deeplx last_version=$(curl -Ls "https://api.github.com/repos/OwO-Network/DeepLX/releases/latest" | grep '"tag_name":' | sed -E 's/.*"([^"]+)".*/\1/' | sed 's/v//g') # Update the version number in the formula sed -i "s/version \".*/version \"${last_version}\"/g" Formula/deeplx.rb 更新 sha256 # Download the new binaries wget -O deeplx_darwin_amd64 https://github....

Saturday, March 4, 2023 · Vincent Young