forked from mirrors/nixpkgs
merge #5333: altcoins: a new category of applications
Conflicts (openssl override moved to pkgs/applications/altcoins/default.nix): pkgs/top-level/all-packages.nix
This commit is contained in:
commit
7d129a88a5
36
pkgs/applications/altcoins/bitcoin.nix
Normal file
36
pkgs/applications/altcoins/bitcoin.nix
Normal file
|
@ -0,0 +1,36 @@
|
|||
{ stdenv, fetchurl, pkgconfig, autoreconfHook, openssl, db48, boost
|
||||
, zlib, miniupnpc, qt4, utillinux, protobuf, qrencode
|
||||
, withGui }:
|
||||
|
||||
with stdenv.lib;
|
||||
stdenv.mkDerivation rec{
|
||||
|
||||
name = "bitcoin" + (toString (optional (!withGui) "d")) + "-" + version;
|
||||
version = "0.9.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/bitcoin/bitcoin/archive/v${version}.tar.gz";
|
||||
sha256 = "0a6lkfzsmqqcbz2cc0cg8dccd990b5y7qi8mw358fhfb4f1jxn9y";
|
||||
};
|
||||
|
||||
buildInputs = [ pkgconfig autoreconfHook openssl db48 boost zlib
|
||||
miniupnpc utillinux protobuf ]
|
||||
++ optionals withGui [ qt4 qrencode ];
|
||||
|
||||
configureFlags = [ "--with-boost-libdir=${boost.lib}/lib" ]
|
||||
++ optionals withGui [ "--with-gui=qt4" ];
|
||||
|
||||
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/";
|
||||
maintainers = with maintainers; [ roconnor AndersonTorres ];
|
||||
license = licenses.mit;
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
40
pkgs/applications/altcoins/darkcoin.nix
Normal file
40
pkgs/applications/altcoins/darkcoin.nix
Normal file
|
@ -0,0 +1,40 @@
|
|||
{ fetchurl, stdenv, pkgconfig
|
||||
, openssl, db48, boost, zlib, miniupnpc, qt4, qrencode, glib, protobuf
|
||||
, utillinux
|
||||
, withGui }:
|
||||
|
||||
with stdenv.lib;
|
||||
stdenv.mkDerivation rec {
|
||||
|
||||
name = "darkcoin" + (toString (optional (!withGui) "d")) + "-" + version;
|
||||
version = "0.10.99.99";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/darkcoin/darkcoin/archive/v${version}.tar.gz";
|
||||
sha256 = "1a05a7l878klg4wqk9ykndkhyknrd7jp75v38k99qgk5fi8wa752";
|
||||
};
|
||||
|
||||
buildInputs = [ pkgconfig glib openssl db48 boost zlib miniupnpc ]
|
||||
++ optionals withGui [ qt4 qrencode ];
|
||||
|
||||
configurePhase = optional withGui "qmake";
|
||||
|
||||
preBuild = optional (!withGui) "cd src; cp makefile.unix Makefile";
|
||||
|
||||
installPhase =
|
||||
if withGui
|
||||
then "install -D darkcoin-qt $out/bin/darkcoin-qt"
|
||||
else "install -D darkcoind $out/bin/darkcoind";
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A decentralized key/value registration and transfer system";
|
||||
longDescription = ''
|
||||
Darkcoin (DRK) is an open sourced, privacy-centric digital
|
||||
currency. It allows you keep your finances private as you make
|
||||
transactions, similar to cash.
|
||||
'';
|
||||
homepage = http://darkcoin.io;
|
||||
maintainers = with maintainers; [ AndersonTorres ];
|
||||
platforms = with platforms; unix;
|
||||
};
|
||||
}
|
22
pkgs/applications/altcoins/default.nix
Normal file
22
pkgs/applications/altcoins/default.nix
Normal file
|
@ -0,0 +1,22 @@
|
|||
{ callPackage, pkgs }:
|
||||
|
||||
rec {
|
||||
|
||||
bitcoin = callPackage ./bitcoin.nix { openssl = pkgs.openssl_1_0_1j; withGui = true; };
|
||||
bitcoind = callPackage ./bitcoin.nix { openssl = pkgs.openssl_1_0_1j; withGui = false; };
|
||||
|
||||
darkcoin = callPackage ./darkcoin.nix { withGui = true; };
|
||||
darkcoind = callPackage ./darkcoin.nix { withGui = false; };
|
||||
|
||||
dogecoin = callPackage ./dogecoin.nix { withGui = true; };
|
||||
dogecoind = callPackage ./dogecoin.nix { withGui = false; };
|
||||
|
||||
litecoin = callPackage ./litecoin.nix { withGui = true; };
|
||||
litecoind = callPackage ./litecoin.nix { withGui = false; };
|
||||
|
||||
memorycoin = callPackage ./memorycoin.nix { withGui = true; };
|
||||
memorycoind = callPackage ./memorycoin.nix { withGui = false; };
|
||||
|
||||
namecoin = callPackage ./namecoin.nix { inherit namecoind; };
|
||||
namecoind = callPackage ./namecoind.nix { };
|
||||
}
|
47
pkgs/applications/altcoins/dogecoin.nix
Normal file
47
pkgs/applications/altcoins/dogecoin.nix
Normal file
|
@ -0,0 +1,47 @@
|
|||
{ stdenv , fetchurl
|
||||
, pkgconfig, autoreconfHook
|
||||
, db5, openssl, boost, zlib, miniupnpc
|
||||
, glib, protobuf, utillinux, qt4, qrencode
|
||||
, withGui }:
|
||||
|
||||
with stdenv.lib;
|
||||
stdenv.mkDerivation rec {
|
||||
|
||||
name = "dogecoin" + (toString (optional (!withGui) "d")) + "-" + version;
|
||||
version = "1.8.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/dogecoin/dogecoin/archive/v${version}.tar.gz";
|
||||
sha256 = "0h3jn400dj6qxl1gd4max7wl30cib2wczf9dd3qnbw42wngpdvx2";
|
||||
};
|
||||
|
||||
buildInputs = [ autoreconfHook pkgconfig openssl
|
||||
db5 openssl utillinux protobuf boost zlib miniupnpc ]
|
||||
++ optionals withGui [ qt4 qrencode ];
|
||||
|
||||
# BSD DB5 location
|
||||
patchPhase = ''
|
||||
sed -i \
|
||||
-e 's,BDB_CPPFLAGS=$,BDB_CPPFLAGS="-I${db5}/include",g' \
|
||||
-e 's,BDB_LIBS=$,BDB_LIBS="-L${db5}/lib",g' \
|
||||
-e 's,bdbdirlist=$,bdbdirlist="${db5}/include",g' \
|
||||
src/m4/dogecoin_find_bdb51.m4
|
||||
'';
|
||||
|
||||
configureFlags = [ "--with-incompatible-bdb"
|
||||
"--with-boost-libdir=${boost.lib}/lib" ]
|
||||
++ optionals withGui [ "--with-gui" ];
|
||||
|
||||
meta = {
|
||||
description = "Wow, such coin, much shiba, very rich";
|
||||
longDescription = ''
|
||||
Dogecoin is a decentralized, peer-to-peer digital currency that
|
||||
enables you to easily send money online. Think of it as "the
|
||||
internet currency."
|
||||
It is named after a famous Internet meme, the "Doge" - a Shiba Inu dog.
|
||||
'';
|
||||
homepage = http://www.dogecoin.com/;
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ edwtjo offline AndersonTorres ];
|
||||
};
|
||||
}
|
41
pkgs/applications/altcoins/litecoin.nix
Normal file
41
pkgs/applications/altcoins/litecoin.nix
Normal file
|
@ -0,0 +1,41 @@
|
|||
{ stdenv, fetchurl
|
||||
, pkgconfig, autoreconfHook
|
||||
, openssl, db48, boost, zlib, miniupnpc
|
||||
, glib, protobuf, utillinux, qt4, qrencode
|
||||
, withGui }:
|
||||
|
||||
with stdenv.lib;
|
||||
stdenv.mkDerivation rec {
|
||||
|
||||
name = "litecoin" + (toString (optional (!withGui) "d")) + "-" + version;
|
||||
version = "0.9.3-preview5";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/litecoin-project/litecoin/archive/v${version}.tar.gz";
|
||||
sha256 = "0nnfz4s2g28jb5fqy6cabsryp3h2amzlyslr6g6k8r1vmzvx5ym6";
|
||||
};
|
||||
|
||||
buildInputs = [ pkgconfig autoreconfHook openssl
|
||||
openssl db48 boost zlib miniupnpc glib protobuf utillinux ]
|
||||
++ optionals withGui [ qt4 qrencode ];
|
||||
|
||||
configureFlags = [ "--with-boost-libdir=${boost.lib}/lib" ]
|
||||
++ optionals withGui [ "--with-gui=qt4" ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A lite version of Bitcoin using scrypt as a proof-of-work algorithm";
|
||||
longDescription= ''
|
||||
Litecoin is a peer-to-peer Internet currency that enables instant payments
|
||||
to anyone in the world. It is based on the Bitcoin protocol but differs
|
||||
from Bitcoin in that it can be efficiently mined with consumer-grade hardware.
|
||||
Litecoin provides faster transaction confirmations (2.5 minutes on average)
|
||||
and uses a memory-hard, scrypt-based mining proof-of-work algorithm to target
|
||||
the regular computers and GPUs most people already have.
|
||||
The Litecoin network is scheduled to produce 84 million currency units.
|
||||
'';
|
||||
homepage = https://litecoin.org/;
|
||||
platforms = platforms.unix;
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ offline AndersonTorres ];
|
||||
};
|
||||
}
|
50
pkgs/applications/altcoins/memorycoin.nix
Normal file
50
pkgs/applications/altcoins/memorycoin.nix
Normal file
|
@ -0,0 +1,50 @@
|
|||
{ stdenv, fetchurl, pkgconfig, openssl, db48, boost
|
||||
, zlib, miniupnpc, qt4, utillinux, protobuf, qrencode
|
||||
, withGui }:
|
||||
|
||||
with stdenv.lib;
|
||||
stdenv.mkDerivation rec{
|
||||
|
||||
name = "memorycoin" + (toString (optional (!withGui) "d")) + "-" + version;
|
||||
version = "0.8.5";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/memorycoin/memorycoin/archive/v${version}.tar.gz";
|
||||
sha256 = "1iyh6dqrg0mirwci5br5n5qw3ghp2cs23wd8ygr56bh9ml4dr1m8";
|
||||
};
|
||||
|
||||
buildInputs = [ pkgconfig openssl db48 boost zlib
|
||||
miniupnpc utillinux protobuf ]
|
||||
++ optionals withGui [ qt4 qrencode ];
|
||||
|
||||
configureFlags = [ "--with-boost-libdir=${boost.lib}/lib" ]
|
||||
++ optionals withGui [ "--with-gui=qt4" ];
|
||||
|
||||
configurePhase = optional withGui "qmake";
|
||||
|
||||
preBuild = optional (!withGui) "cd src; cp makefile.unix Makefile";
|
||||
|
||||
installPhase =
|
||||
if withGui
|
||||
then "install -D bitcoin-qt $out/bin/memorycoin-qt"
|
||||
else "install -D bitcoind $out/bin/memorycoind";
|
||||
|
||||
meta = {
|
||||
description = "Peer-to-peer, CPU-based electronic cash system";
|
||||
longDescription= ''
|
||||
Memorycoin is a cryptocurrency that aims to empower the
|
||||
economically and financially marginalized. It allows individuals
|
||||
to participate in the internet economy even when they live in
|
||||
countries where credit card companies and PayPal(R) refuse to
|
||||
operate. Individuals can store and transfer wealth with just a
|
||||
memorized pass phrase.
|
||||
|
||||
Memorycoin is based on the Bitcoin code, but with some key
|
||||
differences.
|
||||
'';
|
||||
homepage = "http://www.bitcoin.org/";
|
||||
maintainers = with maintainers; [ AndersonTorres ];
|
||||
license = licenses.mit;
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
26
pkgs/applications/altcoins/namecoin.nix
Normal file
26
pkgs/applications/altcoins/namecoin.nix
Normal file
|
@ -0,0 +1,26 @@
|
|||
{ stdenv, db4, boost, openssl, qt4, miniupnpc, unzip, namecoind }:
|
||||
|
||||
with stdenv.lib;
|
||||
stdenv.mkDerivation rec {
|
||||
|
||||
name = "namecoin-${version}";
|
||||
version = namecoind.version;
|
||||
src = namecoind.src;
|
||||
|
||||
buildInputs = [ db4 boost openssl unzip qt4 miniupnpc ];
|
||||
|
||||
configurePhase = ''
|
||||
qmake USE_UPNP=-
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
make
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
cp namecoin-qt $out/bin
|
||||
'';
|
||||
|
||||
meta = namecoind.meta;
|
||||
}
|
35
pkgs/applications/altcoins/namecoind.nix
Normal file
35
pkgs/applications/altcoins/namecoind.nix
Normal file
|
@ -0,0 +1,35 @@
|
|||
{ stdenv, fetchurl, db4, boost, openssl, miniupnpc, unzip }:
|
||||
|
||||
with stdenv.lib;
|
||||
stdenv.mkDerivation rec {
|
||||
version = "0.3.80";
|
||||
name = "namecoind-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/namecoin/namecoin/archive/nc${version}.tar.gz";
|
||||
sha256 = "1755mqxpg91wg9hf0ibpj59sdzfmhh73yrpi7hfi2ipabkwmlpiz";
|
||||
};
|
||||
|
||||
buildInputs = [ db4 boost openssl unzip miniupnpc ];
|
||||
|
||||
patchPhase = ''
|
||||
sed -e 's/-Wl,-Bstatic//g' -e 's/-l gthread-2.0//g' -e 's/-l z//g' -i src/Makefile
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
make -C src INCLUDEPATHS= LIBPATHS=
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
cp src/namecoind $out/bin
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Decentralized open source information registration and transfer system based on the Bitcoin cryptocurrency";
|
||||
homepage = http://namecoin.info;
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ doublec AndersonTorres ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
|
@ -1,82 +0,0 @@
|
|||
{ fetchurl, stdenv, pkgconfig
|
||||
, openssl, db48, boost, zlib, miniupnpc, qt4, qrencode, glib, protobuf
|
||||
, utillinux, autogen, autoconf, autobuild, automake, autoreconfHook, db }:
|
||||
|
||||
with stdenv.lib;
|
||||
|
||||
let
|
||||
buildAltcoin = makeOverridable ({walletName, gui ? true, ...}@a:
|
||||
stdenv.mkDerivation ({
|
||||
name = "${walletName}${toString (optional (!gui) "d")}-${a.version}";
|
||||
buildInputs = [ pkgconfig openssl db48 boost zlib miniupnpc ]
|
||||
++ optionals gui [ qt4 qrencode ] ++ a.extraBuildInputs or [];
|
||||
|
||||
configurePhase = optional gui "qmake";
|
||||
|
||||
preBuild = optional (!gui) "cd src";
|
||||
makefile = optional (!gui) "makefile.unix";
|
||||
|
||||
installPhase = if gui then ''
|
||||
install -D "${walletName}-qt" "$out/bin/${walletName}-qt"
|
||||
'' else ''
|
||||
install -D "${walletName}d" "$out/bin/${walletName}d"
|
||||
'';
|
||||
|
||||
passthru.walletName = walletName;
|
||||
|
||||
meta = {
|
||||
platforms = platforms.unix;
|
||||
license = license.mit;
|
||||
maintainers = [ maintainers.offline ] ++ a.extraMaintainers;
|
||||
};
|
||||
} // a)
|
||||
);
|
||||
|
||||
in rec {
|
||||
inherit buildAltcoin;
|
||||
|
||||
namecoin = buildAltcoin rec {
|
||||
walletName = "namecoin";
|
||||
version = "0.3.51.00";
|
||||
gui = false;
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/namecoin/namecoin/archive/nc${version}.tar.gz";
|
||||
sha256 = "0r6zjzichfjzhvpdy501gwy9h3zvlla3kbgb38z1pzaa0ld9siyx";
|
||||
};
|
||||
|
||||
patches = [ ./namecoin_dynamic.patch ];
|
||||
|
||||
extraBuildInputs = [ glib ];
|
||||
|
||||
meta = {
|
||||
description = "A decentralized key/value registration and transfer system based on Bitcoin technology";
|
||||
homepage = http://namecoin.info;
|
||||
};
|
||||
};
|
||||
|
||||
darkcoin = buildAltcoin rec {
|
||||
walletName = "darkcoin";
|
||||
version = "0.9.13.15";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/darkcoin/darkcoin/archive/v${version}.tar.gz";
|
||||
sha256 = "1kly2y3g4dr1jwwf81smqvc7k662x6rvg4ggmxva1yaifb67bgjb";
|
||||
};
|
||||
|
||||
extraBuildInputs = [ glib ];
|
||||
|
||||
meta = {
|
||||
description = "A decentralized key/value registration and transfer system";
|
||||
longDescription = ''
|
||||
Darkcoin (DRK) is an open sourced, privacy-centric digital
|
||||
currency. It allows you keep your finances private as you make
|
||||
transactions, similar to cash.
|
||||
'';
|
||||
homepage = http://darkcoin.io;
|
||||
extraMaintainers = [ maintainers.AndersonTorres ];
|
||||
};
|
||||
};
|
||||
darkcoind = darkcoin.override { gui = false; };
|
||||
|
||||
}
|
|
@ -1,52 +0,0 @@
|
|||
{ fetchurl, stdenv, openssl, db48, boost, zlib, miniupnpc, qt4, utillinux
|
||||
, pkgconfig, protobuf, qrencode, gui ? true }:
|
||||
|
||||
with stdenv.lib;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "0.9.3";
|
||||
name = "bitcoin${toString (optional (!gui) "d")}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://bitcoin.org/bin/${version}/bitcoin-${version}-linux.tar.gz";
|
||||
sha256 = "1kb59w7232qzfh952rz6vvjri2w26n9cq7baml0vifdsdhxph9f4";
|
||||
};
|
||||
|
||||
# hexdump from utillinux is required for tests
|
||||
buildInputs = [
|
||||
openssl db48 boost zlib miniupnpc utillinux pkgconfig protobuf
|
||||
] ++ optionals gui [ qt4 qrencode ];
|
||||
|
||||
unpackPhase = ''
|
||||
mkdir tmp-extract && (cd tmp-extract && tar xf $src)
|
||||
tar xf tmp-extract/bitcoin*/src/bitcoin*.tar*
|
||||
cd bitcoin*
|
||||
'';
|
||||
|
||||
preCheck = ''
|
||||
# At least one test requires writing in $HOME
|
||||
HOME=$TMPDIR
|
||||
'';
|
||||
|
||||
configureFlags = [ "--with-boost-libdir=${boost.lib}/lib" ];
|
||||
|
||||
doCheck = true;
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
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/";
|
||||
maintainers = [ maintainers.roconnor ];
|
||||
license = licenses.mit;
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
|
@ -1,70 +0,0 @@
|
|||
{ fetchurl, stdenv, pkgconfig
|
||||
, openssl, boost, zlib, miniupnpc, qt4, qrencode, glib, protobuf
|
||||
, utillinux, autogen, autoconf, autobuild, automake, db }:
|
||||
|
||||
with stdenv.lib;
|
||||
|
||||
let
|
||||
|
||||
mkAutotoolCoin =
|
||||
{ name, version, withGui, src, meta }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
inherit src meta;
|
||||
|
||||
name = name + (toString (optional (!withGui) "d")) + "-" + version;
|
||||
|
||||
buildInputs = [ autogen autoconf automake pkgconfig openssl
|
||||
boost zlib miniupnpc db utillinux protobuf ]
|
||||
++ optionals withGui [ qt4 qrencode ];
|
||||
|
||||
patchPhase = ''
|
||||
sed -i \
|
||||
-e 's,BDB_CPPFLAGS=$,BDB_CPPFLAGS="-I${db}/include",g' \
|
||||
-e 's,BDB_LIBS=$,BDB_LIBS="-L${db}/lib",g' \
|
||||
-e 's,bdbdirlist=$,bdbdirlist="${db}/include",g' \
|
||||
src/m4/dogecoin_find_bdb51.m4
|
||||
'';
|
||||
|
||||
configurePhase = ''
|
||||
./autogen.sh \
|
||||
&& ./configure --prefix=$out \
|
||||
--with-incompatible-bdb \
|
||||
${ if withGui then "--with-gui" else "" }
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
install -D "src/dogecoin-cli" "$out/bin/dogecoin-cli"
|
||||
install -D "src/dogecoind" "$out/bin/dogecoind"
|
||||
${ if withGui then "install -D src/qt/dogecoin-qt $out/bin/dogecoin-qt" else "" }
|
||||
'';
|
||||
|
||||
};
|
||||
|
||||
mkDogeCoin = { withGui }:
|
||||
|
||||
mkAutotoolCoin rec {
|
||||
name = "dogecoin";
|
||||
version = "1.8.0";
|
||||
inherit withGui;
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/dogecoin/dogecoin/archive/v${version}.tar.gz";
|
||||
sha256 = "8a33958c04213cd621aa3c86910477813af22512f03b47c98995d20d31f3f935";
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Wow, such coin, much shiba, very rich";
|
||||
longDescription = "wow";
|
||||
homepage = http://www.dogecoin.com/;
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ edwtjo offline ];
|
||||
};
|
||||
};
|
||||
|
||||
in {
|
||||
|
||||
dogecoin = mkDogeCoin { withGui = true; };
|
||||
dogecoind = mkDogeCoin { withGui = false; };
|
||||
|
||||
}
|
|
@ -1,60 +0,0 @@
|
|||
{ stdenv, fetchurl, pkgconfig
|
||||
, openssl, db48, boost, zlib, miniupnpc, qt4, qrencode, glib, protobuf
|
||||
, utillinux, autogen, autoreconfHook }:
|
||||
|
||||
with stdenv.lib;
|
||||
|
||||
let
|
||||
mkAutoreconfCoin =
|
||||
{ name, version, withGui, src, meta }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
|
||||
inherit src meta;
|
||||
|
||||
name = name + (toString (optional (!withGui) "d")) + "-" + version;
|
||||
|
||||
buildInputs = [ autogen autoreconfHook pkgconfig openssl
|
||||
boost zlib miniupnpc db48 glib utillinux protobuf ]
|
||||
++ optionals withGui [ qt4 qrencode protobuf ];
|
||||
|
||||
configureFlags = [ "--with-boost-libdir=${boost.lib}/lib" ] ++ optionals withGui [ "--with-gui=qt4" ];
|
||||
};
|
||||
|
||||
mkLitecoin = { withGui }:
|
||||
|
||||
mkAutoreconfCoin rec {
|
||||
|
||||
name = "litecoin";
|
||||
version = "0.9.3-preview5";
|
||||
inherit withGui;
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/litecoin-project/litecoin/archive/v${version}.tar.gz";
|
||||
sha256 = "0nnfz4s2g28jb5fqy6cabsryp3h2amzlyslr6g6k8r1vmzvx5ym6";
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A lite version of Bitcoin using scrypt as a proof-of-work algorithm";
|
||||
longDescription= ''
|
||||
Litecoin is a peer-to-peer Internet currency that enables instant payments
|
||||
to anyone in the world. It is based on the Bitcoin protocol but differs
|
||||
from Bitcoin in that it can be efficiently mined with consumer-grade hardware.
|
||||
Litecoin provides faster transaction confirmations (2.5 minutes on average)
|
||||
and uses a memory-hard, scrypt-based mining proof-of-work algorithm to target
|
||||
the regular computers and GPUs most people already have.
|
||||
The Litecoin network is scheduled to produce 84 million currency units.
|
||||
'';
|
||||
homepage = https://litecoin.org/;
|
||||
platforms = platforms.unix;
|
||||
license = licenses.mit;
|
||||
maintainers = [ maintainers.offline maintainers.AndersonTorres ];
|
||||
};
|
||||
};
|
||||
|
||||
in {
|
||||
|
||||
litecoin = mkLitecoin { withGui = true; };
|
||||
litecoind = mkLitecoin { withGui = false; };
|
||||
|
||||
}
|
|
@ -1,11 +0,0 @@
|
|||
diff -u -r a/src/makefile.unix b/src/makefile.unix
|
||||
--- a/src/makefile.unix 2014-01-22 22:07:59.801601964 -0800
|
||||
+++ b/src/makefile.unix 2014-01-22 22:08:07.980332839 -0800
|
||||
@@ -12,7 +12,6 @@
|
||||
|
||||
# for boost 1.37, add -mt to the boost libraries
|
||||
LIBS= \
|
||||
- -Wl,-Bstatic \
|
||||
-l boost_system \
|
||||
-l boost_filesystem \
|
||||
-l boost_program_options \
|
|
@ -1,37 +0,0 @@
|
|||
{ fetchgit, stdenv, db4, boost, openssl, unzip }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "0.3.76";
|
||||
name = "namecoin-${version}";
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://github.com/namecoin/namecoin";
|
||||
rev = "224175ca3bba6eea6f6b1bdb007b482eb2bd2aee";
|
||||
sha256 = "3ccfb6fdda1b9d105e775eb19c696be7fec1b3671f9b4f43d02fa14a4c6848dd";
|
||||
};
|
||||
|
||||
# Don't build with miniupnpc due to namecoin using a different verison that
|
||||
# ships with NixOS and it is API incompatible.
|
||||
buildInputs = [ db4 boost openssl unzip ];
|
||||
|
||||
patchPhase = ''
|
||||
sed -e 's/-Wl,-Bstatic//g' -e 's/-l gthread-2.0//g' -e 's/-l z//g' -i src/Makefile
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
make -C src INCLUDEPATHS= LIBPATHS=
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
cp src/namecoind $out/bin
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Decentralized open source information registration and transfer system based on the Bitcoin cryptocurrency";
|
||||
homepage = "http://namecoin.info";
|
||||
license = stdenv.lib.licenses.mit;
|
||||
maintainers = [ stdenv.lib.maintainers.doublec ];
|
||||
platforms = with stdenv.lib.platforms; linux;
|
||||
};
|
||||
}
|
|
@ -1,33 +0,0 @@
|
|||
{ fetchgit, stdenv, db4, boost, openssl, qt4, unzip, namecoin }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = namecoin.version;
|
||||
name = "namecoin-qt-${version}";
|
||||
|
||||
src = namecoin.src;
|
||||
|
||||
# Don't build with miniupnpc due to namecoin using a different verison that
|
||||
# ships with NixOS and it is API incompatible.
|
||||
buildInputs = [ db4 boost openssl unzip qt4 ];
|
||||
|
||||
configurePhase = ''
|
||||
qmake USE_UPNP=-
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
make
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
cp namecoin-qt $out/bin
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Decentralized open source information registration and transfer system based on the Bitcoin cryptocurrency";
|
||||
homepage = "http://namecoin.info";
|
||||
license = stdenv.lib.licenses.mit;
|
||||
maintainers = [ stdenv.lib.maintainers.doublec ];
|
||||
platforms = with stdenv.lib.platforms; linux;
|
||||
};
|
||||
}
|
|
@ -9615,6 +9615,9 @@ let
|
|||
|
||||
schismtracker = callPackage ../applications/audio/schismtracker { };
|
||||
|
||||
altcoins = recurseIntoAttrs ( callPackage ../applications/altcoins { } );
|
||||
bitcoin = altcoins.bitcoin;
|
||||
|
||||
aumix = callPackage ../applications/audio/aumix {
|
||||
gtkGUI = false;
|
||||
};
|
||||
|
@ -9674,15 +9677,6 @@ let
|
|||
|
||||
bibletime = callPackage ../applications/misc/bibletime { };
|
||||
|
||||
bitcoin = callPackage ../applications/misc/bitcoin { openssl = openssl_1_0_1j; };
|
||||
bitcoind = callPackage ../applications/misc/bitcoin { openssl = openssl_1_0_1j; gui = false; };
|
||||
|
||||
altcoins = recurseIntoAttrs (
|
||||
(callPackage ../applications/misc/bitcoin/altcoins.nix {}) //
|
||||
(callPackage ../applications/misc/bitcoin/dogecoin.nix {}) //
|
||||
(callPackage ../applications/misc/bitcoin/litecoin.nix {})
|
||||
);
|
||||
|
||||
bitlbee = callPackage ../applications/networking/instant-messengers/bitlbee { };
|
||||
|
||||
blender = callPackage ../applications/misc/blender {
|
||||
|
@ -10921,9 +10915,6 @@ let
|
|||
withSidebar = true;
|
||||
};
|
||||
|
||||
namecoin = callPackage ../applications/misc/namecoin { };
|
||||
namecoinqt = callPackage ../applications/misc/namecoin/qt.nix { };
|
||||
|
||||
panamax_api = callPackage ../applications/networking/cluster/panamax/api.nix {
|
||||
ruby = ruby_2_1;
|
||||
};
|
||||
|
|
Loading…
Reference in a new issue