Homebrew tap repository with generic automation for updating multiple Formulae and Casks from upstream release assets.
These examples assume this repository is published as unsdk/homebrew-tap.
Users can install vs with:
brew tap unsdk/tap
brew install vsOr in one command:
brew install unsdk/tap/vsFormula/: generated FormulaeCasks/: generated Caskspackages/: package definitions that describe where artifacts come from and how they should be rendered.github/workflows/sync-packages.yml: runs the generic sync job on a schedule or by handscripts/sync_packages.py: loads package configs, fetches release metadata, and rewrites matching Formula/Cask files
Each package definition in packages/*.json declares:
- whether it is a
formulaorcask - the upstream GitHub repository
- the generated token/class name
- the per-platform release asset names
- install details such as
bin.installtargets or cask artifacts
packages/vs.json is the current example.
The sync workflow checks every configured package, rewrites the corresponding file in Formula/ or Casks/, then commits and pushes any changes back to this repository.
- Add a new JSON config file under
packages/ - Describe its upstream GitHub release source and platform asset names
- Run
python3 scripts/sync_packages.py - Commit the generated file under
Formula/orCasks/
No workflow changes are required for additional packages.