Installation

Torsten is built from source using the standard Rust toolchain. Pre-built binaries are not yet distributed.

Prerequisites

Rust Toolchain

Install the latest stable Rust toolchain via rustup:

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

Verify the installation:

rustc --version
cargo --version

Torsten requires Rust 1.75 or later (edition 2021).

System Dependencies

Torsten uses RocksDB for persistent storage, which requires libclang for compilation.

Ubuntu / Debian:

sudo apt-get update
sudo apt-get install -y libclang-dev build-essential pkg-config

macOS (Homebrew):

brew install llvm

The llvm package includes libclang. Homebrew typically configures the paths automatically. If not, you may need to set:

export LIBCLANG_PATH="$(brew --prefix llvm)/lib"

Fedora / RHEL:

sudo dnf install clang-devel

Arch Linux:

sudo pacman -S clang

Building from Source

Clone the repository:

git clone https://github.com/michaeljfazio/torsten.git
cd torsten

Build in release mode:

cargo build --release

This produces two binaries in target/release/:

BinaryDescription
torsten-nodeThe Cardano node
torsten-cliThe cardano-cli compatible command-line interface

Install Binaries

To install the binaries into your $CARGO_HOME/bin (typically ~/.cargo/bin/):

cargo install --path crates/torsten-node
cargo install --path crates/torsten-cli

Running Tests

Verify everything is working:

cargo test --all

The project enforces a zero-warning policy. You can run the full CI check locally:

cargo fmt --all -- --check
cargo clippy --all-targets -- -D warnings
cargo test --all

Development Build

For faster compilation during development, use the debug profile (the default):

cargo build

Debug builds are significantly faster to compile but produce slower binaries. Always use --release for running a node against a live network.