Skip to content

Installation

Smurf v1.1.9 supports macOS and Linux on amd64 and arm64 architectures.

Prerequisites

Tool Required for Minimum
Go Building from source 1.26+
Docker smurf sdkr Latest stable
Helm smurf selm v3.x
Terraform smurf stf Latest stable
Git Building from source Any recent version

Note

You only need the tools for the subcommands you plan to use. Installing Smurf alone is enough to explore --help output.

install/install.sh downloads the release archive for your OS/architecture (.tar.gz on Linux/macOS, .zip on Windows), verifies it against the release's checksums.txt by default, and installs the smurf binary to /usr/local/bin.

curl -fsSL https://raw.githubusercontent.com/clouddrove/smurf/master/install/install.sh | bash

To skip checksum verification (not recommended), set VERIFY_CHECKSUM=false:

VERIFY_CHECKSUM=false bash install/install.sh

The script prompts for sudo only when it needs to write to /usr/local/bin; nothing else in the script runs as root.

Verify the installation:

smurf version

Expected output includes Version: v1.1.9.

Install with Homebrew

brew tap clouddrove/homebrew-tap
brew install smurf

If Smurf is already installed, update it with:

brew update
brew upgrade smurf

Build from source

Clone the repository and build with Go:

git clone https://github.com/clouddrove/smurf.git
cd smurf

go build -a \
  -ldflags "\
    -X 'github.com/clouddrove/smurf/cmd.version=$(git describe --tags --abbrev=0 2>/dev/null || echo v0.0.0)' \
    -X 'github.com/clouddrove/smurf/cmd.commit=$(git rev-parse --short HEAD)' \
    -X 'github.com/clouddrove/smurf/cmd.date=$(date -u +%Y-%m-%dT%H:%M:%SZ)'" \
  -o smurf .

sudo mv smurf /usr/local/bin/

Only the final mv into /usr/local/bin needs elevated permissions.

Install with the repository script

Clone the repository and run the bundled install script. Run it as your normal user; it calls sudo internally only for the final move into /usr/local/bin.

git clone https://github.com/clouddrove/smurf.git
bash smurf/install_smurf.sh

Check that Smurf installed successfully:

which smurf
smurf --help

Install in GitHub Actions

Use the official composite action to install Smurf in CI pipelines. The action accepts a single input, version (defaults to latest):

- name: Setup Smurf
  uses: clouddrove/[email protected]
  with:
    version: v1.1.9

See the GitHub Actions guide for complete workflow examples.

Verify installation

which smurf
smurf --help
smurf version

Troubleshooting

Problem Solution
go: command not found Install Go 1.26+ and ensure it is on your PATH
permission denied when moving binary Let the installer prompt for sudo, or run sudo mv smurf /usr/local/bin/ yourself
smurf: command not found after install Confirm /usr/local/bin is in your PATH
Checksum verification failed The downloaded archive does not match checksums.txt for that release; re-download rather than bypassing verification
Docker commands fail Ensure the Docker daemon is running and your user has access
Helm/Terraform commands fail Install the respective CLI and confirm it is on your PATH

Upgrade

brew update
brew upgrade smurf

Re-run the binary installer; it always fetches the latest release.

Pin the action tag and the version input to v1.1.9:

uses: clouddrove/[email protected]
with:
  version: v1.1.9