Skip to main content

Getting Started

Prerequisites

To run Chronicle, you need the following:

  • A Linux LTS operating system such as Ubuntu

  • 4 GB RAM

  • At least 32 GB of disk space

  • 64-bit processor

  • Preferred a 10 Gbps network connection

  • At least 2 CPU cores (recommended)

  • Rust

  • At least one Scylla node (version 4 or greater) running on a different device in the same private network as Chronicle. See the Scylla documentation for a tutorial on setting one up. For information about securing your Scylla nodes, see the Scylla security documentation.

  • The build-essentials packages

    You can install these packages for Debian based distros, using the following command:

    sudo apt-get install build-essential gcc make cmake cmake-gui cmake-curses-gui pkg-config openssl libssl-dev

    For other Linux distros, please refer to your package manager to install the build-essential pkgs

  • (Optional) An IDE that supports Rust autocompletion. We recommend Visual Studio Code with the rust-analyzer extension

  • If you want to load historical transactions into your permanode, you can download the files from the IOTA Foundation's archive.

We also recommend updating Rust to the latest stable version:

rustup update stable

Installation

Either download the provided executable (you should only do this if you do not wish to use the filtering functionality), or build it yourself.

Building Chronicle

Clone this repository:

git clone https://github.com/iotaledger/chronicle.rs
cargo build --release

If you wish to use the filter functionality, enable the filter feature in chronicle

cargo build --release --features filter

Configuring Chronicle

Chronicle uses a RON file to store configuration parameters, called config.ron. An example is provided as config.example.ron with default values. See Config Reference for more details about the config file.

Running Chronicle

See Building Chronicle.

cd target/release && cp /path/to/your/config.ron ./
cargo run --release