Split out of #4762 (two-way transport) to keep that scope focused on the gateway transport itself.
Problem
buzz-cli (crate buzz-cli, binary buzz) is not published to any package registry — installing it means cargo install --path crates/buzz-cli from a clone of https://github.com/block/buzz. Most users won't do that by hand, so Buzz stays effectively opt-in-only for people who already have a Rust toolchain.
Proposed solution
Add a soft-install helper to install.sh, mirroring the existing ensure_github_cli() pattern:
- If
cargo is present: install buzz-cli automatically (shallow clone + cargo install --path crates/buzz-cli, or the published-crate path if/when Block ever publishes one).
- If
cargo is absent: print manual instructions and continue — never fail the overall opensre install over an optional integration.
Out of scope here: bundling a prebuilt buzz binary into OpenSRE's own release pipeline (would mean cross-compiled artifacts per platform in .github/workflows/release.yml — a bigger, separate decision or bundling upstream release binaries if/when Block starts publishing them).
References
Split out of #4762 (two-way transport) to keep that scope focused on the gateway transport itself.
Problem
buzz-cli(cratebuzz-cli, binarybuzz) is not published to any package registry — installing it meanscargo install --path crates/buzz-clifrom a clone of https://github.com/block/buzz. Most users won't do that by hand, so Buzz stays effectively opt-in-only for people who already have a Rust toolchain.Proposed solution
Add a soft-install helper to
install.sh, mirroring the existingensure_github_cli()pattern:cargois present: installbuzz-cliautomatically (shallow clone +cargo install --path crates/buzz-cli, or the published-crate path if/when Block ever publishes one).cargois absent: print manual instructions and continue — never fail the overallopensreinstall over an optional integration.Out of scope here: bundling a prebuilt
buzzbinary into OpenSRE's own release pipeline (would mean cross-compiled artifacts per platform in.github/workflows/release.yml— a bigger, separate decision or bundling upstream release binaries if/when Block starts publishing them).References
BUZZ_PATH,doctorcheck)