59 lines
1.9 KiB
Nix
59 lines
1.9 KiB
Nix
{ lib, stdenv , fetchFromGitHub
|
|
, pkg-config, autoreconfHook
|
|
, db5, openssl, boost, zlib, miniupnpc, libevent
|
|
, protobuf, qtbase ? null
|
|
, wrapQtAppsHook ? null, qttools, qmake ? null, qrencode
|
|
, withGui, withUpnp ? true, withUtils ? true, withWallet ? true
|
|
, withZmq ? true, zeromq, util-linux ? null, Cocoa ? null }:
|
|
|
|
with lib;
|
|
stdenv.mkDerivation rec {
|
|
pname = "dogecoin" + optionalString (!withGui) "d";
|
|
version = "1.14.6";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "dogecoin";
|
|
repo = "dogecoin";
|
|
rev = "v${version}";
|
|
sha256 = "sha256-PmbmmA2Mq07dwB3cI7A9c/ewtu0I+sWvQT39Yekm/sU=";
|
|
};
|
|
|
|
preConfigure = optionalString withGui ''
|
|
export LRELEASE=${getDev qttools}/bin/lrelease
|
|
'';
|
|
|
|
nativeBuildInputs = [ pkg-config autoreconfHook util-linux ]
|
|
++ optionals withGui [ wrapQtAppsHook qttools ];
|
|
|
|
buildInputs = [ openssl protobuf boost zlib libevent ]
|
|
++ optionals withGui [ qtbase qrencode ]
|
|
++ optionals withUpnp [ miniupnpc ]
|
|
++ optionals withWallet [ db5 ]
|
|
++ optionals withZmq [ zeromq ]
|
|
++ optionals stdenv.isDarwin [ Cocoa ];
|
|
|
|
configureFlags = [
|
|
"--with-incompatible-bdb"
|
|
"--with-boost-libdir=${boost.out}/lib"
|
|
] ++ optionals (!withGui) [ "--with-gui=no" ]
|
|
++ optionals (!withUpnp) [ "--without-miniupnpc" ]
|
|
++ optionals (!withUtils) [ "--without-utils" ]
|
|
++ optionals (!withWallet) [ "--disable-wallet" ]
|
|
++ optionals (!withZmq) [ "--disable-zmq" ];
|
|
|
|
enableParallelBuilding = true;
|
|
|
|
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 = "https://www.dogecoin.com/";
|
|
license = licenses.mit;
|
|
maintainers = with maintainers; [ edwtjo offline ];
|
|
platforms = platforms.unix;
|
|
};
|
|
}
|