Install
# Recommended: install script (Linux x86_64 / arm64)curl -fsSL https://raw.githubusercontent.com/bgrewell/dart/main/install.sh | bash
# Any platform Go supports (macOS, Windows, other architectures)go install github.com/bgrewell/dart/cmd/dart@latest
# Or build from source (produces a Linux binary; the Makefile pins GOOS=linux)git clone https://github.com/bgrewell/dart && cd dart && make buildThe install script supports Linux on x86_64 and arm64 only — those are the
only binaries the release workflow publishes — and it verifies the
downloaded binary against the release checksums.txt before installing,
which is the main reason to prefer it over go install. On macOS, Windows,
or any other architecture, use go install. Note: make build sets
GOOS=linux and always produces a Linux binary regardless of the host.
The script installs to /usr/local/bin by default; DART_INSTALL_DIR
selects another location and DART_VERSION pins a specific release tag
instead of the latest. Installing into a directory the current user cannot
write invokes sudo for the final move.
The go install and build-from-source paths require Go 1.26.5 or newer,
the minimum set in go.mod. Go 1.21 and later fetch that toolchain
automatically unless GOTOOLCHAIN=local is set; older releases fail with a
version error. The install script and the released binaries need no Go
toolchain.
Verify it works, then validate a suite without running anything:
dart --version # short form: -Vdart -c suite.yaml --check # parses + validates, touches no infrastructureNote: version, build date, revision and branch are injected at link time
by make build and the release workflow. A binary produced by plain
go install reports dev for all four.
DART needs nothing else to test the local machine or remote hosts over SSH. For container and VM nodes, install Docker or LXD/Incus — DART talks to whichever is present.