How to install new miners

We maintain a list of miner profiles so installation is simple.

Keeping your miners up to date

Seems like every day there is a new miner or version being released. Trying to keep up to date with the number of miner programs and versions is extremely difficult.

You can use crossbelt to assist in this process. Crossbelt will install new miners easily on the command line with the magic of miner profiles that contain all the informtion needed to compile and extract the miner program.

If you set sudo cb config set auto_install_miner true miners specified in the algo profile or mining profile will instruct crossbelt to always install what is specified in these profiles. A simple sudo cb reconfigure should keep them updated.

You can also set this in the crossbelt_data under rigs, sites, or owners and have all your rigs update automatically. The default is false as this option is currently still experimental.

Example:

# crossbelt_data/data/rigs/000000.yaml
crossbelt::rig::auto_install_miner: true

Installing a new miner

To install a new miner just run the following command.

Example: xb miner install xmr-stak

Not sure which miner programs are available? Just run xb miner install and Crossbelt will present a list for you and prompt you. This list is generated by listing the files under crossbelt_data/data/miners.

By default miner installation paths should go under /opt/crossbelt/miners. This is specified in the miner profile. This leads to having miners installed like so:

/opt/crossbelt/miners/
├── xmr-stak-linux-2.10.0-cpu_opencl-amd
│   ├── libxmrstak_opencl_backend.so
│   └── xmr-stak
└── xmr-stak-linux-2.10.3-cpu_opencl-amd
    ├── libxmrstak_opencl_backend.so
    └── xmr-stak

Creating new miner profiles

We try and keep the popular miner profiles up to date but there will always be miners we miss. Futhermore, you can create profiles that install from custom urls in case you need to run bulk updates internally or have forked miner programs.

New miner profiles can be added by creating a new file in your crossbelt_data repo.

Example:

# data/miners/xmr-stak.yaml
crossbelt::miner::base_name: xmr-stak
crossbelt::miner::checksum: 6ec22e53a4ee360075fe2dedb3863a7235d18079
crossbelt::miner::checksum_type: sha1
crossbelt::miner::download_url: https://github.com/fireice-uk/xmr-stak/releases/download/2.10.1/xmr-stak-linux-2.10.1-cpu_opencl-amd.tar.xz
crossbelt::miner::install_path: /opt/crossbelt/miners
crossbelt::miner::binary_path: /opt/crossbelt/miners/xmr-stak-linux-2.10.1-cpu_opencl-amd/xmr-stak
crossbelt::miner::required_packages:
  - xz-utils

In order to create this profile you will need to know the url of the miner program. At this time, this url must be the compiled version of the miner. The downloaded file should be a compressed file using zip, xz, gz or other to save bandwidth.

There maybe cases where the compression algorithm used requires a specific package to be installed first. Or if the miner program requires pacakges to be installed you can list them with the crossbelt::miner::required_packages setting and those packages will be installed.

This data belows tells crossbelt which miner or algo profile to use. The miner profile you create should be referenced in the section below.

# crossbelt_data/data/algo_profiles/cryptonight_v7
crossbelt::config::globalminer:
  amdgpu: xmr-stak-2.10.3
  nvidia: xmr-stak-2.10.3