Sail Knowledgebase

Installing Sail CLI

In this article we will cover installing Sail CLI using the Homebrew package manager, as well as some alternative methods.

If you like Sail, consider sponsoring us via GitHub!

Using the Installer

The easiest and preferred way to install and update Sail CLI is by using the official installer. Use the following command to run the installer in Linux, macOS or Windows (via a WSL shell):

curl -sSLf https://sailed.io/install.sh | bash

Running the same command again will update Sail CLI to the latest version. If you would like to install a specific version of the client, use:

curl -sSLf https://sailed.io/install.sh | bash -s version

Where version is a release version number (0.10.0 for example) or mainline to install the development version of Sail.

System Requirements

Sail will attempt to install all of its own Python dependencies which will often come in pre-compiled wheels, however, there are some system-level dependencies which you might need to install manually.

On Ubuntu/Debian systems you can install these with:

sudo apt update
sudo apt install -y git curl rsync python3 python3-pip python3-venv

For other systems, please refer to your distribution manual or ask in the #help channel in our community Slack.

Note: macOS users with M1 chips may need to compile the Python cryptography library from sources. For this you will need a Rust compiler, as well as Apple's Xcode development tools for a C compiler.

After these requirements are met, you may re-run the Sail CLI installation script. An alternative for macOS is to use Homebrew (see below) which will resolve all dependencies for you, and/or provide pre-compiled binaries for your architecture.

Using Homebrew

You can also install Sail through the Homebrew package manager:

brew install sail

If you have already installed Sail through Homebrew and would like to upgrade to the latest version, use:

brew update
brew upgrade sail

If you're not using Homebrew yet, you can download and install it from here.

From PyPI

Every Sail CLI release is pushed to the official Python Package Index (PyPI) and could be installed using pip3:

pip3 install sailed.io

Once the package is installed, it can be upgraded with:

pip3 install sailed.io --upgrade

Note, that installing Python packages globally on the system may cause broken dependencies. To avoid this, it is recommended to use virtual environments:

mkdir /path/to/sail && cd /path/to/sail
python3 -m venv .env
.env/bin/pip install sailed.io
ln -s .env/bin/sail /usr/local/bin/sail

This way sail can be used globally, but all binaries and dependencies will live in a virtual environment in a dedicated directory. Upgrading must be performed from the virtual environment as well:

cd /path/to/sail
.env/bin/pip install sailed.io --upgrade

Building from Source

You will need Python 3.6+ with pip and setuptools available. Download the source files from GitHub with git clone, install dependencies and run the Sail installation. Just like with PyPI, it is recommended to use a virtual environment for this method.

mkdir /path/to/sail && cd /path/to/sail
git clone git@github.com:kovshenin/sail.git .
python3 -m venv .env
.env/bin/pip install -r requirements.txt
.env/bin/python setup.py install
ln -s .env/bin/sail /usr/local/bin/sail

To upgrade simply pull the latest sources from GitHub and run the installation again:

cd /path/to/sail
git pull
.env/bin/pip install -r requirements.txt
.env/bin/python setup.py install