summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--pkgs/tools/misc/libbitcoin/libbitcoin-protocol.nix39
-rw-r--r--pkgs/top-level/all-packages.nix5
2 files changed, 42 insertions, 2 deletions
diff --git a/pkgs/tools/misc/libbitcoin/libbitcoin-protocol.nix b/pkgs/tools/misc/libbitcoin/libbitcoin-protocol.nix
new file mode 100644
index 000000000000..5fbc2f403087
--- /dev/null
+++ b/pkgs/tools/misc/libbitcoin/libbitcoin-protocol.nix
@@ -0,0 +1,39 @@
+{ stdenv, lib, fetchFromGitHub, pkgconfig, autoreconfHook
+, boost, libbitcoin, secp256k1, zeromq }:
+
+let
+  pname = "libbitcoin-protocol";
+  version = "3.4.0";
+
+in stdenv.mkDerivation {
+  name = "${pname}-${version}";
+
+  src = fetchFromGitHub {
+    owner = "libbitcoin";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1wrlzani3wdjkmxqwjh30i8lg3clrzwcx2di7c9sdpnsbda985gb";
+  };
+
+  nativeBuildInputs = [ autoreconfHook pkgconfig ];
+  buildInputs = [ libbitcoin secp256k1 ];
+  propagatedBuildInputs = [ zeromq ];
+
+  enableParallelBuilding = true;
+
+  configureFlags = [
+    "--with-tests=no"
+    "--with-boost=${boost.dev}"
+    "--with-boost-libdir=${boost.out}/lib"
+  ];
+
+  meta = with stdenv.lib; {
+    description = "Bitcoin Blockchain Query Protocol";
+    homepage = https://libbitcoin.org/;
+    platforms = platforms.linux ++ platforms.darwin;
+    maintainers = with maintainers; [ asymmetric ];
+
+    # AGPL with a lesser clause
+    license = licenses.agpl3;
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index e134aa5c61f9..b2f03b940162 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -14022,10 +14022,11 @@ with pkgs;
     secp256k1 = secp256k1.override { enableECDH = true; };
   };
 
-  libbitcoin-client = callPackage ../tools/misc/libbitcoin/libbitcoin-client.nix { };
-
+  libbitcoin-protocol = callPackage ../tools/misc/libbitcoin/libbitcoin-protocol.nix { };
+  libbitcoin-client   = callPackage ../tools/misc/libbitcoin/libbitcoin-client.nix { };
   libbitcoin-explorer = callPackage ../tools/misc/libbitcoin/libbitcoin-explorer.nix { };
 
+
   go-ethereum = self.altcoins.go-ethereum;
   ethabi = self.altcoins.ethabi;
   ethrun = self.altcoins.ethrun;