Homebrew Formula Management#
The kpt repository ships a Homebrew formula at Formula/kpt.rb that lets macOS users install kpt via:
brew tap kptdev/kpt https://github.com/kptdev/kpt.git
brew install kpt
Only tagged releases are installable through Homebrew — master/snapshot builds are not shipped this way .
Current State & Version Gap#
As of 2026-08-02, the formula is pinned to v1.0.0-beta.61 , while the latest git tag is v1.0.0-beta.67 — a gap of 6 beta releases spanning ~5 months . The last formula update was PR #4399, which bumped the formula from beta.59 to beta.61 . This gap is tracked in issue #4676 .
How to Update the Formula#
There is no automated workflow that updates the formula on release. It is a manual process:
-
Run the helper tool from the repo root :
go run ./release/formula/main.go <VERSION> # e.g. go run ./release/formula/main.go v1.0.0-beta.67 -
Commit and push the updated
Formula/kpt.rb.
The tool (release/formula/main.go) downloads the GitHub release tarball for the specified version, computes its SHA256 hash , and rewrites Formula/kpt.rb using a fixed formula template. The template wires the version string into the binary via -ldflags "-X github.com/kptdev/kpt/run.version=#{version}" so that kpt version reports the correct tag .
The formula itself only has one runtime dependency — go (for source-build installs) — and the test block validates that the installed binary reports the expected version .
Why the Formula Falls Behind#
The main release.yml workflow (triggered on v[1-9].*.* tags) runs GoReleaser for binary/Docker artifacts but has no step to update or commit the Homebrew formula . Because updating the formula requires a separate Git commit on the default branch, it falls outside the automated tag-triggered pipeline entirely.
Workaround for Users on a Stale Formula#
Users who need a version newer than what the formula provides can install from the GitHub releases page directly instead of Homebrew .
Key Files#
| Path | Purpose |
|---|---|
Formula/kpt.rb | The Homebrew formula (version-pinned, manually updated) |
Formula/README.md | Update instructions |
release/formula/main.go | Helper tool: downloads tarball, computes SHA256, rewrites the formula |