Installation
This plugin acts as a wrapper around the distant binary. In order for this
plugin to function, you need to have the distant binary installed on your
local machine and accessible from neovim.
Sound complicated? Not to worry! This plugin provides support to automatically install the binary for you and will automatically begin the dialog when you first attempt to invoke a command or function associated with the plugin.
Installation process
Note
If you already have the distant binary (or distant.exe on Windows)
accessible (i.e. on your path), then you can skip this installation
process! Just make sure that you have a version installed that is
compatible with the neovim plugin!
You can trigger the installation dialog manually by running :DistantInstall,
which will check if you have a copy of distant available that is the correct
version. If the version is incompatible or no copy of distant is found, a
dialog will trigger offering three choices:
- Download a prebuilt binary
- Build from source
- Copy local binary
Download a prebuilt binary
Selecting this option will query Github releases for compatible versions, downloading the release you select. The specific binary will be downloaded based on the detected operation system and architecture of your local machine.
For instance, an M1 Mac will download distant-aarch64-apple-darwin whereas an
Intel-based Linux machine will download distant-x86_64-unknown-linux-gnu. The
downloaded binary will be renamed to work with this plugin.
This requires that your machine have curl, wget, or fetch installed and
available on your path.
Available binaries
| Operating System | Architecture | Binary |
|---|---|---|
| Windows | x86_64 | x86_64-pc-windows-mscv |
| Windows | aarch64 | aarch64-pc-windows-mscv |
| MacOS | x86_64 | x86_64-apple-darwin |
| MacOS | aarch64 | aarch64-apple-darwin |
| Linux | x86_64 (GNU) | x86_64-unknown-linux-gnu |
| Linux | x86_64 (MUSL) | x86_64-unknown-linux-musl |
| Linux | aarch64 (GNU) | aarch64-unknown-linux-gnu |
| Linux | aarch64 (MUSL) | aarch64-unknown-linux-musl |
| Linux | arm-v7 (GNU) | armv7-unknown-linux-gnueabihf |
| Dragonfly BSD | x86_64 | (not yet supported) |
| FreeBSD | x86_64 | x86_64-unknown-freebsd |
| NetBSD | x86_64 | (not yet supported) |
| OpenBSD | x86_64 | (not yet supported) |
Note
For Linux operating systems, you have a choice of glibc (GNU) musl libc. The installer will pick GNU, so if you want the musl version, you will need to download it yourself.
Build from source
Selecting this option will download the latest copy of the distant repository from https://github.com/chipsenkbeil/distant.
Once downloaded, the source will be built using cargo build --release and the
resulting binary will be copied into the appropriate location.
This requires that your machine have both git and cargo installed.
Additionally, due to the build requirements of distant's library, you will
also need perl to build a vendored copy of openssh.
Copy local binary
Selecting this option will prompt for the path to an executable to copy to the lua directory of this plugin.