Cargo dist multi platform rust cli release
Skill kjuhwa/skills-hub/skills/release/cargo-dist-multi-platform-rust-cli-release
Use cargo-dist to build, sign, and ship a Rust CLI as platform-specific binaries with shell + PowerShell installers and GitHub Attestations.From its SKILL.md
npx -y skills add kjuhwa/skills-hub --skill cargo-dist-multi-platform-rust-cli-releaseAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
1.9 KB, 343 tokens by cl100k_base, as published. Nobody here has run it
Cargo Dist Multi Platform Rust Cli Release
Trigger: Releasing a Rust CLI that must be installable on Linux x86_64/aarch64, macOS aarch64, and Windows x64 with one-line installers.
Steps
- Add dist-workspace.toml at repo root: workspace members, target triples, installer types (shell, powershell).
- Pin cargo-dist version (e.g. 0.31.0) and enable GitHub Attestations for build provenance.
- Set tag-namespace (e.g. 'cli') so the release workflow only fires for the right tags.
- Trigger workflow on tag push matching cli-v*..; run dist plan, then dist build per target platform.
- Use ubuntu-24.04-arm for native aarch64; fall back to cross only when native runners aren't available.
- Generate shell + PowerShell installer scripts with checksums; publish to GitHub Releases with attestation metadata.
Counter / Caveats
- Custom runners (aarch64) may not be in your GitHub plan; cross-compile via cross crate as fallback.
- Tag pattern in dist-workspace.toml is strict; mismatched tags silently skip the workflow.
- Installer scripts assume *nix conventions ($PATH, /usr/local/bin); restricted environments need manual install paths.
- Per-platform binaries can be 100MB+; GitHub Actions has a 5GB artifact cap.
Source
Extracted from magika (https://github.com/google/magika.git @ main).
Files of interest:
dist-workspace.toml:1-39.github/workflows/cli-release.yml:1-80
What ships with it: 1 file
964 B alongside SKILL.md
- content.md964 B