Installing
Releases
The main channel to compile Pijul from source is the Rust Language package manager: cargo. You’ll need to download rustup from here to install cargo.
After installing cargo, there are also three different channels to choose from: stable, beta, and nightly. If you’re unsure of which channel to choose, go with stable as your default rust toolchain:
rustup default stable
You can find more information about channels here.
If you’ve already installed rustup before, make sure to update it.
Next, you’ll need the necessary libraries and header files installed on your computer and clang compiler:
On Debian:
sudo apt install make libsodium-dev libclang-dev pkg-config libssl-dev libxxhash-dev libzstd-dev clang
On OSX:
brew install llvm libsodium openssl xxhash zstd
On Arch Linux:
sudo pacman -S clang libsodium gcc-libs rustup pkgconf diffutils make xxhash
On openSUSE Tumbleweed:
sudo zypper in clang-devel libopenssl-devel libsodium-devel libzstd-devel pkgconfig xxhash-devel
On Void (Linux):
sudo xbps-install libgcc-devel libressl-devel libsodium-devel libzstd-devel xxHash-devel
On Fedora Linux
sudo dnf install clang-devel openssl-devel libsodium-devel libzstd-devel pkgconfig xxhash-devel
After installing the necessary libraries and header files, it’s time to install Pijul!
Run the following command in your terminal:
cargo install pijul --version "~1.0.0-beta"
You might need to add the install directory to your $PATH environment
variable. For example: adding the following to your
~/.config/environment.d/envvars.conf
:
export PATH="\$PATH:$HOME/.cargo/bin/"
Distribution packages
Nix and NixOS
Nix is a package manager that can be installed on any Linux distribution and OSX.
nix-env --upgrade
nix-env -iA pijul
Debian
curl https://nixos.org/nix/install | sh
If it fails with the following error:
nix error: cloning builder process: Operation not permitted
Then create a file as root:
sudo su root -c 'echo "kernel.unprivileged_userns_clone=1" >> /etc/sysctl.d/nix.conf'
Arch Linux
Pijul is packaged in AUR. It should be up-to-date or at least close.
openSUSE
For the development version (1.0.0-beta.X
) of Pijul,
a package for
openSUSE Tumbleweed in the openSUSE Build Service:
sudo zypper addrepo -f -r https://download.opensuse.org/repositories/devel:/tools:/scm/openSUSE_Tumbleweed/devel:tools:scm.repo
sudo zypper install --allow-vendor-change pijul
Use the development version at your own risk. As soon as Pijul 1.0.0 is published, the package will be updated and submitted to openSUSE Tumbleweed.
Void (Linux)
xbps-install pijul
FreeBSD
pkg install pijul
Alternatively, you can install the port, which is more likely to be up-to-date but means you have to wait for rust
and pijul
to build from scratch:
cd /usr/ports/devel/pijul/ && make install clean
Windows
We do not provide official Windows binaries at the moment, but community-provided binaries are available.