Skip to content

parasitepool/para

Repository files navigation

para


para is a command-line tool for miners and pools. It is experimental software with no warranty. See LICENSE for more details.

It implements a Rust library for the Stratum protocol and includes helpful command-line tools that measure ping, inspect block templates, mimic mining machines and run pool logic. To see a full list of available commands just follow the instructions below and do para help.

This repository includes a modified fork of ckpool, which currently runs on parasite.wtf:42069. For instructions on how to connect, please visit parasite.space. The modifications to the C codebase of ckpool are:

  • postgres database for share logging
  • custom coinbase logic.
  • support for signet
  • miscellaneous helpful config flags

Setup

Requirements:

Manual Install

Rust is required to build, test, and develop. To install with curl:

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh 

Bundled Environment

This repo includes a bundled development environment with Hermit that provides the above requirements.

. ./bin/activate-hermit

Build

Clone the para repo:

git clone https://github.com/parasitepool/para.git
cd para

To build a specific version of para, first checkout that version:

git checkout <VERSION>

And finally to actually build para:

cargo build --release

Once built, the para binary can be found at ./target/release/para.

You can also install para directly into your path by doing:

cargo install --path .

Troubleshooting

Build Issues

Verify Minimum Versions

para requires:

  • rustc version 1.90.0 or later
    • Available from rustup update
  • gcc version 10.5.0 or later.
    • Available from your package manager or gnu.org

These versions can be verified with:

rustc --version
gcc --version

Linux Builds

To compile software on Linux systems, you may need additional packages which are not always installed by default. For Debian based systems (Ubuntu, Kali, etc), you can install these dependencies with apt:

sudo apt install build-essential pkg-config libssl-dev

Windows Builds

To build Rust programs on Windows, you need one of two ABI configurations:

  1. MSVC
    • On Windows, rustup will configure Rust to target this ABI by default
    • Visual Studio with Build Tools is required for building with MSVC
      • this can be a very large install (~4GB)
  2. GNU (GCC)
    • Available from the rustup toolchain install stable-gnu command
    • Requires MinGW/MSYS2
      # Run from within the MSYS terminal
      pacman -S --needed base-devel mingw-w64-ucrt-x86_64-toolchain \
      mingw-w64-ucrt-x86_64-nasm
      

The Rustup Book provides more details on Windows builds.

About

Parasite Toolkit

Resources

License

Stars

53 stars

Watchers

8 watching

Forks

Contributors