Installation

This guide will show how to build, install and update Curio binaries

Debian package installation

Curio packages are available to be installed directly on Ubuntu / Debian systems.

  1. Install prerequisites

    sudo apt install mesa-opencl-icd ocl-icd-opencl-dev gcc git jq pkg-config curl clang build-essential hwloc libhwloc-dev wget libarchive-dev -y && sudo apt upgrade -y
  2. Enable Curio package repo

    sudo wget -O /usr/share/keyrings/curiostorage-archive-keyring.gpg https://filecoin-project.github.io/apt/KEY.gpg
    
    echo "deb [signed-by=/usr/share/keyrings/curiostorage-archive-keyring.gpg] https://filecoin-project.github.io/apt stable main" | sudo tee /etc/apt/sources.list.d/curiostorage.list
    
    sudo apt update
  3. Install Curio binaries based on your GPU.

    For NVIDIA GPUs:

    sudo apt install curio-cuda

    For OpenCL GPUs:

    sudo apt install curio-opencl

Linux Build from source

You can build the Curio executables from source by following these steps.

Software dependencies

You will need the following software installed to install and run Curio.

System-specific

Building Curio requires some system dependencies, usually provided by your distribution.

Arch:

Ubuntu/Debian:

Fedora:

OpenSUSE:

Amazon Linux 2:

Rustup

Curio needs rustup. The easiest way to install it is:

Go

To build Curio, you need a working installation of Go: It needs to be at-least the version specified here.

Example of an OLD version's CLI download:

You’ll need to add /usr/local/go/bin to your path. For most Linux distributions you can run something like:

See the official Golang installation instructions if you get stuck.

System Configuration

Before you proceed with the installation, you should increase the UDP buffer. You can do this by running the following commands:

To persist the UDP buffer size across the reboot, update the /etc/sysctl.conf file.

Build and install Curio

Once all the dependencies are installed, you can build and install Curio.

  1. Clone the repository:\

  2. Switch to the latest stable release branch:\

  3. Enable the use of SHA extensions by adding these two environment variables:

  4. If you are using a Nvidia GPU, please set the below environment variables.\

  5. Curio is compiled to operate on a single network. Choose the network you want to join, then run the corresponding command to build the Curio node:\

  6. Install Curio. This will put curio in /usr/local/bin. curio will use the $HOME/.curio folder by default.

  7. Run curio --version

You should now have Curio installed. You can now finish setting up the Curio node.

MacOS Build from source

You can build the Curio executables from source by following these steps.

Software dependencies

You must have XCode and Homebrew installed to build Curio from source.

XCode Command Line Tools

Curio requires that X-Code CLI tools be installed before building the Curio binaries.

Check if you already have the XCode Command Line Tools installed via the CLI, run:

This should output something like:

If this command returns a path, then you have Xcode already installed! You can move on to installing dependencies with Homebrew. If the above command doesn’t return a path, install Xcode:

Next up is installing Curio’s dependencies using Homebrew.

Homebrew

We recommend that macOS users use Homebrew to install each of the necessary packages.

Use the command brew install to install the following packages:

Next up is cloning the Lotus repository and building the executables.

Rust

Rustup is an installer for the systems programming language Rust. Run the installer and follow the onscreen prompts. The default installation option should be chosen unless you are familiar with customisation:

Build and install Curio

The installation instructions are different depending on which CPU is in your Mac:

Arm based CPUs

  1. Clone the repository:

  2. Switch to the latest stable release branch:

  3. Create the necessary environment variables to allow Curio to run on Arm architecture:

  4. Build the curio binary:

  5. Run the final make command to move this curio executable to /usr/local/bin. This allows you to run curio from any directory.

  6. Run curio --version

  7. You should now have Curio installed. You can now finish setting up the Curio node.

Intel CPUs

❗These instructions are for installing Curio on an Intel Mac. If you have an Arm-based CPU, use the Arm-based CPU instructions ↑

  1. Clone the repository:

  2. Switch to the latest stable release branch:

  3. Build and install Curio:

  4. Run curio --version

You can now finish setting up the Curio node.

Last updated