diff --git a/pkgs/tools/misc/libbitcoin/libbitcoin-client.nix b/pkgs/tools/misc/libbitcoin/libbitcoin-client.nix index 989c1f57b6ef..d2f988396ca7 100644 --- a/pkgs/tools/misc/libbitcoin/libbitcoin-client.nix +++ b/pkgs/tools/misc/libbitcoin/libbitcoin-client.nix @@ -1,27 +1,29 @@ -{ stdenv, lib, fetchurl, pkgconfig, autoreconfHook -, boost, libsodium, czmqpp, libbitcoin }: +{ stdenv, lib, fetchFromGitHub, pkgconfig, autoreconfHook +, boost, libbitcoin, libbitcoin-protocol }: let pname = "libbitcoin-client"; - version = "2.2.0"; + version = "3.4.0"; in stdenv.mkDerivation { name = "${pname}-${version}"; - src = fetchurl { - url = "https://github.com/libbitcoin/libbitcoin-client/archive/v${version}.tar.gz"; - sha256 = "1g79hl6jmf5dam7vq19h4dgdj7gcn19fa7q78vn573mg2rdyal53"; + src = fetchFromGitHub { + owner = "libbitcoin"; + repo = pname; + rev = "v${version}"; + sha256 = "1vdp6qgpxshh6nhdvr81z3nvh42wgmsm4prli4ajigwp970y8p56"; }; nativeBuildInputs = [ autoreconfHook pkgconfig ]; - buildInputs = [ ]; + propagatedBuildInputs = [ libbitcoin libbitcoin-protocol ]; - propagatedBuildInputs = [ libsodium czmqpp libbitcoin ]; + enableParallelBuilding = true; configureFlags = [ + "--with-tests=no" "--with-boost=${boost.dev}" "--with-boost-libdir=${boost.out}/lib" - "--with-bash-completiondir=$out/share/bash-completion/completions" ]; meta = with stdenv.lib; { @@ -30,8 +32,7 @@ in stdenv.mkDerivation { platforms = platforms.linux ++ platforms.darwin; maintainers = with maintainers; [ chris-martin ]; - # https://wiki.unsystem.net/en/index.php/Libbitcoin/License - # AGPL with an additional clause + # AGPL with a lesser clause license = licenses.agpl3; }; } diff --git a/pkgs/tools/misc/libbitcoin/libbitcoin-explorer.nix b/pkgs/tools/misc/libbitcoin/libbitcoin-explorer.nix index 7b6da9bdd3ed..e9f4c977779f 100644 --- a/pkgs/tools/misc/libbitcoin/libbitcoin-explorer.nix +++ b/pkgs/tools/misc/libbitcoin/libbitcoin-explorer.nix @@ -1,24 +1,27 @@ -{ stdenv, lib, fetchurl, pkgconfig, autoreconfHook -, boost, libbitcoin-client }: +{ stdenv, lib, fetchFromGitHub, pkgconfig, autoreconfHook +, boost, libbitcoin-client, libbitcoin-network }: let pname = "libbitcoin-explorer"; - version = "2.2.0"; + version = "3.4.0"; in stdenv.mkDerivation { name = "${pname}-${version}"; - src = fetchurl { - url = "https://github.com/libbitcoin/libbitcoin-explorer/archive/v${version}.tar.gz"; - sha256 = "00123vw7rxk0ypdfzk0xwk8q55ll31000mkjqdzl915krsbkbfvp"; + src = fetchFromGitHub { + owner = "libbitcoin"; + repo = pname; + rev = "v${version}"; + sha256 = "0rxiimklzqyp9vswznz9aia71dn6jxm2pxx5ljlhzs5rs583cj00"; }; nativeBuildInputs = [ autoreconfHook pkgconfig ]; - buildInputs = [ ]; + buildInputs = [ libbitcoin-client libbitcoin-network ]; - propagatedBuildInputs = [ libbitcoin-client ]; + enableParallelBuilding = true; configureFlags = [ + "--with-tests=no" "--with-boost=${boost.dev}" "--with-boost-libdir=${boost.out}/lib" "--with-bash-completiondir=$out/share/bash-completion/completions" @@ -28,10 +31,9 @@ in stdenv.mkDerivation { description = "Bitcoin command line tool"; homepage = https://github.com/libbitcoin/libbitcoin-explorer; platforms = platforms.linux ++ platforms.darwin; - maintainers = with maintainers; [ chris-martin ]; + maintainers = with maintainers; [ chris-martin asymmetric ]; - # https://wiki.unsystem.net/en/index.php/Libbitcoin/License - # AGPL with an additional clause + # AGPL with a lesser clause license = licenses.agpl3; }; } diff --git a/pkgs/tools/misc/libbitcoin/libbitcoin-network.nix b/pkgs/tools/misc/libbitcoin/libbitcoin-network.nix new file mode 100644 index 000000000000..11657c03615d --- /dev/null +++ b/pkgs/tools/misc/libbitcoin/libbitcoin-network.nix @@ -0,0 +1,38 @@ +{ stdenv, lib, fetchFromGitHub, pkgconfig, autoreconfHook +, boost, libbitcoin, zeromq }: + +let + pname = "libbitcoin-network"; + version = "3.4.0"; + +in stdenv.mkDerivation { + name = "${pname}-${version}"; + + src = fetchFromGitHub { + owner = "libbitcoin"; + repo = pname; + rev = "v${version}"; + sha256 = "1zlhyh5z0fla1yc6kwkx65ycwgmrcrkvzj8119wbkxy3xhzpwxpv"; + }; + + nativeBuildInputs = [ autoreconfHook pkgconfig ]; + buildInputs = [ libbitcoin zeromq ]; + + enableParallelBuilding = true; + + configureFlags = [ + "--with-tests=no" + "--with-boost=${boost.dev}" + "--with-boost-libdir=${boost.out}/lib" + ]; + + meta = with stdenv.lib; { + description = "Bitcoin P2P Network Library"; + 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/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/tools/misc/libbitcoin/libbitcoin.nix b/pkgs/tools/misc/libbitcoin/libbitcoin.nix index 6d0c7b4e9c95..623f34e8b615 100644 --- a/pkgs/tools/misc/libbitcoin/libbitcoin.nix +++ b/pkgs/tools/misc/libbitcoin/libbitcoin.nix @@ -1,24 +1,28 @@ -{ stdenv, lib, fetchurl, pkgconfig, autoreconfHook -, boost, libsodium, czmqpp, secp256k1 }: +{ stdenv, lib, fetchFromGitHub, pkgconfig, autoreconfHook +, boost, secp256k1 }: let pname = "libbitcoin"; - version = "2.11.0"; + version = "3.4.0"; in stdenv.mkDerivation { name = "${pname}-${version}"; - src = fetchurl { - url = "https://github.com/libbitcoin/libbitcoin/archive/v${version}.tar.gz"; - sha256 = "1lpdjm13kgs4fbp579bwfvws8yf9mnr5dw3ph8zxg2gf110h85sy"; + src = fetchFromGitHub { + owner = pname; + repo = pname; + rev = "v${version}"; + sha256 = "1h6h7cxbwkdk8bzbkfvnrrdzajw1d4lr8wqs66is735bksh6gk1y"; }; nativeBuildInputs = [ autoreconfHook pkgconfig ]; - buildInputs = [ ]; propagatedBuildInputs = [ secp256k1 ]; + enableParallelBuilding = true; + configureFlags = [ + "--with-tests=no" "--with-boost=${boost.dev}" "--with-boost-libdir=${boost.out}/lib" ]; @@ -29,8 +33,7 @@ in stdenv.mkDerivation { platforms = platforms.linux ++ platforms.darwin; maintainers = with maintainers; [ chris-martin ]; - # https://wiki.unsystem.net/en/index.php/Libbitcoin/License - # AGPL with an additional clause + # 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 f1a1a9db7cfc..a21822eb688b 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -14027,10 +14027,12 @@ 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-network = callPackage ../tools/misc/libbitcoin/libbitcoin-network.nix { }; libbitcoin-explorer = callPackage ../tools/misc/libbitcoin/libbitcoin-explorer.nix { }; + go-ethereum = self.altcoins.go-ethereum; ethabi = self.altcoins.ethabi; ethrun = self.altcoins.ethrun;