Overview
Overview
Usage
Usage
Examples
Examples
GitHub
Installation

From source

Build whoosh with the Go toolchain - go install or a checkout + make, with build tags to trim the binary.

Build whoosh yourself with the Go toolchain. Requires Go 1.26+ (see Requirements).

go install

The quickest path - installs the latest tagged version:

go install github.com/yousysadmin/whoosh/cmd/whoosh@latest

It lands in $(go env GOBIN) (or $(go env GOPATH)/bin if GOBIN is unset) - make sure that’s on your PATH.

Clone and build

A checkout gives you the Makefile targets and the test suite:

git clone https://github.com/YouSysAdmin/whoosh.git
cd whoosh
go build -o whoosh ./cmd/whoosh          # or: make build  (output: dist/whoosh)
install -m 0755 whoosh /usr/local/bin/whoosh   # or anywhere on $PATH

Useful targets:

make build        # build dist/whoosh
make test         # go test ./...
make lint         # go vet + gofmt check
make help         # list all targets

Build tags

The binary is small and AWS-free - go build bundles only the lightweight print-inventory plugin. The AWS plugin lives in its own module and is added with a custom build, not a build tag (see With custom plugins). You can still drop the bundled plugins:

go build                 -o whoosh ./cmd/whoosh # the binary (default plugins only)
go build -tags noplugins -o whoosh ./cmd/whoosh # no bundled plugins at all

# equivalents via the Makefile:
make build           # the binary
make build-aws       # WITH the AWS plugins, via `whoosh build`
make build-minimal   # = -tags noplugins

A Deployfile that references a plugin not built into the binary fails fast with unknown plugin "aws" (not built into this binary).

Need the AWS plugin (or your own)?

The AWS plugin and any private/third-party plugin are added with the whoosh build command, not a build tag - see With custom plugins.

Verify

whoosh version
whoosh plugins      # which plugins are compiled in
whoosh --help