Skip to content

Homebrew tap: publish pilotctl via brew #52

Description

@TeoSlayer

Scope

Distribute pilotctl (and optionally pilot-daemon, pilot-gateway) via Homebrew so macOS and Linux users can install with a single command.

Deliverables

Homebrew Tap Repository

  • Create homebrew-pilot tap repository (e.g., TeoSlayer/homebrew-pilot)
  • Formula for pilotctl (primary CLI)
  • Formula for pilot-daemon (background service)
  • Formula for pilot-gateway (optional)

Formula Requirements

  • Download pre-built binaries from GitHub Releases (darwin/arm64, darwin/amd64, linux/amd64, linux/arm64)
  • SHA256 verification for all artifacts
  • Version pinning from release tags
  • brew install pilotctl as the primary install path
  • brew services start pilot-daemon for launchd integration on macOS

Release Automation

  • GitHub Actions workflow: on release tag, build binaries, compute SHA256, update formula
  • Goreleaser config for cross-compilation and artifact packaging
  • Bottle generation for common platforms (speeds up install)

Install Experience

# Add tap
brew tap pilotprotocol/pilot

# Install CLI
brew install pilotctl

# Start daemon as a service
brew services start pilot-daemon

# Verify
pilotctl daemon status

launchd Integration (macOS)

  • Plist file for pilot-daemon service
  • Auto-start on login
  • Log to ~/Library/Logs/pilot-daemon.log
  • Configurable via ~/.pilot/config.json

Files

  • homebrew-pilot/ — new tap repository
  • .goreleaser.yml — release automation config
  • .github/workflows/release.yml — CI release pipeline
  • install.sh — update to detect and suggest brew if available

Priority: MEDIUM

Activity

  1. self-assigned this
    on Mar 27, 2026
  2. TeoSlayer commented on Apr 6, 2026

    @TeoSlayer
    CollaboratorAuthor

    Resolved. Homebrew tap is fully functional and updated to v1.5.1.

    Repository: https://github.com/TeoSlayer/homebrew-pilot

    Install:

    brew tap TeoSlayer/pilot
    brew install pilotprotocol

    What's included:

    • Formula for all 3 binaries: pilotctl, pilot-daemon, pilot-gateway
    • 4 platforms: darwin/arm64, darwin/amd64, linux/arm64, linux/amd64
    • SHA256 verification for all artifacts
    • brew services start pilotprotocol for launchd integration on macOS
    • Post-install: creates ~/.pilot/config.json with registry/beacon defaults
    • Auto-restart on crash via keep_alive crashed: true

    Formula updated to v1.5.1 (commit 0dc3b29) with correct SHA256 hashes from the GitHub release.

    Not implemented (optional enhancements):

    • Goreleaser (manual release pipeline works; formula updated manually)
    • Automated formula updates on release (low priority — releases are infrequent)
    • Bottle generation (not needed — binaries are pre-built)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions