Skip to content

feat: add Homebrew Cask distribution (stable + nightly) - #157

Merged
jatinkrmalik merged 1 commit into
mainfrom
feat/homebrew-cask
Jun 7, 2026
Merged

feat: add Homebrew Cask distribution (stable + nightly)#157
jatinkrmalik merged 1 commit into
mainfrom
feat/homebrew-cask

Conversation

@jatinkrmalik

Copy link
Copy Markdown
Member

Summary

Adds Homebrew Cask support so users can install VocaMac with brew install --cask vocamac (stable) or brew install --cask vocamac-nightly (nightly builds).

What's included

File Purpose
homebrew/Casks/vocamac.rb Stable cask — versioned, livecheck, auto-updated on release
homebrew/Casks/vocamac-nightly.rb Nightly cask — version :latest, points to stable-named nightly DMG
homebrew/README.md Tap repo README (for jatinkrmalik/homebrew-vocamac)
.github/workflows/update-homebrew-cask.yml Auto-updates tap cask on release publish (version + sha256)
.github/workflows/nightly.yml Modified to also upload stable-named VocaMac-nightly-arm64.dmg alongside dated artifacts
docs/HOMEBREW.md Comprehensive Homebrew setup & maintenance guide
docs/ARCHITECTURE.md Updated distribution strategy (planned → shipped)
docs/RELEASE.md Added Homebrew tap to release checklist

How it works

Stable release:

  1. Human publishes a GitHub Release (draft created by release.yml)
  2. update-homebrew-cask.yml triggers → downloads DMG → computes sha256 → pushes updated cask to jatinkrmalik/homebrew-vocamac
  3. Users run brew upgrade --cask vocamac

Nightly:

  1. nightly.yml builds daily → now also uploads VocaMac-nightly-arm64.dmg (stable name) alongside dated VocaMac-nightly-20260606-abc1234-arm64.dmg
  2. Cask uses version :latest + sha256 :no_check — no auto-update workflow needed
  3. Users run brew reinstall --cask vocamac-nightly to get latest

Conflicts: Both casks install to /Applications/VocaMac.app, so they declare conflicts_with each other.

Setup required (already done)

  • Tap repo created: jatinkrmalik/homebrew-vocamac
  • HOMEBREW_TAP_TOKEN secret added to vocamac repo
  • First stable release published (so the DMG URL exists)
  • Copy homebrew/Casks/*.rb and homebrew/README.md to the tap repo (one-time)

Future: submit to homebrew-cask

Once VocaMac hits ~75 stars, the cask can be submitted to Homebrew/homebrew-cask for brew install --cask vocamac without a tap. See docs/HOMEBREW.md for requirements.

- Add Homebrew Cask definitions (vocamac, vocamac-nightly)
- Add auto-update workflow for tap repo on release publish
- Modify nightly.yml to upload stable-named DMG/ZIP assets for cask
- Add comprehensive Homebrew documentation (docs/HOMEBREW.md)
- Update ARCHITECTURE.md and RELEASE.md with Homebrew references
@jatinkrmalik
jatinkrmalik merged commit 0d5044a into main Jun 7, 2026
4 checks passed
@jatinkrmalik
jatinkrmalik deleted the feat/homebrew-cask branch August 22, 2026 05:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant