documentation

Installation

How to install the Squadron CLI (squadron) on Linux.

System requirements

  • OS: Linux (tested on Ubuntu and Arch; other distros may work but are not tested)
  • Architecture: x86_64

Install

curl -fsSL https://www.getsquadron.io/install.sh | sh

The install script detects your distro, prompts before installing any missing system packages, fetches the latest binaries, and registers the daemon as a systemd user service. Specifically, it:

  1. Checks for tar, unzip, git, fuse-overlayfs, swayidle, xprintidle, fuse3, and (on bash) bash-completion. If anything is missing, it prints the exact package-manager commands it wants to run and waits for you to approve them.
  2. Checks your podman version. If podman is absent or too old, it adds a pinned static podman build plus uidmap to that same list. If podman is newer than the supported range, the installer stops and tells you to check for a newer release.
  3. Downloads a pinned version of rclone into ~/.local/bin directly, so it never goes through your package manager.
  4. Downloads the latest squadron binary into ~/.local/bin and the squadron-daemon binary into ~/.local/libexec.
  5. Configures and starts the daemon as a systemd user service.

If ~/.local/bin isn't on your PATH, the installer appends it to your shell's rc file and tells you which file it edited. Open a new shell afterwards so the change takes effect.

Verify the install

squadron --version

What gets installed

  • squadron is the CLI for managing projects, jobs, volumes, and machines.
  • squadron-daemon is the background daemon that runs jobs when your machine is idle. It's installed as a systemd user service.

Shell completions

The CLI automatically installs shell completions for Fish, Bash, and Zsh on every run. Tab completion should work out of the box for all commands and flags.

Updating

On each run, the CLI checks for updates if it hasn't for at least 60 minutes. If a newer version is available, it downloads both the CLI and daemon binaries, restarts the daemon systemd service, and re-executes itself with the updated binary. You do not need to re-run the install script.

Tips

After a successful command, the CLI occasionally prints a contextual tip (e.g. "Stream live output with job tail <job>."). These appear randomly and only when stdout is a terminal.

Uninstalling

To remove the CLI, daemon, and systemd service from this machine:

squadron uninstall

This deregisters the machine if it's registered, removes the systemd user service, deletes the squadron and squadron-daemon binaries, and asks before deleting the local data directory.

It does not touch any remote resources. Your jobs, volumes, and projects stay where they are. Manage those from the web dashboard.

If you only want to detach this machine from your org without uninstalling, run squadron machine deregister instead.