Linux

Installation & setup instructions for Linux systems

First, install system requirements. These commands work on Ubuntu and Debian Linux:

sudo apt-get -y update
sudo apt-get install -y curl tar wget aria2 clang pkg-config libssl-dev jq build-essential git make ncdu cmake ninja-build protobuf-compiler

Node

Install Node using nvm.As of the time of writing, this codebase works with Node 22.

SP1

We are using version v1.0.1 of SP1. To install this specific version of the SP1 toolchain:

git clone https://github.com/succinctlabs/sp1.git
cd sp1
git checkout v1.0.1
cd cli
cargo install --locked --path .
cd ..
cargo prove install-toolchain

Celestia Light Node

Set up a Celestia light node according to the instructions here.

Get the authentication token using the following command:

export LIGHT_NODE_AUTH_TOKEN=$(celestia light auth admin --p2p.network celestia)

See this tutorial if you need further instructions.

Start the light node:

celestia light start --core.ip rpc.celestia.pops.one --p2p.network celestia

Set up the repositories

Make a new directory for the project:

mkdir mina-celestia
cd mina-celestia

Clone & set up the blob-stream-inclusion repository:

git clone git@github.com:geometers/blob-stream-inclusion.git
cd blob-stream-inclusion
cp .env.example .env

Open the .env file and fill in your own SP1_PRIVATE_KEY and LIGHT_NODE_AUTH_TOKEN.

Clone the o1js-blobstream repository:

cd ..
git clone git@github.com:geometers/o1js-blobstream.git

Other System Requirements

  1. For the blob-stream-inclusion proofs you'll need:

    1. protoc must be installed.

    2. SP1 must be installed.

    3. Docker must be installed and running.

  2. For the o1js-blobstream proofs you'll need NodeJS version 22.

Last updated