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.

  • Linux

  • macOS

  • Windows

Download the stackablectl-x86_64-unknown-linux-gnu binary file from the latest release, then rename the file to stackablectl. You can also use the following command:

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

Mark the binary as executable:

$ chmod +x stackablectl

Then, make sure it is present in your $PATH, like /usr/local/bin.

Download the stackablectl-x86_64-apple-darwin binary file for Intel-based devices or the stackablectl-aarch64-apple-darwin binary file for ARM-based devices from the latest release, then rename the file to stackablectl. You can also use the following command:

$ curl -L -o stackablectl https://github.com/stackabletech/stackable-cockpit/releases/download/stackablectl-24.7.0/stackablectl-x86_64-apple-darwin
# or
$ curl -L -o stackablectl https://github.com/stackabletech/stackable-cockpit/releases/download/stackablectl-24.7.0/stackablectl-aarch64-apple-darwin

Mark the binary as executable:

$ chmod +x stackablectl

If macOS denies the execution of stackablectl go to Settings → Security & Privacy → General. Here you will see a pop up asking if you want to allow access for stackablectl. You must allow access.

Currently, there are no pre-built binaries available for Windows. Please refer to this section to learn how to build the binary from source.

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

Shell Completions

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

  • ZSH

  • Fish

  • Bash

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

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

Download the completions file and place it in any of the supported location listed here.

$ wget https://raw.githubusercontent.com/stackabletech/stackable-cockpit/main/extra/completions/stackablectl.fish

Download the completions file and place it in /etc/bash_completion.d/ to load it automatically.

$ wget https://raw.githubusercontent.com/stackabletech/stackable-cockpit/main/extra/completions/stackablectl.bash
$ mv stackablectl.bash /etc/bash_completion.d/

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