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.
- Arch Linux
- Debian
- Red Hat
pacman -S nodejs npm
curl -fsSL https://deb.nodesource.com/setup_18.x | bash -
apt-get install -y nodejs
curl -sL https://rpm.nodesource.com/setup_18.x | bash -
yum install nodejs
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.
- Arch Linux
- Debian
- Red Hat
pacman -S libsodium
apt-get install libsodium-dev
yum install libsodium libsodium-devel
Libzmq
Libzmq is a lightweight messaging queue used by the indy-sdk.
- Arch Linux
- Debian
- Red Hat
pacman -S zeromq
apt-get install libzmq3-dev
yum install libsodium zeromq-devel
Indy-sdk
All the steps mentioned below are distribution 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@^0.3 is-indy-installed