46 lines
969 B
Nix
46 lines
969 B
Nix
# based on: <https://github.com/fort-nix/nix-bitcoin/blob/master/pkgs/python-packages/pyln-proto/default.nix>
|
|
{
|
|
clightning,
|
|
python3,
|
|
stdenv,
|
|
unzip,
|
|
}:
|
|
|
|
stdenv.mkDerivation {
|
|
pname = "pyln-proto";
|
|
format = "pyproject";
|
|
|
|
inherit (clightning) src version;
|
|
|
|
sourceRoot = "clightning-v${clightning.version}/contrib/pyln-proto";
|
|
|
|
# package pins its dependencies too aggressively
|
|
postPatch = ''
|
|
substituteInPlace pyproject.toml \
|
|
--replace-fail 'coincurve = "^18"' 'coincurve = ">=18"' \
|
|
--replace-fail 'cryptography = "^41"' 'cryptography = ">=41"'
|
|
'';
|
|
|
|
nativeBuildInputs = [
|
|
python3.pkgs.poetry-core
|
|
python3.pkgs.pypaBuildHook
|
|
python3.pkgs.pypaInstallHook
|
|
unzip # used by `unpackPhase`
|
|
];
|
|
|
|
propagatedBuildInputs = with python3.pkgs; [
|
|
bitstring
|
|
cryptography
|
|
coincurve
|
|
base58
|
|
pysocks
|
|
];
|
|
|
|
nativeCheckInputs = [
|
|
python3.pkgs.pytestCheckHook
|
|
];
|
|
|
|
doCheck = true;
|
|
strictDeps = true;
|
|
}
|