Skip to content

Distribute Bible Terminal through a Homebrew tap #20

Description

@vmrocha

Summary

Distribute Bible Terminal through an official project-maintained Homebrew tap so macOS and Linux users can install and upgrade the CLI with Homebrew while retaining the exact checksummed binaries produced by the release workflow.

The intended installation command is:

brew install vmrocha/tap/bible-terminal

The formula name should be bible-terminal; the installed executable remains bible.

Why a tap first

Bible Terminal is too new for homebrew/core's adoption and third-party-use expectations. A project-maintained tap provides the normal install, upgrade, and uninstall experience without coupling the initial package to Core's admission timeline.

Scope

  • Create the public vmrocha/homebrew-tap repository using Homebrew's conventional tap layout.
  • Add a bible-terminal formula that selects the existing release archive for macOS or Linux and AMD64 or ARM64.
  • Pin every archive URL to a tagged release and its published SHA-256 checksum.
  • Install the bible executable without downloading translation data or other runtime dependencies.
  • Install generated Bash, Zsh, and Fish completion scripts through Homebrew's standard completion paths.
  • Add a formula test that verifies the packaged version and reads a bundled verse offline.
  • Validate installation on supported macOS and Linux architectures represented by the release artifacts.
  • Document installation, upgrade, and uninstall commands in README.md and docs/INSTALL.md.
  • Document how the tap is updated and validated for each release in docs/RELEASING.md.
  • Decide whether initial tap updates remain manual or use narrowly scoped automation; do not introduce a broad, long-lived repository token.

Acceptance criteria

  • brew install vmrocha/tap/bible-terminal installs the current tagged release as bible.
  • bible version reports the tagged version rather than dev.
  • bible read "John 3:16" --plain works without network access or a separate data download.
  • brew test vmrocha/tap/bible-terminal passes.
  • The formula uses the same immutable archives and SHA-256 values published on the GitHub release.
  • Shell completions are available after installation.
  • The release checklist prevents publishing a new release without updating and testing the tap.

Non-goals

  • Submission to homebrew/core; reconsider after the project has meaningful outside adoption and satisfies Core's requirements.
  • Packaging for AUR, Nix, Debian, RPM, Snap, or other ecosystems in this issue.
  • Treating go install as the primary end-user installation path; its build metadata behavior should be handled separately before it is documented as a supported release installation.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions