THE xONE LAB Explore the performance record
xone.sh

OPERATORS / 01

Follow Apothem.
Verify each step.

A source-based Rust follower path for chain 51. This recipe does not enable mining or signing.

Historical source snapshot. Source links point to commit 5af188d; text was reviewed 14 November 2026 and may differ from newer client builds.

01 /

Plan your install

Choose a client, network, operating system and role. The planner prints prerequisites, commands and readiness checks, or explains why a combination has no plan.

Prerequisites

  • Ubuntu or Debian host, x86_64, root or sudo access
  • Outbound TCP and UDP 30303
  • About 50 GB free disk (the guide's target, not a qualified minimum)
  • C compiler, make, clang, libclang, git, python3 and rustup (toolchain 1.94.0, pinned by rust-toolchain.toml)

Command plan

This page never runs these commands. Read each one, then run it yourself.

# 1. Prerequisite check (changes nothing)
git clone https://github.com/XDCIndia/xOneRS.git
cd xOneRS
ops/check-build-deps.sh   # exit 0 = all present; follow its printed install command if not
df -h .                   # confirm free disk
# 2. Build
cargo build --locked --release -p xone
# 3. Check identity: the stamp must not contain 'unknown' or '-dirty'
./target/release/xone --version
# 4. Start an Apothem follower (never mines or signs)
./target/release/xone --network apothem --datadir ./apothem-data \
  --bootnodes "$(paste -sd, ops/bootnodes/apothem.txt)" --http
# In a second terminal, read only (default RPC address assumed 127.0.0.1:8545)
curl -s -X POST -H 'content-type: application/json' --data '{"jsonrpc":"2.0","id":1,"method":"eth_chainId","params":[]}' 127.0.0.1:8545
curl -s -X POST -H 'content-type: application/json' --data '{"jsonrpc":"2.0","id":2,"method":"eth_blockNumber","params":[]}' 127.0.0.1:8545
curl -s -X POST -H 'content-type: application/json' --data '{"jsonrpc":"2.0","id":3,"method":"eth_syncing","params":[]}' 127.0.0.1:8545

Readiness checks

  • web3_clientVersion returns the same stamp as the version command.
  • eth_chainId returns 0x33 (51).
  • eth_blockNumber rises on repeated calls and eth_syncing ends false.
  • A responding endpoint alone does not show a synced node or the right chain.

Source: xOneRS repository documents, captured 2026-11-15. Install guide, Build dependency check, Apothem follower guide. A plan is not a qualification of any client for mainnet use.

02 /

01. Build from the public repository

Use the repository’s pinned Rust toolchain and platform prerequisites. Keep the version output with your deployment notes.

git clone https://github.com/XDCIndia/xOneRS.git
cd xOneRS
cargo build --locked --release -p xone
./target/release/xone --version
03 /

02. Start a testnet follower

Run from the repository directory so the bootnodes file resolves. The data directory below is specific to Apothem. Review the complete operator guide before changing ports or exposing RPC.

./target/release/xone --network apothem --datadir ./apothem-data \
  --bootnodes "$(paste -sd, ops/bootnodes/apothem.txt)" --http
04 /

03. Check identity and progress

Use read-only JSON-RPC requests to inspect chain ID, block number, and sync progress. A responding endpoint alone does not demonstrate that the node is synced or on the expected chain.

05 /

04. Operate with a recovery plan

Observe disk growth and logs during sync. Preserve the data and logs if the client refuses a block. Follow the repository’s upgrade and rollback guide before replacing a binary.

FOLLOW THE SOURCE

Reviewed 14 November 2026. Repository guides hold the current implementation details.

KEEP THE CURIOSITY GOING

Another way in.

Was this page helpful?

Feedback is public on GitHub and needs a GitHub account. Nothing is sent until you submit the issue there. Page: /docs/v/5af188d/run-a-node/. Reviewed version: 14 November 2026.

YOUR NEXT STEP

Build your way.

Choose an implementation to see its source-based build recipe.

Use the pinned Rust toolchain and platform build prerequisites in the repository.

git clone https://github.com/XDCIndia/xOneRS.git
cd xOneRS
cargo build --locked --release -p xone
./target/release/xone --version

This recipe builds the client; it does not start a node. Mainnet operation is not yet qualified.

Open source guide