2021-01-15 13:21:58 +00:00
|
|
|
{ lib, stdenv, mkDerivation, fetchFromGitHub
|
2021-01-19 06:50:56 +00:00
|
|
|
, pkg-config, autoreconfHook
|
2014-11-30 13:13:47 +00:00
|
|
|
, openssl, db48, boost, zlib, miniupnpc
|
2020-11-24 15:29:28 +00:00
|
|
|
, glib, protobuf, util-linux, qrencode
|
2018-09-12 19:50:33 +00:00
|
|
|
, AppKit
|
|
|
|
, withGui ? true, libevent
|
2020-01-27 09:20:28 +00:00
|
|
|
, qtbase, qttools
|
2020-01-27 09:22:31 +00:00
|
|
|
, zeromq
|
2022-08-10 13:19:41 +00:00
|
|
|
, fmt
|
2018-09-12 19:50:33 +00:00
|
|
|
}:
|
2014-11-30 13:13:47 +00:00
|
|
|
|
2020-01-27 09:20:28 +00:00
|
|
|
mkDerivation rec {
|
2023-01-21 22:06:40 +00:00
|
|
|
pname = "litecoin" + lib.optionalString (!withGui) "d";
|
2023-03-06 03:34:02 +00:00
|
|
|
version = "0.21.2.2";
|
2014-11-30 13:13:47 +00:00
|
|
|
|
2017-03-07 20:47:59 +00:00
|
|
|
src = fetchFromGitHub {
|
|
|
|
owner = "litecoin-project";
|
|
|
|
repo = "litecoin";
|
|
|
|
rev = "v${version}";
|
2023-03-06 03:34:02 +00:00
|
|
|
sha256 = "sha256-TuDc47TZOEQA5Lr4DQkEhnO/Szp9h71xPjaBL3jFWuM=";
|
2014-11-30 13:13:47 +00:00
|
|
|
};
|
|
|
|
|
2021-01-19 06:50:56 +00:00
|
|
|
nativeBuildInputs = [ pkg-config autoreconfHook ];
|
2022-08-10 13:19:41 +00:00
|
|
|
buildInputs = [ openssl db48 boost zlib zeromq fmt
|
2020-11-24 15:29:28 +00:00
|
|
|
miniupnpc glib protobuf util-linux libevent ]
|
2023-01-21 22:06:40 +00:00
|
|
|
++ lib.optionals stdenv.isDarwin [ AppKit ]
|
|
|
|
++ lib.optionals withGui [ qtbase qttools qrencode ];
|
2014-11-30 13:13:47 +00:00
|
|
|
|
2016-04-27 21:41:28 +00:00
|
|
|
configureFlags = [ "--with-boost-libdir=${boost.out}/lib" ]
|
2023-01-21 22:06:40 +00:00
|
|
|
++ lib.optionals withGui [
|
2020-01-27 09:20:28 +00:00
|
|
|
"--with-gui=qt5"
|
|
|
|
"--with-qt-bindir=${qtbase.dev}/bin:${qttools.dev}/bin" ];
|
2014-11-30 13:13:47 +00:00
|
|
|
|
2018-09-25 13:10:18 +00:00
|
|
|
enableParallelBuilding = true;
|
|
|
|
|
2022-08-10 13:19:41 +00:00
|
|
|
doCheck = true;
|
|
|
|
checkPhase = ''
|
|
|
|
./src/test/test_litecoin
|
|
|
|
'';
|
|
|
|
|
2023-01-21 22:06:40 +00:00
|
|
|
meta = with lib; {
|
2022-05-29 09:37:28 +00:00
|
|
|
broken = (stdenv.isLinux && stdenv.isAarch64) || stdenv.isDarwin;
|
2014-11-30 13:13:47 +00:00
|
|
|
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.
|
|
|
|
'';
|
2020-04-01 01:11:51 +00:00
|
|
|
homepage = "https://litecoin.org/";
|
2014-11-30 13:13:47 +00:00
|
|
|
platforms = platforms.unix;
|
|
|
|
license = licenses.mit;
|
2020-09-22 06:24:36 +00:00
|
|
|
maintainers = with maintainers; [ offline ];
|
2014-11-30 13:13:47 +00:00
|
|
|
};
|
|
|
|
}
|