bitcoin-cash-node.nix 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. { pkgs }:
  2. pkgs.stdenv.mkDerivation rec {
  3. pname = "bitcoin-cash-node";
  4. version = "v28.0.1";
  5. src = fetchGit {
  6. url = "https://gitlab.com/bitcoin-cash-node/bitcoin-cash-node";
  7. # url = /path/to/repo/bitcoin-cash-node-28.0.1;
  8. ref = "refs/tags/${version}";
  9. shallow = true;
  10. };
  11. nativeBuildInputs = [
  12. pkgs.cmake
  13. pkgs.ninja
  14. pkgs.help2man
  15. pkgs.python313
  16. ];
  17. buildInputs = [
  18. pkgs.boost
  19. pkgs.libevent
  20. pkgs.db
  21. pkgs.gmp
  22. pkgs.openssl
  23. pkgs.miniupnpc
  24. pkgs.libnatpmp
  25. pkgs.zeromq
  26. pkgs.zlib
  27. ];
  28. cmakeFlags = [
  29. "-GNinja"
  30. "-DBUILD_BITCOIN_QT=OFF"
  31. "-DVERBOSE_CONFIGURE=ON"
  32. ];
  33. doCheck = false;
  34. postConfigure = ''
  35. chmod ug+x config/run_native_cmake.sh
  36. chmod ug+x src/secp256k1/build_native_gen_context.sh
  37. sed -e 's@/usr/bin/env python3@${pkgs.python3}/bin/python3@' -i ../cmake/utils/gen-ninja-deps.py
  38. sed -e 's@/usr/bin/env bash@${pkgs.bash}/bin/bash@' -i doc/man/gen-doc-man-footer.sh
  39. sed -e 's@/usr/bin/env bash@${pkgs.bash}/bin/bash@' -i doc/man/gen-doc-man.sh
  40. '';
  41. postInstall= ''
  42. rm -f $out/bin/*
  43. install -v --mode=755 src/bitcoind $out/bin/bitcoind-bchn
  44. install -v --mode=755 src/bitcoin-cli $out/bin/bitcoin-cli-bchn
  45. rm -f $out/share/man/man1/bitcoin-{tx,seeder}*
  46. mv $out/share/man/man1/bitcoind.1 $out/share/man/man1/bitcoind-bchn.1
  47. mv $out/share/man/man1/bitcoin-cli.1 $out/share/man/man1/bitcoin-cli-bchn.1
  48. '';
  49. }