nixpkgs/pkgs/applications/blockchains/lnd.nix

41 lines
1.1 KiB
Nix
Raw Normal View History

2021-01-25 22:55:41 +00:00
{ buildGoModule
, fetchFromGitHub
, lib
, tags ? [ "autopilotrpc" "signrpc" "walletrpc" "chainrpc" "invoicesrpc" "watchtowerrpc" ]
}:
2019-07-22 15:19:15 +00:00
buildGoModule rec {
pname = "lnd";
2021-01-25 22:55:41 +00:00
version = "0.12.0-beta";
2019-07-22 15:19:15 +00:00
src = fetchFromGitHub {
owner = "lightningnetwork";
repo = "lnd";
rev = "v${version}";
2021-01-25 22:55:41 +00:00
sha256 = "0mjfmmi5d5d2hny3938rxxdgar3qyk6x909l25fvjr4q3l4sz4x0";
2019-07-22 15:19:15 +00:00
};
2021-01-25 22:55:41 +00:00
vendorSha256 = "00q8dydskzg4rhxnnpzpbmmvc3q4wzm8z3dps2bv0nx3fk0fmrl3";
subPackages = ["cmd/lncli" "cmd/lnd"];
2019-07-22 15:19:15 +00:00
preBuild = let
buildVars = {
RawTags = lib.concatStringsSep "," tags;
GoVersion = "$(go version | egrep -o 'go[0-9]+[.][^ ]*')";
};
buildVarsFlags = lib.concatStringsSep " " (lib.mapAttrsToList (k: v: "-X github.com/lightningnetwork/lnd/build.${k}=${v}") buildVars);
in
lib.optionalString (tags != []) ''
buildFlagsArray+=("-tags=${lib.concatStringsSep " " tags}")
buildFlagsArray+=("-ldflags=${buildVarsFlags}")
'';
meta = with lib; {
2019-07-22 15:19:15 +00:00
description = "Lightning Network Daemon";
homepage = "https://github.com/lightningnetwork/lnd";
2021-01-25 22:55:41 +00:00
license = licenses.mit;
maintainers = with maintainers; [ cypherpunk2140 prusnak ];
2019-07-22 15:19:15 +00:00
};
}