Install & Run Curio
Curio is the core PDP client that coordinates sealing, interacts with Lotus and submits PDP proofs.
System Configuration
Before you proceed with the installation, you should increase the UDP buffer size:
sudo sysctl -w net.core.rmem_max=2097152
sudo sysctl -w net.core.rmem_default=2097152
To make this change persistent across reboots:
echo 'net.core.rmem_max=2097152' | sudo tee -a /etc/sysctl.conf
echo 'net.core.rmem_default=2097152' | sudo tee -a /etc/sysctl.conf
Build Curio
Clone the repository and switch to the PDP branch:
git clone https://github.com/filecoin-project/curio.git
cd curio
git checkout synapse
# For Filecoin Mainnet:
make clean build
# For Calibration Testnet:
make clean calibnet
This step will take a few minutes to complete.
Install and Verify Curio
Run the following to install the compiled binary:
sudo make install
This will place curio in /usr/local/bin
Verify the installation:
curio --version
Expected output:
# Example output for Mainnet:
curio version 1.24.4+mainnet+git_f954c0a_2025-04-06T15:46:32-04:00
# Example output for Calibration:
curio version 1.24.4+calibnet+git_f954c0a_2025-04-06T15:46:32-04:00
Guided Setup
Curio provides a utility to help you set up a new miner interactively. Run the following command:
curio guided-setup
1️⃣ Select "Create a new miner"
Use the arrow keys to navigate the guided setup menu and select "Create a new miner".
2️⃣ Enter Your YugabyteDB Connection Details
If you used the default installation steps from this guide, the following values should work:
Host:
127.0.0.1
Port:
5433
Username:
yugabyte
Password:
yugabyte
Database:
yugabyte
You can verify these settings by running the following command from the Yugabyte directory:
./bin/yugabyted status
After selecting "Continue to connect and update schema", Curio will automatically create the required tables and schema in the database.
3️⃣ Set Wallet Addresses
For this step, use the two BLS wallets you created earlier with Lotus:
Use wallet 1 for the Owner Address
Use wallet 2 for the Worker Address
Use wallet 1 again for the Sender Address
These addresses must match the Lotus wallets created earlier.
lotus wallet list
4️⃣ Choose Sector Size
Choose sector size:
64 GiB
5️⃣ Create Miner Actor
Review the information to ensure all inputs are correct. Then select "Continue to verify the addresses and create a new miner actor" to proceed.
Once the actor is created, Curio will:
Register your miner ID
curio config new-cluster <miner ID>
6️⃣ Telemetry (Optional)
You’ll be asked whether to share anonymised or signed telemetry with the Curio team to help improve the software.
Select your preference and continue.
7️⃣ Save Database Configuration
At the final step of the guided setup, you’ll be prompted to choose where to save your database configuration file.
Use the arrow keys to select a location. A common default is:
/home/your-username/curio.env
Once selected, setup will complete, and the miner configuration will be stored.
8️⃣ Launch the Curio Web GUI
To explore the Curio interface visually, start the GUI layer:
curio run --layers=gui
Then, open your browser and go to:
http://127.0.0.1:4701
This will launch the Curio web GUI locally.
Last updated
Was this helpful?