nixpkgs/pkgs/applications/blockchains/clightning.nix

50 lines
1.5 KiB
Nix
Raw Normal View History

{ stdenv, python3, pkgconfig, which, libtool, autoconf, automake,
autogen, sqlite, gmp, zlib, fetchurl, unzip, fetchpatch }:
with stdenv.lib;
stdenv.mkDerivation rec {
pname = "clightning";
2019-08-30 14:34:39 +02:00
version = "0.7.2.1";
src = fetchurl {
url = "https://github.com/ElementsProject/lightning/releases/download/v${version}/clightning-v${version}.zip";
2019-08-30 14:34:39 +02:00
sha256 = "3be716948efc1208b5e6a41e3034e4e4eecc5abbdac769fd1d999a104ac3a2ec";
};
enableParallelBuilding = true;
nativeBuildInputs = [ autoconf autogen automake libtool pkgconfig which unzip ];
2019-08-30 14:34:39 +02:00
buildInputs =
let py3 = python3.withPackages (p: [ p.Mako ]);
in [ sqlite gmp zlib py3 ];
clightning: 0.6.2 -> 0.6.3 [0.6.3] - 2019-01-09: "The Smallblock Conspiracy" This release named by @molxyz and @ctrlbreak Added - JSON API: New command `check` checks the validity of a JSON API call without running it. - JSON API: `getinfo` now returns `num_peers` `num_pending_channels`, `num_active_channels` and `num_inactive_channels` fields. - JSON API: use `\n\n` to terminate responses, for simplified parsing (pylightning now relies on this) - JSON API: `fundchannel` now includes an `announce` option, when false it will keep channel private. Defaults to true. - JSON API: `listpeers`'s `channels` now includes a `private` flag to indicate if channel is announced or not. - Plugins: experimental plugin support for `lightningd`, including option passthrough and JSON-RPC passthrough. Changed - JSON API: `pay` and `decodepay` accept and ignore `lightning:` prefixes. - pylightning: Allow either keyword arguments or positional arguments. - JSON-RPC: messages are now separated by 2 consecutive newlines. - JSON-RPC: `jsonrpc`:`2.0` now included in json-rpc command calls. complies with spec. Deprecated Note: You should always set `allow-deprecated-apis=false` to test for changes. - pylightning: Support for pre-2-newline JSON-RPC (<= 0.6.2 lightningd) is deprecated. Removed - option_data_loss_protect is now only offered if EXPERIMENTAL_FEATURES is enabled, since it seems incompatible with lnd and has known bugs. Fixed - JSON API: uppercase invoices now parsed correctly (broken in 0.6.2). - JSON API: commands are once again read even if one hasn't responded yet (broken in 0.6.2). - Protocol: allow lnd to send `update_fee` before `funding_locked`. - Protocol: fix limit on how much funder can send (fee was 1000x too small) - Protocol: don't send invalid onion errors if peer says onion was bad. - Protocol: don't crash when peer sends a 0-block-expiry HTLC. - pylightning: handle multiple simultanous RPC replies reliably.
2019-01-09 23:34:19 +01:00
makeFlags = [ "prefix=$(out) VERSION=v${version}" ];
configurePhase = ''
./configure --prefix=$out --disable-developer --disable-valgrind
'';
postPatch = ''
2019-08-30 14:34:39 +02:00
patchShebangs \
tools/generate-wire.py \
tools/update-mocks.sh \
tools/mockup.sh
'';
doCheck = false;
meta = {
description = "A Bitcoin Lightning Network implementation in C";
longDescription= ''
c-lightning is a standard compliant implementation of the Lightning
Network protocol. The Lightning Network is a scalability solution for
Bitcoin, enabling secure and instant transfer of funds between any two
parties for any amount.
'';
homepage = https://github.com/ElementsProject/lightning;
maintainers = with maintainers; [ jb55 ];
license = licenses.mit;
platforms = platforms.linux;
};
}