Skip to content

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

Description

@hcrosse

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions