2020-07-07 21:48:52 +01:00
|
|
|
{ stdenv, mkDerivation, fetchFromGitHub, pkgconfig, cmake, openssl, db53, boost
|
2017-10-07 16:06:28 +01:00
|
|
|
, zlib, miniupnpc, qtbase ? null , qttools ? null, utillinux, protobuf, qrencode, libevent
|
2020-07-07 21:48:52 +01:00
|
|
|
, withGui, python3, jemalloc, zeromq4 }:
|
2017-09-27 16:32:12 +01:00
|
|
|
|
|
|
|
with stdenv.lib;
|
|
|
|
|
2019-12-02 22:22:03 +00:00
|
|
|
mkDerivation rec {
|
2017-09-27 16:32:12 +01:00
|
|
|
|
|
|
|
name = "bitcoin" + (toString (optional (!withGui) "d")) + "-abc-" + version;
|
2020-07-31 14:54:57 +01:00
|
|
|
version = "0.21.12";
|
2017-09-27 16:32:12 +01:00
|
|
|
|
|
|
|
src = fetchFromGitHub {
|
|
|
|
owner = "bitcoin-ABC";
|
|
|
|
repo = "bitcoin-abc";
|
|
|
|
rev = "v${version}";
|
2020-07-31 14:54:57 +01:00
|
|
|
sha256 = "1mad3aqfwrxi06135nf8hv13d67nilmxpx4dw5vjcy1zi3lljj1j";
|
2017-09-27 16:32:12 +01:00
|
|
|
};
|
|
|
|
|
2017-09-27 23:13:31 +01:00
|
|
|
patches = [ ./fix-bitcoin-qt-build.patch ];
|
|
|
|
|
2020-07-07 21:48:52 +01:00
|
|
|
nativeBuildInputs = [ pkgconfig cmake ];
|
|
|
|
buildInputs = [ openssl db53 boost zlib python3 jemalloc zeromq4
|
2017-09-27 16:32:12 +01:00
|
|
|
miniupnpc utillinux protobuf libevent ]
|
2017-10-03 23:48:58 +01:00
|
|
|
++ optionals withGui [ qtbase qttools qrencode ];
|
2017-09-27 16:32:12 +01:00
|
|
|
|
2020-07-07 21:48:52 +01:00
|
|
|
cmakeFlags = optionals (!withGui) [
|
|
|
|
"-DBUILD_BITCOIN_QT=OFF"
|
|
|
|
];
|
|
|
|
|
|
|
|
# many of the generated scripts lack execute permissions
|
|
|
|
postConfigure = ''
|
|
|
|
find ./. -type f -iname "*.sh" -exec chmod +x {} \;
|
|
|
|
'';
|
2017-09-27 16:32:12 +01:00
|
|
|
|
2018-09-25 13:08:35 +01:00
|
|
|
enableParallelBuilding = true;
|
|
|
|
|
2017-09-27 16:32:12 +01:00
|
|
|
meta = {
|
|
|
|
description = "Peer-to-peer electronic cash system (Cash client)";
|
|
|
|
longDescription= ''
|
|
|
|
Bitcoin ABC is the name of open source software which enables the use of Bitcoin.
|
|
|
|
It is designed to facilite a hard fork to increase Bitcoin's block size limit.
|
|
|
|
"ABC" stands for "Adjustable Blocksize Cap".
|
|
|
|
|
|
|
|
Bitcoin ABC is a fork of the Bitcoin Core software project.
|
|
|
|
'';
|
2020-03-04 01:03:10 +00:00
|
|
|
homepage = "https://bitcoinabc.org/";
|
2017-09-27 16:32:12 +01:00
|
|
|
maintainers = with maintainers; [ lassulus ];
|
|
|
|
license = licenses.mit;
|
2018-09-12 19:55:53 +01:00
|
|
|
broken = stdenv.isDarwin;
|
2017-09-27 16:32:12 +01:00
|
|
|
platforms = platforms.unix;
|
|
|
|
};
|
|
|
|
}
|