Skip to main content

Linux

In this section, we will discuss the specific installation of the dependencies for the more popular Linux distributions.

NodeJS

NodeJS is the most popular JavaScript runtime environment excluding browsers. It can run on your desktop or even a server.

pacman -S nodejs npm

npm

The Node Package Manager comes pre-bundles with the NodeJS installation from above.

yarn

Only required when not using npm

For every platform, the installation of yarn is the same.

npm install --global yarn

Libsodium

Libsodium is used by the indy-sdk for encryption, decryption, hashing and signing.

pacman -S libsodium

Libzmq

Libzmq is a lightweight messaging queue used by the indy-sdk.

pacman -S zeromq

Indy-sdk

All the steps mentioned below are distrobution independent.

The indy-sdk is used by Aries Framework JavaScript for all of its lower level functionality, like cryptography, ledger interaction and much more.

The indy-sdk has not been properly for many distributions so here we will build it from source. This does mean that some additional requirements are necessary, like Rust.

Downloading Rust is as easy as executing the following command:

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

This will install Rustup which is the installer for Rust.

With Rust, we can now build the indy-sdk from source.

First, clone the repository in a temporary directory:

git clone https://github.com/hyperledger/indy-sdk

Secondly, go to the correct directory

cd indy-sdk/libindy

Third, build the library

cargo build --release

Lastly, move the library to the correct location

sudo mv target/release/libindy.so /usr/lib/libindy.so

Confirm installation

To see whether the indy-sdk is properly installed, run the following command and it should not error.

npx -p @aries-framework/node is-indy-installed