docs/installation/README.md
This is a reference of all known methods to install navi.
[!CAUTION] Navi, as of now, has only two official builds, the released binaries on GitHub and the published package on brew.
All the other packages are community-maintained.
brew install navi
[!NOTE] See brew.sh for more details.
[!WARNING] You need to enable the GURU overlay for the instructions below to work correctly.
For more details see:
emerge -a app-misc/navi
[!NOTE] See Gentoo.org for more details.
pacman -S navi
[!NOTE] See wiki.archlinux.org/title/Pacman for more details.
nix-env -iA nixpkgs.navi
[!NOTE] See nixos.org for more details
cargo install --locked navi
[!NOTE] See @rust-lang/cargo for more details.
choco install navi
[!CAUTION] You currently need to create the config file
$env:USERPROFILE\AppData\Roaming\navi\config.yamland define theshell.commanddirective aspowershellfor navi to work correctly.yamlshell: command: powershell
[!NOTE] See community.chocolatey.org for more details.
Navi has an installation script ready for you to use, you can call it like this:
bash <(curl -sL https://raw.githubusercontent.com/denisidoro/navi/master/scripts/install)
If you need to define the directory for the binary, you can call it like this:
BIN_DIR=/usr/local/bin bash <(curl -sL https://raw.githubusercontent.com/denisidoro/navi/master/scripts/install)
With each release, we try our best to build and publish a binary for each supported platform, you can find them here: @denisidoro/navi/releases/latest
What you need to do is:
$PATHYou can also build navi from source, it's mainly used by contributors to test their modifications but can be used by end users who want to build their own version.
You need to clone the repository:
git clone https://github.com/denisidoro/navi && cd navi
Call make
make install
You can specify the binary directory with:
make BIN_DIR=/usr/local/bin install
navi supports environment variables at compile time that will modify the behavior of navi at runtime, they are:
| Environment variable | Description |
|---|---|
NAVI_PATH | This defines the default path used by navi for cheatsheets. |
NAVI_CONFIG | This defines the default configuration file used by navi. |
You can find navi for more package managers by clicking on the image below:
Feel free to be the maintainer of navi for any package manager you'd like!