summary refs log tree commit diff
path: root/pkgs/applications/blockchains/pivx/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/applications/blockchains/pivx/default.nix')
-rw-r--r--pkgs/applications/blockchains/pivx/default.nix59
1 files changed, 59 insertions, 0 deletions
diff --git a/pkgs/applications/blockchains/pivx/default.nix b/pkgs/applications/blockchains/pivx/default.nix
new file mode 100644
index 00000000000..58986a10676
--- /dev/null
+++ b/pkgs/applications/blockchains/pivx/default.nix
@@ -0,0 +1,59 @@
+{ fetchFromGitHub, lib, stdenv, pkg-config, autoreconfHook, wrapQtAppsHook ? null
+, openssl, db48, boost, zlib, miniupnpc, gmp
+, qrencode, glib, protobuf, yasm, libevent
+, util-linux, qtbase ? null, qttools ? null
+, enableUpnp ? false
+, disableWallet ? false
+, disableDaemon ? false
+, withGui ? false }:
+
+with lib;
+stdenv.mkDerivation rec {
+  name = "pivx-${version}";
+  version = "4.1.1";
+
+  src = fetchFromGitHub {
+    owner = "PIVX-Project";
+    repo= "PIVX";
+    rev = "v${version}";
+    sha256 = "03ndk46h6093v8s18d5iffz48zhlshq7jrk6vgpjfs6z2iqgd2sy";
+  };
+
+  nativeBuildInputs = [ pkg-config autoreconfHook ] ++ optionals withGui [ wrapQtAppsHook ];
+  buildInputs = [ glib gmp openssl db48 yasm boost zlib libevent miniupnpc protobuf util-linux ]
+                  ++ optionals withGui [ qtbase qttools qrencode ];
+
+  configureFlags = [ "--with-boost-libdir=${boost.out}/lib" ]
+                    ++ optional enableUpnp "--enable-upnp-default"
+                    ++ optional disableWallet "--disable-wallet"
+                    ++ optional disableDaemon "--disable-daemon"
+                    ++ optionals withGui [ "--with-gui=yes"
+                                           "--with-qt-bindir=${qtbase.dev}/bin:${qttools.dev}/bin"
+                                         ];
+
+  enableParallelBuilding = true;
+  doChecks = true;
+  postBuild = ''
+    mkdir -p $out/share/applications $out/share/icons
+    cp contrib/debian/pivx-qt.desktop $out/share/applications/
+    cp share/pixmaps/*128.png $out/share/icons/
+  '';
+
+  doInstallCheck = true;
+  installCheckPhase = ''
+    $out/bin/test_pivx
+  '';
+
+  meta = with lib; {
+    description = "An open source crypto-currency focused on fast private transactions";
+    longDescription = ''
+      PIVX is an MIT licensed, open source, blockchain-based cryptocurrency with
+      ultra fast transactions, low fees, high network decentralization, and
+      Zero Knowledge cryptography proofs for industry-leading transaction anonymity.
+    '';
+    license = licenses.mit;
+    homepage = "https://pivx.org";
+    maintainers = with maintainers; [ wucke13 ];
+    platforms = platforms.unix;
+  };
+}