如何将go程序发布到home brew
为什么要做#
最近写了个数据转换工具
起因是开发过程中经常临时遇到一些数据转换需求
比如时间戳转换,md5 校验,sha256 校验,base64 数据转化,json 数据转 go-struct 等
写完后觉得工具挺实用的,要是能让其他人也能使用就好了
如果本地有 golang 环境可以直接运行 go install github.com/wangle201210/dt@latest
安装
但是万一不是 gopher 就没法了
还有一个方法就是去 github 直接下载 release 里面的二进制文件
但是,需要下载,且放到 $PATH 才方便运行
整个流程下来不是很方便
此时就想到 mac 常用的安装方法 home brew
怎么做#
- 添加一个 git 仓库(必须以 homebrew - 开头)homebrew-dt
- 添加文件 Formula/dt.rb 并提交到 github
class Dt < Formula desc "data-transfer,数据转换工具" homepage "https://github.com/wangle201210/dt" if Hardware::CPU.intel? url "https://github.com/wangle201210/dt/releases/download/v0.0.1-alpha/dt_0.0.1.tar.gz" sha256 "7bdf0fc1a80252bb7acc89dc557895f99f3955b1d54bd0ccbab20eab06ea8ded" else url "https://github.com/wangle201210/dt/releases/download/v0.0.1-alpha/dt_arm64_0.0.1.tar.gz" sha256 "3fa102dbcca4e292d23462977089f31ee843d2a737729f377b0de94c743a82a7" end version "1.0.0" def install bin.install "dt" system "xattr", "-c", "#{bin}/dt" end end
- 添加 tap
brew tap wangle201210/dt
- 安装 dt 工具
brew install dt
- 校验是否安装成功
dt version
如果出现问题想取消 tapbrew untap wangle201210/dt
本作品采用《CC 协议》,转载必须注明作者和本文链接
推荐文章: