Installing pre-built binaries
The quickest way to get going with nextest is to download a pre-built binary for your platform. The latest nextest release is available at:
- get.nexte.st/latest/linux for Linux x86_64, including Windows Subsystem for Linux (WSL)1
- get.nexte.st/latest/linux-arm for Linux aarch641
- get.nexte.st/latest/mac for macOS, both x86_64 and Apple Silicon
- get.nexte.st/latest/windows for Windows x86_64
Other platforms
Nextest's CI isn't run on these platforms -- these binaries most likely work but aren't guaranteed to do so.
- get.nexte.st/latest/linux-musl for Linux x86_64, with musl libc2
- get.nexte.st/latest/windows-x86 for Windows i686
- get.nexte.st/latest/freebsd for FreeBSD x86_64
- get.nexte.st/latest/illumos for illumos x86_64
These archives contain a single binary called cargo-nextest
(cargo-nextest.exe
on Windows). Add this binary to a location on your PATH.
The standard Linux binaries target glibc, and have a minimum requirement of glibc 2.27 (Ubuntu 18.04). 2: Rust targeting Linux with musl currently has a bug that Rust targeting Linux with glibc doesn't have. This bug means that nextest's linux-musl binary has slower test runs and is susceptible to signal-related races. Only use the linux-musl binary if the standard Linux binary doesn't work in your environment.
Downloading and installing from your terminal
The instructions below are suitable for both end users and CI. These links will stay stable.
Note: The instructions below assume that your Rust installation is managed via rustup. You can extract the archive to a different directory in your PATH if required.
If you'd like to stay on the 0.9 series to avoid breaking changes (see the stability policy for more), replace
latest
in the URL with0.9
.
Linux x86_64
curl -LsSf https://get.nexte.st/latest/linux | tar zxf - -C ${CARGO_HOME:-~/.cargo}/bin
Linux aarch64
curl -LsSf https://get.nexte.st/latest/linux-arm | tar zxf - -C ${CARGO_HOME:-~/.cargo}/bin
macOS (x86_64 and Apple Silicon)
curl -LsSf https://get.nexte.st/latest/mac | tar zxf - -C ${CARGO_HOME:-~/.cargo}/bin
This will download a universal binary that works on both Intel and Apple Silicon Macs.
Windows x86_64 using PowerShell
Run this in PowerShell:
$tmp = New-TemporaryFile | Rename-Item -NewName { $_ -replace 'tmp$', 'zip' } -PassThru
Invoke-WebRequest -OutFile $tmp https://get.nexte.st/latest/windows
$outputDir = if ($Env:CARGO_HOME) { Join-Path $Env:CARGO_HOME "bin" } else { "~/.cargo/bin" }
$tmp | Expand-Archive -DestinationPath $outputDir -Force
$tmp | Remove-Item
Windows x86_64 using Unix tools
If you have access to a Unix shell, curl
and tar
natively on Windows (for example if you're using shell: bash
on GitHub Actions):
curl -LsSf https://get.nexte.st/latest/windows-tar | tar zxf - -C ${CARGO_HOME:-~/.cargo}/bin
Note: Windows Subsystem for Linux (WSL) users should follow the Linux x86_64 instructions.
If you're a Windows expert who can come up with a better way to do this, please add a suggestion to this issue!
Other platforms
FreeBSD x86_64
curl -LsSf https://get.nexte.st/latest/freebsd | tar zxf - -C ${CARGO_HOME:-~/.cargo}/bin
illumos x86_64
curl -LsSf https://get.nexte.st/latest/illumos | gunzip | tar xf - -C ${CARGO_HOME:-~/.cargo}/bin
As of 2022-12, the current version of illumos tar has a bug where tar zxf
doesn't work over standard input.
Using cargo-binstall
If you have cargo-binstall available, you can install nextest with:
cargo binstall cargo-nextest --secure
Community-maintained binaries
These binaries are maintained by the community—thank you!
Homebrew
To install nextest with Homebrew, on macOS or Linux:
brew install cargo-nextest
Arch Linux
On Arch Linux, install nextest with pacman by running:
pacman -S cargo-nextest
Using pre-built binaries in CI
Pre-built binaries can be used in continuous integration to speed up test runs.
Using nextest in GitHub Actions
The easiest way to install nextest in GitHub Actions is to use the Install Development Tools action maintained by Taiki Endo.
To install the latest version of nextest, add this to your job after installing Rust and Cargo:
- uses: taiki-e/install-action@nextest
See this in practice with nextest's own CI.
The action will download pre-built binaries from the URL above and add them to .cargo/bin
.
To install a version series or specific version, use this instead:
- uses: taiki-e/install-action@v2
with:
tool: nextest
## version (defaults to "latest") can be a series like 0.9:
# tool: nextest@0.9
## version can also be a specific version like 0.9.11:
# tool: nextest@0.9.11
Tip: GitHub Actions supports ANSI color codes. To get color support for nextest (and Cargo), add this to your workflow:
env: CARGO_TERM_COLOR: always
For a full list of environment variables supported by nextest, see Environment variables.
Other CI systems
Install pre-built binaries on other CI systems by downloading and extracting the respective archives, using the commands above as a guide. See Release URLs for more about how to specify nextest versions and platforms.
If you've made it easy to install nextest on another CI system, feel free to submit a pull request with documentation.