Skip to content

Distribution: Homebrew tap + other package managers #63

Description

@pgebheim

Motivation

Make lilbox installable with one command instead of cloning + install.sh. Once CI produces per-target release binaries (#62), wire those artifacts into package managers so users can brew install (macOS) and grab it via a native manager on Linux.

Scope

  • Homebrew — a tap (pgebheim/homebrew-tap) with a formula that installs the released binary (bottle/prebuilt preferred over build-from-source, since a source build drags in the whole microsandbox/KVM tree).
  • cargo install — publish to crates.io (or document cargo install --git) for the Rust-native path. Cheapest to stand up; good stopgap.
  • Linux native — pick at least one: AUR package (the maintainer runs Arch), a .deb, or keep the existing install.sh as the documented Linux path. Decide scope here.
  • Update README install section to point at the new one-liners.

Open questions

  • Binary name — resolved. The old vm binary was too generic for a globally-installed command (clashed with libvirt tooling, shell aliases, etc.); it was renamed to lilbox in Rename lilexe -> lilbox (project, binary, and identifiers) #64. Formula name + bin are simply lilbox.
  • Does it run where it's installed? Homebrew implies macOS; whether the box actually boots there depends on CI: release binaries — Linux x86_64 + macOS Apple Silicon (aarch64) #62's finding on macOS/Hypervisor.framework support. If macOS runtime isn't supported yet, scope Homebrew to install-only (with a clear "Linux/KVM required to run" note) or defer the cask until runtime lands.
  • Formula maintenance — manual bump per release vs an automated brew bump-formula-pr step in the release workflow.

Acceptance criteria

  • brew install <tap>/lilbox installs a binary whose --help works on macOS.
  • At least one documented, working install path for Linux users.
  • README updated with the supported install commands.

Dependencies

Activity

  1. pgebheim commented on Aug 4, 2026

    @pgebheim
    CollaboratorAuthor

    Naming resolved: project + binary → lilbox (tracked in #64). Formula/tap and cargo install should use lilbox; the rename lands before this ticket so all artifacts use the final name.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestfeatureChild feature of an epic

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions