Install
We offer several versions of our releases to accommodate different CPU architectures:
- Skylake: Optimized for Intel Skylake and newer CPUs, as well as AMD Ryzen processors. Ideal for PCs manufactured from 2015 onward.
- Legacy (x86-64-v2): Designed for Intel Broadwell, Haswell, and older CPUs, along with their AMD counterparts. Suitable for systems built between 2009 and 2015 and for virtual environments that do not support Skylake instructions.
For the latest binaries and source code, please visit the Releases section on our GitHub.
A complete list of parameters and their functions can be obtained using the --help
option with both subspace-node
and subspace-farmer
.
CLI Installation Guide
To use this software, you need a Substrate wallet address. For assistance in creating a Substrate wallet, refer to our guides for ✨ SubWallet or Polkadot.js.
If you have a previous wallet address that starts with st
, you can still use it, or you can transform it to the new su
prefix. You can convert your existing wallet address using the tool available at ss58.org. Previously, our testnets used the prefix 2254
, while the Taurus testnet and Autonomys mainnet use the prefix 6094
.
We’ll provide the files you need for your operating system:
- subspace-node: The node implementation for the Subspace protocol.
- subspace-farmer: Manages plotting, replotting, and farming rewards.
- 🐧 Ubuntu
- 🖼️ Windows
- 🍎 macOS
- 🤖 Linux Service (SystemD)
- 🐳 Docker
- 🛠️ Build from Source
Step 1: Download the CLI Executables
Step 2: Start the CLI Node
-
Open your terminal and navigate to the directory where you downloaded the binaries. For example, if you downloaded them to
~/Downloads
, use:cd ~/Downloads
-
Make the
farmer
andnode
executable:chmod +x subspace-farmer-ubuntu-x86_64-skylake-mainnet-2025-jan-14
chmod +x subspace-node-ubuntu-x86_64-skylake-mainnet-2025-jan-14 -
Start the node using the command below. Replace
<NODE_DATA_PATH>
with the path where you want to store the node database and<YOUR_NODE_NAME>
with a nickname of your choice. Ensure you copy the entire command:./subspace-node-ubuntu-x86_64-skylake-mainnet-2025-jan-14 \
run \
--chain mainnet \
--base-path "<NODE_DATA_PATH>" \
--name "<YOUR_NODE_NAME>" \
--farmer
Using run, setting --base-path and specifying --chain is mandatory.
You should see output similar to this in your terminal:
2024-09-04T06:42:56.744203Z INFO subspace_node::commands::run: Subspace
2024-09-04T06:42:56.744231Z INFO subspace_node::commands::run: ✌️ version 0.1.0-5c484f36890
2024-09-04T06:42:56.744235Z INFO subspace_node::commands::run: ❤️ by Subspace Labs <https://subspace.network>
2024-09-04T06:42:56.744238Z INFO subspace_node::commands::run: 📋 Chain specification: Autonomys Mainnet
2024-09-04T06:42:56.744241Z INFO subspace_node::commands::run: 🏷 Node name: cool-farmer-name
2024-09-04T06:42:56.744243Z INFO subspace_node::commands::run: 💾 Node path: /opt/autonomys
2024-09-04T06:43:00.165801Z INFO Consensus: subspace_networking::constructor: DSN instance configured. allow_non_global_addresses_in_dht=false peer_id=12D3KooWB>
2024-09-04T06:43:00.166299Z INFO Consensus: libp2p_swarm: local_peer_id=12D3KooWB6VSys21gqsCGxVKkjYXk8kpoyTCkp5ogcncmMFFsaN1
2024-09-04T06:43:00.166467Z INFO Consensus: subspace_service: Subspace networking initialized: Node ID is 12D3KooWB6VSys21gqsCGxVKkjYXk8kpoyTCkp5ogcncmMFFsaN1
2024-09-04T06:43:00.167026Z INFO Consensus: block_relay: relay::consensus block server: starting
2024-09-04T06:43:00.167401Z INFO Consensus: sub-libp2p: 🏷 Local node identity is: 12D3KooWB6VSys21gqsCGxVKkjYXk8kpoyTCkp5ogcncmMFFsaN1
2024-09-04T06:43:00.167424Z INFO Consensus: sub-libp2p: Running libp2p network backend
2024-09-04T06:43:00.167447Z INFO Consensus: subspace_service: DSN listening on /ip4/127.0.0.1/tcp/30333/p2p/12D3KooWB6VSys21gqsCGxVKkjYXk8kpoyTCkp5ogcncmMFFsaN1
2024-09-04T06:43:00.171109Z INFO Consensus: subspace: 🧑🌾 Starting Subspace Authorship worker
2024-09-04T06:43:00.174544Z INFO Consensus: sc_consensus_subspace::archiver: Resuming archiver from last archived block last_archived_block_number=3124818
2024-09-04T06:43:00.174699Z INFO Consensus: sc_consensus_subspace::archiver: Archiving already produced blocks 3124819..=3131493
2024-09-04T06:43:00.176495Z INFO Consensus: subspace_service: DSN listening on /ip4/192.168.0.101/tcp/30333/p2p/12D3KooWB6VSys21gqsCGxVKkjYXk8kpoyTCkp5ogcncmMFFsaN1
2024-09-04T06:43:00.190399Z INFO Consensus: subspace_service::task_spawner: 📦 Highest known block at #3131593
2024-09-04T06:43:00.191139Z INFO Consensus: sc_rpc_server: Running JSON-RPC server: addr=0.0.0.0:9944, allowed origins=["*"]
2024-09-04T06:43:00.192326Z INFO subspace_metrics: Metrics server started. endpoints=[0.0.0.0:9091]
2024-09-04T06:43:00.192353Z INFO actix_server::builder: starting 2 workers
2024-09-04T06:43:00.192448Z INFO actix_server::server: Tokio runtime found; starting in existing Tokio runtime
2024-09-04T06:43:00.658988Z INFO Consensus: sub-libp2p: 🔍 Discovered new external address for our node: /ip4/1.2.3.4/tcp/30333/p2p/12D3KooWB6VSys21gqsCGxVKkjYXk8kpoyTCkp5ogcncmMFFsaN1
2024-09-04T06:43:02.172777Z INFO Consensus: subspace_service::sync_from_dsn: Received notification to sync from DSN reason=WentOnlineSubstrate
2024-09-04T06:43:05.192676Z INFO Consensus: substrate: 💤 Idle (6 peers), best: #3131593 (0xb29f…c04e), finalized #3063319 (0x366a…fd89), ⬇ 13.7kiB/s ⬆ 5.2kiB/s
2024-09-04T06:43:10.193308Z INFO Consensus: substrate: 💤 Idle (10 peers), best: #3131593 (0xb29f…c04e), finalized #3063319 (0x366a…fd89), ⬇ 34.8kiB/s ⬆ 3.6kiB/s
2024-09-04T06:43:40.197094Z INFO Consensus: substrate: ⚙️ Preparing 0.0 bps, target=#3131599 (21 peers), best: #3131616 (0xb29f…c04e), finalized #3063319 (0x366a…fd89), ⬇ 53.9kiB/s ⬆ 10.5kiB/s
2024-09-04T06:43:45.197731Z INFO Consensus: substrate: ⚙️ Preparing 0.0 bps, target=#3131600 (22 peers), best: #3131616 (0xb29f…c04e), finalized #3063319 (0x366a…fd89), ⬇ 29.5kiB/s ⬆ 9.7kiB/s
2024-09-04T06:43:46.197731Z INFO Consensus: substrate: 🏆 Imported #3131616 (0xe5c6…c82e → 0x6bae…d56d)
2024-09-04T06:44:46.197731Z INFO Consensus: substrate: 💤 Idle (40 peers), best: #3131617 (0x4b91…1060), finalized #3063319 (0x366a…fd89), ⬇ 225.3kiB/s ⬆ 23.9kiB/s