Skip to content

Rename Homebrew tap repo to homebrew-tap for a cleaner one-command install #978

@groksrc

Description

@groksrc

Current state

Our Homebrew install is documented as a multi-step:

brew tap basicmachines-co/basic-memory
brew trust basicmachines-co/basic-memory   # Homebrew 5.1+; required in 6.0
brew install basic-memory

None of that is necessary. Homebrew's fully-qualified form auto-taps and records per-formula trust in one shot (per the Tap Trust docs: "Installing a fully-qualified formula or cask name trusts only that item"). But because the tap repo is named homebrew-basic-memory and the formula inside is also basic-memory, the one-liner stutters:

brew install basicmachines-co/basic-memory/basic-memory

Proposal (v1.0)

Rename the tap repo homebrew-basic-memoryhomebrew-tap, following the common single-tap convention (hashicorp/tap/terraform, goreleaser/tap/goreleaser), so the install becomes:

brew install basicmachines-co/tap/basic-memory

Migration checklist

  • Rename the GitHub repo (GitHub redirects the old name, so existing users' taps keep fetching)
  • Update the Homebrew bump step in .github/workflows/release.yml to target the renamed repo
  • Update install docs on docs.basicmemory.com (quickstart-local, local-install) to the new one-liner
  • Update README / release runbook (.claude/commands/release/release.md) install references
  • Update formula caveats (trust hint becomes brew trust basicmachines-co/tap)
  • Release notes: tell existing users they can stay on the old tap name (redirect keeps working) or re-tap; short-name brew install basic-memory users should brew trust once before Homebrew 6

Why v1.0

Cosmetic rename with real churn (docs, workflow, user-facing name), so it batches naturally with the v1.0 surface cleanup. Cheapest to do while the Homebrew user base is small.

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentationenhancementNew feature or requestv1.0Targeted for the v1.0 release
    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