nixpkgs/pkgs/applications/misc/bitcoin/default.nix

54 lines
1.5 KiB
Nix
Raw Normal View History

2014-04-16 01:22:46 +02:00
{ fetchurl, stdenv, openssl, db48, boost, zlib, miniupnpc, qt4, utillinux
2014-04-17 14:43:05 +02:00
, pkgconfig, protobuf, qrencode, gui ? true }:
with stdenv.lib;
stdenv.mkDerivation rec {
2014-10-06 22:06:56 +02:00
version = "0.9.3";
2014-04-17 14:43:05 +02:00
name = "bitcoin${toString (optional (!gui) "d")}-${version}";
src = fetchurl {
2014-04-17 14:43:05 +02:00
url = "https://bitcoin.org/bin/${version}/bitcoin-${version}-linux.tar.gz";
2014-10-06 22:06:56 +02:00
sha256 = "1kb59w7232qzfh952rz6vvjri2w26n9cq7baml0vifdsdhxph9f4";
};
2014-04-16 01:22:46 +02:00
# hexdump from utillinux is required for tests
buildInputs = [
2014-04-17 14:43:05 +02:00
openssl db48 boost zlib miniupnpc utillinux pkgconfig protobuf
] ++ optionals gui [ qt4 qrencode ];
2014-04-16 01:22:46 +02:00
unpackPhase = ''
mkdir tmp-extract && (cd tmp-extract && tar xf $src)
tar xf tmp-extract/bitcoin*/src/bitcoin*.tar*
cd bitcoin*
'';
2014-04-16 01:22:46 +02:00
configureFlags = [
"--with-boost=${boost}"
];
preCheck = ''
# At least one test requires writing in $HOME
HOME=$TMPDIR
'';
2014-04-16 01:22:46 +02:00
doCheck = true;
enableParallelBuilding = true;
2014-04-17 14:43:05 +02:00
passthru.walletName = "bitcoin";
meta = {
description = "Peer-to-peer electronic cash system";
longDescription= ''
Bitcoin is a free open source peer-to-peer electronic cash system that is
completely decentralized, without the need for a central server or trusted
parties. Users hold the crypto keys to their own money and transact directly
with each other, with the help of a P2P network to check for double-spending.
'';
homepage = "http://www.bitcoin.org/";
2014-04-17 14:43:05 +02:00
maintainers = [ maintainers.roconnor ];
license = licenses.mit;
};
}