Skip to content

Installation Guide

This guide covers the available methods to install and run Cloud Service on your system.

Installation Methods

  1. Pre-compiled Binaries — Quick and easy for most users
  2. Build from Source — For developers and advanced users

Method 1: Pre-compiled Binaries

Linux

bash
# Download the latest release
wget https://github.com/MauricioSpagnol/cloudservice/releases/latest/download/cs-linux-amd64.tar.gz

# Extract the archive
tar -xzf cs-linux-amd64.tar.gz

# Move binaries to /usr/local/bin
sudo mv cs-linux-amd64/csd /usr/local/bin/
sudo mv cs-linux-amd64/cs-cli /usr/local/bin/
sudo mv cs-linux-amd64/cs-tx /usr/local/bin/

# Verify installation
csd --version
cs-cli --version

macOS

bash
# Download manually
curl -LO https://github.com/MauricioSpagnol/cloudservice/releases/latest/download/cs-macos-amd64.tar.gz
tar -xzf cs-macos-amd64.tar.gz
sudo mv cs-macos-amd64/csd /usr/local/bin/
sudo mv cs-macos-amd64/cs-cli /usr/local/bin/

Method 2: Build from Source

Prerequisites

Install system build dependencies (Ubuntu/Debian):

bash
sudo apt-get update
sudo apt-get install -y \
  build-essential libtool autotools-dev automake pkg-config \
  libssl-dev libevent-dev bsdmainutils \
  libboost-system-dev libboost-filesystem-dev \
  libboost-chrono-dev libboost-program-options-dev \
  libboost-test-dev libboost-thread-dev \
  libminiupnpc-dev libzmq3-dev \
  curl wget git python3

Build Steps

bash
# Clone the repository
git clone https://github.com/MauricioSpagnol/cloudservice.git
cd cloudservice

# Build dependencies (includes Berkeley DB 6.2) — takes 10–30 min on first run
DEPENDS_HOST=$(./depends/config.guess)
make -C depends -j$(nproc) HOST=$DEPENDS_HOST NO_PROTON=1

# Configure and build
./autogen.sh
./configure \
  --prefix=$(pwd)/depends/$DEPENDS_HOST \
  --with-incompatible-bdb \
  --disable-tests --disable-bench --disable-gui-tests \
  --without-gui --without-miniupnpc \
  --disable-proton
make -j$(nproc)

# Install binaries
sudo cp src/csd src/cs-cli src/cs-tx /usr/local/bin/

Download zkSNARK Parameters

The daemon requires Zcash zkSNARK parameter files (~800 MB) in ~/.zcash-params. Run the fetch script once before starting the daemon for the first time:

bash
./zcutil/fetch-params.sh

The files will be saved to ~/.zcash-params automatically. On macOS they go to ~/Library/Application Support/ZcashParams.

Verify Build

bash
csd --version
cs-cli --version

Initial Configuration

After installation, create a configuration file:

bash
# Create config directory
mkdir -p ~/.cs

# Create configuration file
cat > ~/.cs/cs.conf << EOF
# Network
server=1
listen=1
port=16178

# RPC
server=1
rpcuser=your_rpc_username
rpcpassword=your_secure_password
rpcport=16180
rpcallowip=127.0.0.1

# Node
maxconnections=128
txindex=1
EOF

# Set proper permissions
chmod 600 ~/.cs/cs.conf

Starting Cloud Service

Start the Daemon

bash
# Start in background
csd -daemon

# Or start in foreground (for debugging)
csd

# With custom config
csd -conf=/path/to/cs.conf

Verify It's Running

bash
# Check connection
cs-cli getblockchaininfo

# Get network info
cs-cli getnetworkinfo

# Check peer connections
cs-cli getpeerinfo

Testnet

To run on testnet for development/testing:

bash
# Start testnet node
csd -testnet -daemon

# Testnet CLI commands
cs-cli -testnet getblockchaininfo

Testnet configuration:

ini
# cs.conf for testnet
testnet=1
port=16179
rpcport=16180

Troubleshooting

Common Issues

"Address already in use" error:

bash
# Check if another instance is running
ps aux | grep csd

# Kill existing process
killall csd

"Cannot connect to daemon" error:

bash
# Check if daemon is running
cs-cli getblockchaininfo

# Start daemon if not running
csd -daemon

Slow initial sync:

  • The initial blockchain sync can take several hours
  • Ensure you have sufficient disk space
  • Consider using an SSD for faster sync

Logs

bash
# View debug log
tail -f ~/.cs/debug.log

Next Steps

Released under the MIT License.