You'll have to have Rust toolchain installed as well as LLVM, Clang and CMake in addition to usual developer tooling.
Check crates/subspace-node and crates/subspace-farmer for required dependencies.
- Download the executables for your operating system
- Open your favourite terminal, and go to the folder where you downloaded the executables
Linux/MacOS:
- Make files executable:
chmod +x subspace-farmer-x86_64-*-snapshot subspace-node-x86_64-*-snapshot - Run the node:
./subspace-node-x86_64-*-snapshot --dev --tmp - In macOS, it may prompt that this app is not verified. Click on
cancelinstead of moving it to trash. To allow execution, go toSystem Preferences -> Security & Privacy -> General, and click onallow. After this, simply repeat step 4. This time, there will beOpenbutton in the prompt, click it to run node. - Run the farmer (do this in another terminal):
./subspace-farmer-x86_64-*-snapshot farm - In macOS, it may prompt that this app is not verified. Click on
cancelinstead of moving it to trash. To allow execution, go toSystem Preferences -> Security & Privacy -> General, and click onallow. After this, simply repeat step 4. This time, there will beOpenbutton in the prompt, click it to run node.
Windows
- Run the node:
subspace-node-x86_64-*-snapshot --dev --tmp - After running this command, Windows may ask you for permissions related to firewall, select
allowin this case. - Run the farmer (do this in another terminal):
subspace-farmer-x86_64-*-snapshot farm
This is a monorepo with multiple binaries and the workflow is typical for Rust projects:
You may need to follow both node & farmer requirements
node: https://github.com/autonomys/subspace/tree/main/crates/subspace-node farmer: https://github.com/autonomys/subspace/tree/main/crates/subspace-farmer
cargo run --release --bin subspace-node -- run --devto run a node- To start farming:
- Single farm:
cargo run --release --bin subspace-farmer -- farm --reward-address REWARD-ADDRESS path=FARM0-DIR,size=FARM0-SIZE - Multiple farms:
cargo run --release --bin subspace-farmer -- farm --reward-address REWARD-ADDRESS path=FARM0-DIR,size=FARM0-SIZE path=FARM1-DIR,size=FARM1-SIZE ...
- Single farm:
NOTE 1: You need to have nightly version of Rust toolchain with wasm32-unknown-unknown target available or else you'll get a compilation error.
NOTE 2: Following the commands above, you will be farming in an offline setting (by yourself).
NOTE 3: To farm in online setting, you can modify the command accordingly.
You can find readme files in corresponding crates for requirements, multi-node setup and other details.