Files
2026-07-13 12:22:33 +08:00

2.3 KiB

summary, read_when
summary read_when
Homebrew Cask release steps for CodexBar (Sparkle-disabled builds).
Publishing a CodexBar release via Homebrew
Updating the Homebrew tap cask definition

CodexBar Homebrew Release Playbook

Homebrew is for the UI app via Cask. When installed via Homebrew, CodexBar disables Sparkle and shows a "update via brew" hint in About.

Prereqs

  • Homebrew installed.
  • Access to the tap repo: ../homebrew-tap.

1) Release CodexBar normally

Follow docs/RELEASING.md to publish CodexBar-macos-universal-<version>.zip to GitHub Releases.

2) Let the Release CLI workflow update the tap

After the GitHub release is published, .github/workflows/release-cli.yml builds the standalone CLI assets and dispatches steipete/homebrew-tap's update-formula.yml. That tap workflow updates both:

  • Casks/codexbar.rb for the app zip.
  • Formula/codexbar.rb for the standalone CLI tarballs.

If dispatch fails or is rate-limited, update the files manually.

2a) Manual cask update

In ../homebrew-tap, update the cask at Casks/codexbar.rb:

  • url points at the GitHub release asset: .../releases/download/v<version>/CodexBar-macos-universal-<version>.zip
  • Update sha256 to match that zip.
  • Keep depends_on macos: ">= :sonoma" (CodexBar is macOS 14+). Do not add an architecture restriction; the app zip is universal.

2b) Manual formula update

In ../homebrew-tap, update the formula at Formula/codexbar.rb:

  • url points at the GitHub release assets:
    • macOS: .../releases/download/v<version>/CodexBarCLI-v<version>-macos-arm64.tar.gz
    • macOS: .../releases/download/v<version>/CodexBarCLI-v<version>-macos-x86_64.tar.gz
    • Linux: .../releases/download/v<version>/CodexBarCLI-v<version>-linux-aarch64.tar.gz
    • Linux: .../releases/download/v<version>/CodexBarCLI-v<version>-linux-x86_64.tar.gz
  • Static musl tarballs are also published for manual Linux installs as linux-musl-aarch64 and linux-musl-x86_64; keep the formula on the glibc assets unless intentionally changing its runtime contract.
  • Update all sha256 values to match those tarballs.

3) Verify install

brew uninstall --cask codexbar || true
brew untap steipete/tap || true
brew tap steipete/tap
brew install --cask steipete/tap/codexbar
open -a CodexBar

4) Push tap changes

Commit + push in the tap repo.