Skip to content

Consider publishing to crates.io for cargo install coop #392

Description

@hbrodin

coop currently installs via install.sh + release tarballs (with build-provenance attestation). Consider also publishing to crates.io so users can cargo install coop.

Considerations:

  • Publish under the trailofbits crates.io org/owner (per ToB packaging convention: make trailofbits an owner).
  • Cargo.toml would need the usual publish metadata: repository, homepage, readme, keywords, categories (already has description and license).
  • src/lib.rs exists only so tests/fuzz can import internals and is explicitly not a curated public API — decide whether publishing an app crate with an incidental lib target is acceptable, or restrict to the binary.
  • Wire a cargo publish step into the existing tag-driven release workflow (.github/workflows/release.yml) so it stays in sync with GitHub releases.
  • Cross-platform note: cargo install builds from source on the user's machine, so the Firecracker/Lima backend selection and any build.rs/cross-compilation assumptions must work in a plain cargo install build.

This is optional (the checklist only calls for a package-manager account "when packaging"); tarball + install.sh already covers distribution.

Context: identified during the open-sourcing readiness review as a judgment call, now tracked per request.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    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