rodeo has no tagged release yet. Until the first one, build it from source. The installers below start to work when the first release ships.
Before you start
rodeo is a client of herdr-core. It needs hc 0.1.18 or newer on your PATH, on Linux or macOS. If you use the Herdr desktop app, you have hc already. Else, install it:
$ curl -fsSL https://releases.herdr.dev/core/install.sh | sh
$ hc --versionYou do not need to start hc yourself. rodeo starts the core when it is not running.
The install script
$ curl -fsSL https://rodeo.lukeed.com/install.sh | shThe script finds your system and CPU, downloads the matching archive from the GitHub releases of lukeed/rodeo, checks its sha256, and puts rodeo in ~/.local/bin. It tells you when that folder is not on your PATH, and when hc is missing or too old.
Two variables change what it does:
| Variable | Default | Does |
|---|---|---|
RODEO_VERSION |
the latest release | Install this release, such as v0.1.0. |
RODEO_INSTALL |
~/.local/bin |
Put the binary in this folder. |
$ curl -fsSL https://rodeo.lukeed.com/install.sh | RODEO_VERSION=v0.1.0 shRead the script before you run it: curl -fsSL https://rodeo.lukeed.com/install.sh prints it.
The checksum comes from the same place as the archive. It finds a broken download, not a hostile one. For a signed release manifest, use packslip or mise.
Homebrew
$ brew install lukeed/tap/rodeomise and packslip
Every release carries packslip.sigstore.json, a packslip manifest. The release workflow signs it with its own identity, with no long-lived key. It states the digest, the platform and the executables of each archive. mise reads it through its packslip backend:
$ mise use -g packslip:github.com/lukeed/rodeoOr use packslip on its own:
$ packslip install github.com/lukeed/rodeoRelease archives
Each release has one archive per platform, with a .sha256 file beside it. The archive holds the rodeo binary only.
| Platform | Archive |
|---|---|
| macOS, Apple silicon | rodeo-aarch64-apple-darwin.tar.gz |
| macOS, Intel | rodeo-x86_64-apple-darwin.tar.gz |
| Linux, x86-64 | rodeo-x86_64-unknown-linux-musl.tar.gz |
| Linux, ARM64 | rodeo-aarch64-unknown-linux-musl.tar.gz |
The Linux builds link against musl, so they run on any distribution.
From source
You need mise for the pinned Rust and zig versions:
$ git clone https://git.nexthub.sh/lukeed/rodeo.git
$ cd rodeo
$ mise install
$ cargo build --release
$ cargo install --path crates/rodeo --locked # optional: put it on your PATHThe binary is target/release/rodeo, or ~/.cargo/bin/rodeo after the last step.
Check it
$ rodeo --version
rodeo 0.1.0rodeo --help lists every command:
██▄▄██ █▄ ▀▀▀▀▀▀ ▄█ ▀▀▀▀▀▀▀▀▀▀▀▀ rodeo▍ ████ a terminal UI for herdr-core ████ ████ usage: rodeo [--session <name>] open rodeo on an hc session rodeo --default-config print the default config rodeo config check check the config file rodeo config reset-keys remove [keys] from the config (keeps a backup) rodeo --help | --version Detach with the detach key (prefix+q). Terminals keep running in hc.
Next, open rodeo.