Installation

Using Pre-Compiled Binaries

Stackable provides pre-compiled binaries of stackablectl, which should work on most environments such as Windows, macOS, and Linux distributions like Ubuntu and Arch. You can also build the binary from source. More information about the manual building steps can be found in this section.

Download the appropriate binary file for your architecture from the latest release, then rename the file to stackablectl. You can also use the following command:

x86_64 (amd64):

$ curl -L -o stackablectl https://github.com/stackabletech/stackable-cockpit/releases/download/stackablectl-25.3.0/stackablectl-x86_64-unknown-linux-gnu

aarch64 (arm64):

$ curl -L -o stackablectl https://github.com/stackabletech/stackable-cockpit/releases/download/stackablectl-25.3.0/stackablectl-aarch64-unknown-linux-gnu

Install the binary into a directory in the $PATH, and make it executable:

If you have a directory in your $HOME for user binaries, you can remove sudo, and change the directory to that.
$ sudo install -m 755 -t /usr/local/bin stackablectl

Test that it works:

$ stackablectl --version

Building from Source

To build stackablectl from source you need to have the following tools installed:

  • The Rust toolchain: Needed for compiling the source code of stackablectl itself. Use rustup to easily install all required tools.

  • The Go toolchain: Needed for compiling a wrapper around the Go library go-helm-client.

Continue by cloning the repository located at https://github.com/stackabletech/stackable-cockpit. Then, compile the binary using the following command:

$ cargo build -p stackablectl --release

After a successful build, the binary will be placed in target/release/stackablectl. Copy it to your systems path to access it from anywhere if you like:

$ cp target/release/stackablectl /usr/local/bin

Test that it works:

$ stackablectl --version

Shell Completions

We provide completions for stackablectl for major shells out there. Currently, ZSH, Fish, Bash, Nushell, and Elvish are supported. The repository provides pre-generated completion files. These can be downloaded and copied to the appropriate location on your system.

Download the completions file and place it in /usr/local/share/zsh/site-functions/ to load it automatically.

$ curl -LO https://raw.githubusercontent.com/stackabletech/stackable-cockpit/main/extra/completions/_stackablectl
$ mv _stackablectl /usr/local/share/zsh/site-functions/

You can generate the completions on your own by using the stackablectl completions command. See here for more information.