Skip to content

add walrus-deploy binary#203

Merged
ebmifa merged 1 commit into
mainfrom
ebmifa/add-walrus-deploy
May 6, 2026
Merged

add walrus-deploy binary#203
ebmifa merged 1 commit into
mainfrom
ebmifa/add-walrus-deploy

Conversation

@ebmifa
Copy link
Copy Markdown
Contributor

@ebmifa ebmifa commented May 6, 2026

Summary

Adds `binaries/walrus-deploy.toml` so `suiup install walrus-deploy` works on every supported platform.

The walrus-deploy binary lives inside the existing per-platform release tarballs that MystenLabs/walrus publishes — it was added to the `release_binaries` set upstream in MystenLabs/walrus#3349 (landed). suiup just needs the registry entry to know about it; `build.rs` auto-discovers everything in `binaries/`.

Why `shared_repo_binary = true`

Mirrors the `sui-node.toml` / `move-analyzer.toml` pattern: the binary name doesn't match the archive identifier (archive is `walrus--v<X.Y.Z>--.tgz`, binary inside is `walrus-deploy`), so suiup needs to look up the archive by repository and then extract by filename rather than by archive name.

Binary Archive identifier Match shared_repo_binary
`walrus` `walrus-*.tgz` `false`
`walrus-deploy` (new) `walrus-*.tgz` `true`
`sui` `sui-*.tgz` `false`
`sui-node` `sui-*.tgz` `true`

Local verification

```
$ cargo run --quiet -- list
Binary Description
══════════════════════════════════════
...
walrus Walrus CLI
walrus-deploy Walrus deployment CLI
...
```

Backwards compatibility

Net new file. No changes to any other binary's config or to suiup core. `build.rs` already auto-discovers `binaries/*.toml` at build time and embeds them, so no source code edits are required.

Test plan

  • `cargo build` (verifies the toml parses + embeds cleanly)
  • `suiup list` includes `walrus-deploy`
  • After v1.49 walrus release ships: `suiup install walrus-deploy` extracts the right binary on linux x86_64 / linux arm64 / macos x86_64 / macos arm64 / windows x86_64
  • `suiup install walrus-deploy@mainnet-1.49.0` resolves a specific version

Sequencing

This PR can land any time, but `suiup install walrus-deploy` only succeeds against walrus releases v1.49.0+. Any earlier tag's tarballs don't contain walrus-deploy.

Reported by

Michael Hayes (Slack thread) — building a local-dev-stack tool, currently stuck rebuilding walrus from source for ~15-20 min on every cold start because walrus-deploy isn't a release artifact.

🤖 Generated with Claude Code

Adds binaries/walrus-deploy.toml so `suiup install walrus-deploy` works.
The walrus-deploy binary lives inside the existing per-platform tarballs
that MystenLabs/walrus publishes, alongside walrus / walrus-node /
walrus-upload-relay (added upstream in MystenLabs/walrus#3349).

shared_repo_binary=true mirrors sui-node.toml's pattern: the binary's
name doesn't match the archive identifier (archive is `walrus-*.tgz`,
binary is `walrus-deploy`), so suiup must look up by repo and extract by
filename rather than by archive name.

Earliest walrus release this works against is v1.49 (the first release
whose tarballs include walrus-deploy after MystenLabs/walrus#3349 landed).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@ebmifa ebmifa requested a review from stefan-mysten May 6, 2026 02:15
@ebmifa ebmifa merged commit f99c2c0 into main May 6, 2026
3 checks passed
@ebmifa ebmifa deleted the ebmifa/add-walrus-deploy branch May 6, 2026 02:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant