dropbox / dropbox/witchcraft

Interest in Homebrew distribution, what's needed on the release side?

Open
#3 3 comments 2 reactions 0 assignees View on GitHub
Dominant language
Rust
Stars
509
Forks
29
PR merge metrics
No merged PRs in 30d

Description

Hey, I'm looking at packaging witchcraft (and pickbrain) for Homebrew so users on macOS can get a working install with `brew install witchcraft` / `brew install pickbrain` instead of the current `make` flow. Wanted to check alignment before opening PRs, since part of this touches your release process.

The formulas themselves would live in a separate tap, not this repo. But to make brew installs fast and not force every user through a full Rust toolchain build, the tap really needs prebuilt binaries per platform attached to GitHub Releases. Right now `v0.1.0` exists as a tag but there's no Release object and no `.github/workflows/`, so the only artifacts are GitHub's auto-generated source zips.

**What I think would need to happen in this repo:**

1. Promote tags to proper GitHub Releases (so formulas can pin to a release + checksum).
2. A release workflow that builds binaries on tag push for the platforms that matter, at minimum macOS arm64 and x86_64, with the recommended feature flags from the README baked in per target:
- arm64: `t5-quantized,metal,accelerate`
- x86_64: `t5-quantized,accelerate,hybrid-dequant,fbgemm`
3. Two binaries per platform in each release: `warp-cli` and `pickbrain`.
4. A decision on weights. I'd suggest not shipping them in the release artifact. We could either keep the current Python download flow, or add a `pickbrain setup` subcommand that fetches + quantizes on first run. Happy to do whichever you prefer.

**Open questions:**

- Do you want the tap under `dropbox/homebrew-witchcraft`, or are you fine with a community tap to start and potentially adopt later?
- Any objection to the CI additions above? I can open a PR with the workflow if so.
- For `pickbrain`, the brew formula would install the skill definition files and print caveats telling users how to register them with Claude Code / Codex (brew can't touch user config directly). Does that match how you'd want the skill installed, or do you want to keep `make pickbrain-install` as the official path and have brew only ship the binary?
- Linux support in scope, or macOS-only for v1?

Happy to do the CI work and send a PR if there's appetite. Just didn't want to land a release-pipeline change cold.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.