Before you start
At the end of this tutorial you have:
- a hub: your Homebrew tap, which signs, notarizes and publishes releases;
- one project that releases through it;
- a release that anyone can install with
brew install.
What you need
Section titled “What you need”-
A personal GitHub account. tapster serves repositories of a personal account, not of an organization.
-
Bun and the GitHub CLI on your computer:
Terminal window curl -fsSL https://bun.sh/install | bashbrew install ghgh auth login -
A project to publish: a Go tool built with GoReleaser, a command line tool written for Bun or a Mac app that updates with Sparkle.
-
For macOS builds, an Apple Developer Program membership and a Mac. Without them your hub can still publish Linux and Windows builds. The next step shows how to get the two Apple files.
You do not install tapster. The setup and every command run the latest release with bunx:
bunx @doguyilmaz/tapster --versionYour tap becomes the hub
Section titled “Your tap becomes the hub”A Homebrew tap is a GitHub repository whose name starts with homebrew-, such as you/homebrew-tap. Users add it with
brew tap you/tap. tapster turns that repository into your hub. If you have no tap yet, the setup creates one for you.
Keep the hub public. GitHub gives public repositories free macOS runners, which signing needs. It also gives them the protected environment that holds your keys. A private hub needs GitHub Pro. Its runs use your plan’s Actions minutes.
Where things run
Section titled “Where things run”- Your computer runs
tapster setup, a page in your browser that only your computer serves, while you set things up. - Your hub’s GitHub Actions run tapster for each release.
- Your Cloudflare account runs the optional doorbell, which only starts the hub.
