diff --git a/pkgs/python-packages/default.nix b/pkgs/python-packages/default.nix index ea6d36a..44d0001 100644 --- a/pkgs/python-packages/default.nix +++ b/pkgs/python-packages/default.nix @@ -19,6 +19,7 @@ in { pyln-client = clightningPkg ./pyln-client; pyln-proto = clightningPkg ./pyln-proto; + pyln-bolt7 = clightningPkg ./pyln-bolt7; pylightning = clightningPkg ./pylightning; ## Specific versions of packages that already exist in nixpkgs diff --git a/pkgs/python-packages/pyln-bolt7/default.nix b/pkgs/python-packages/pyln-bolt7/default.nix new file mode 100644 index 0000000..8433ba0 --- /dev/null +++ b/pkgs/python-packages/pyln-bolt7/default.nix @@ -0,0 +1,22 @@ +{ buildPythonPackage, clightning, pyln-proto }: + +buildPythonPackage rec { + pname = "pyln-bolt7"; + + # See fn `bolt_meta` in + # https://github.com/ElementsProject/lightning/blob/master/contrib/pyln-spec/bolt7/setup.py + version = "1.0.2.186"; + + inherit (clightning) src; + + propagatedBuildInputs = [ pyln-proto ]; + + postUnpack = "sourceRoot=$sourceRoot/contrib/pyln-spec/bolt7"; + + # TODO-EXTERNAL + # Remove when this fix is released + # https://github.com/ElementsProject/lightning/pull/4910 + postPatch = '' + sed -i 's|pyln.proto|pyln-proto|' requirements.txt + ''; +} diff --git a/pkgs/python-packages/pyln-client/default.nix b/pkgs/python-packages/pyln-client/default.nix index a570691..9ca49f8 100644 --- a/pkgs/python-packages/pyln-client/default.nix +++ b/pkgs/python-packages/pyln-client/default.nix @@ -1,12 +1,14 @@ -{ buildPythonPackage, clightning, recommonmark }: +{ buildPythonPackage, clightning, pyln-bolt7, recommonmark, setuptools-scm }: buildPythonPackage rec { pname = "pyln-client"; - version = "0.10.1"; # defined in ${src}/contrib/pyln-client/pyln/client/__init__.py + version = clightning.version; inherit (clightning) src; - propagatedBuildInputs = [ recommonmark ]; + propagatedBuildInputs = [ pyln-bolt7 recommonmark setuptools-scm ]; + + SETUPTOOLS_SCM_PRETEND_VERSION = version; postUnpack = "sourceRoot=$sourceRoot/contrib/${pname}"; } diff --git a/pkgs/python-packages/pyln-proto/default.nix b/pkgs/python-packages/pyln-proto/default.nix index 9a07143..c7b269a 100644 --- a/pkgs/python-packages/pyln-proto/default.nix +++ b/pkgs/python-packages/pyln-proto/default.nix @@ -4,11 +4,12 @@ , coincurve , base58 , mypy +, setuptools-scm }: buildPythonPackage rec { pname = "pyln-proto"; - version = "0.10.1"; # defined in ${src}/contrib/pyln-proto/setup.py + version = clightning.version; inherit (clightning) src; @@ -18,8 +19,17 @@ buildPythonPackage rec { coincurve base58 mypy + setuptools-scm ]; - postUnpack = "sourceRoot=$sourceRoot/contrib/${pname}"; + SETUPTOOLS_SCM_PRETEND_VERSION = version; + postUnpack = "sourceRoot=$sourceRoot/contrib/pyln-proto"; + postPatch = '' + sed -i ' + s|coincurve ~= 13.0|coincurve == 15.0.0| + s|base58 ~= 2.0.1|base58 == 2.1.0| + s|mypy==0.790|mypy == 0.812| + ' requirements.txt + ''; }