Installing Zel Daemon
This guide walks through the step-by-step process of building the Zel daemon/CLI from the open-source repository on Github
Getting Started
Recommended System Specs:
2 or more CPU threads
64-bit Linux (Ubuntu 18.04)
4+ GB RAM
25+ GB Storage
If setting up a ZelNode, follow this link: https://zel.gitbook.io/zelnodes/
The instructions below on this page are for setting up a standard p2p node, not a ZelNode to collect network rewards
Running a standard p2p node does not yield any Zel
Building for Linux from source
Building source works for many popular Ubuntu, Debian, & Fedora distros. We officially support Ubuntu 18.04 LTS "Bionic Beaver"
Install Ubuntu/Debian dependencies
sudo apt-get update && sudo apt-get upgrade -y
sudo apt-get install build-essential pkg-config libc6-dev m4 g++-multilib autoconf libtool ncurses-dev unzip git python python-zmq zlib1g-dev wget curl bsdmainutils automake
Install Fedora dependencies (if not using Ubuntu/Debian OS)
sudo dnf install git pkgconfig automake autoconf ncurses-devel python python-zmq wget gtest-devel gcc gcc-c++ libtool curl patch
Build zelcashd
git clone https://github.com/zelcash/zelcash.git
cd zelcash
git checkout master
./zcutil/build.sh -j$(nproc)
Create config file
mkdir ~/.zelcash
echo "rpcuser=username" >> ~/.zelcash/zelcash.conf
echo "rpcpassword=`head -c 32 /dev/urandom | base64`" >> ~/.zelcash/zelcash.conf
echo "rpcallowip=127.0.0.1" >> ~/.zelcash/zelcash.conf
echo "addnode=explorer.zel.cash" >> ~/.zelcash/zelcash.conf
echo "addnode=explorer.zel.zelcore.io" >> ~/.zelcash/zelcash.conf
Fetch params
cd zelcash
./zcutil/fetch-params.sh
Run zelcashd
Building for MacOS from source
Install dependencies
#install xcode
xcode-select --install
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew install cmake autoconf libtool automake coreutils pkgconfig gmp wget
brew install gcc5 --without-multilib
Build
git clone https://github.com/zelcash/zelcash.git
cd zelcash
git checkout master
./zcutil/build.sh -j$(sysctl -n hw.ncpu)
Fetch params
./zcutil/fetch-params.sh
Create config file
mkdir ~/Library/Application Support/zelcash/
echo "rpcuser=username" >> ~/Library/Application Support/zelcash/zelcash.conf
echo "rpcpassword=`head -c 32 /dev/urandom | base64`" >> ~/Library/Application Support/zelcash/zelcash.conf
echo "rpcallowip=127.0.0.1" >> ~/Library/Application Support/zelcash/zelcash.conf
echo "addnode=explorer.zel.cash" >> ~/Library/Application Support/zelcash/zelcash.conf
echo "addnode=explorer.zel.zelcore.io" >> ~/Library/Application Support/zelcash/zelcash.conf
Run zelcashd
Building for Windows from source
Install dependencies
sudo apt-get install build-essential pkg-config libc6-dev m4 g++-multilib autoconf libtool ncurses-dev cmake unzip git python zlib1g-dev wget bsdmainutils automake mingw-w64 curl
Build zelcashd
git clone https://github.com/zelcash/zelcash.git
cd zelcash
git checkout master
./zcutil/build-win.sh -j$(nproc)
Create config file
Create folder %AppData%/Roaming/ZelCash
Create txt file zelcash.conf in above folder. Copy/paste the below into zelcash.conf and save, close. Change rpc username and password
rpcuser=randomusername
rpcpassword=RandomPasswordChangeme
rpcallowip=127.0.0.1
addnode=explorer.zel.cash
addnode=explorer.zel.zelcore.io
Fetch params
Create folder %AppData%/Roaming/ZcashParams
Download the below links into this folder
https://zelcore.io/zelcore/sapling-output.params
https://zelcore.io/zelcore/sapling-spend.params
https://zelcore.io/zelcore/sprout-groth16.params
https://zelcore.io/zelcore/sprout-proving.key
https://zelcore.io/zelcore/sprout-verifying.key
Run zelcashd
Install using APT repo
The APT repo works with many popular Ubuntu & Debian distros
echo 'deb https://zelcash.github.io/aptrepo/ all main' | sudo tee --append /etc/apt/sources.list.d/zelcash.list
gpg --keyserver keyserver.ubuntu.com --recv 4B69CA27A986265D
gpg --export 4B69CA27A986265D | sudo apt-key add -
sudo apt-get update
sudo apt-get install zelcash
This installs zelcashd, zelcash-cli, zelcash-tx and zelcash-fetch-params
cd zelcash
chmod +x zelcash-fetch-params
./zelcash-fetch-params
Building for ARM from source (cross-compile)
Cross-compile works on Debian 9 and Ubuntu 18.04, possibly other versions and distros. This build is not officially supported.
Install dependencies
sudo apt-get update && sudo apt-get upgrade -y
sudo apt-get install build-essential pkg-config libc6-dev m4 g++-multilib autoconf libtool ncurses-dev unzip git python python-zmq zlib1g-dev wget curl bsdmainutils automake
sudo apt-get install gcc-aarch64-linux-gnu
sudo apt install g++-aarch64-linux-gnu
Build zelcashd
git clone https://github.com/zelcash/zelcash.git
cd zelcash
git checkout master
HOST=aarch64-linux-gnu ./zcutil/build.sh
This will build zelcashd, zelcash-cli, and zelcash-tx
Move the above files to your ARM device under ~/zelcash/src/
Fetch params
mkdir ~/zelcash/zcutil && cd ~/zelcash/zcutil
wget https://raw.githubusercontent.com/zelcash/zelcash/master/zcutil/fetch-params.sh
chmod +x fetch-params.sh
./fetch-params.sh
Run zelcashd
~/zelcash/src/zelcashd