-
Notifications
You must be signed in to change notification settings - Fork 168
Description
up until now, we had two options for deploying a Sv2 Template Provider:
- build a modified
bitcoind
fromsv2
branch of @Sjors fork that listens on a dedicated Sv2 port - build a
bitcoin-mine
sidecar fromsv2-ipc
branch of @Sjors fork, which connects viacapnproto
protocol over IPC tobitcoin-node
that's built from early development iterations of Bitcoin Core
with bitcoin/bitcoin#31802 merged, Bitcoin Core v30.0 is about to add bitcoin-node
to the official releases, meaning that essentially any software can leverage capnproto
over IPC and benefit from Bitcoin Core mining interface.
some early work has already been done for this, namely:
github.com/Sjors/sv2-tp
is a dedicated repo for the C++ implementation ofbitcoin-mine
sidecar mentioned above (now renamed assv2-tp
)- @rustaceanrob has done some experimental rust integration, described in detail in Implementation experience in Rust bitcoin-core/libmultiprocess#174
- @Shourya742 has done some experimental integration into SRI, where a new crate provides an executable that binds to Bitcoin Core over IPC and listens on a dedicated Sv2 port to perform the Sv2 Template Distribution Protocol
this issue is meant to track the work where, inspired by the references above, we build a crate that can be used as a library to be integrated into Rust apps.
this library shall act as a "translation" layer between Bitcoin Core's capnproto
Mining Interface over IPC and Sv2 Template Distribution Protocol.
SRI apps using this library (e.g.: JDC, Pool) shall be able to connect to bitcoin-node
(from official v30+ Bitcoin Core releases) over a UNIX socket and leverage APIs providing Sv2 Template Distribution Protocol messages over an async
runtime.
Metadata
Metadata
Assignees
Labels
Type
Projects
Status