pythonPackages: improve layout
- Move the creation of the joinmarket Python pkgs from `joinmarket/default.nix` to `pkgs/python-packages/default.nix`. - Move definitions of old pkg versions from the main Python pkgs to the joinmarket Python pkgs. These old versions are only required by joinmarket.
This commit is contained in:
parent
74c8593407
commit
d1ef2a6e1e
@ -13,7 +13,7 @@ let self = {
|
|||||||
clightning-rest = pkgs.callPackage ./clightning-rest { inherit (self) fetchNodeModules; };
|
clightning-rest = pkgs.callPackage ./clightning-rest { inherit (self) fetchNodeModules; };
|
||||||
clboss = pkgs.callPackage ./clboss { };
|
clboss = pkgs.callPackage ./clboss { };
|
||||||
clightning-plugins = pkgs.recurseIntoAttrs (import ./clightning-plugins pkgs self.nbPython3Packages);
|
clightning-plugins = pkgs.recurseIntoAttrs (import ./clightning-plugins pkgs self.nbPython3Packages);
|
||||||
joinmarket = pkgs.callPackage ./joinmarket { nbPythonPackageOverrides = import ./python-packages self; };
|
joinmarket = pkgs.callPackage ./joinmarket { inherit (self) nbPython3PackagesJoinmarket; };
|
||||||
lndinit = pkgs.callPackage ./lndinit { };
|
lndinit = pkgs.callPackage ./lndinit { };
|
||||||
liquid-swap = pkgs.python3Packages.callPackage ./liquid-swap { };
|
liquid-swap = pkgs.python3Packages.callPackage ./liquid-swap { };
|
||||||
rtl = pkgs.callPackage ./rtl { inherit (self) fetchNodeModules; };
|
rtl = pkgs.callPackage ./rtl { inherit (self) fetchNodeModules; };
|
||||||
@ -21,9 +21,10 @@ let self = {
|
|||||||
secp256k1 = pkgs.callPackage ./secp256k1 { };
|
secp256k1 = pkgs.callPackage ./secp256k1 { };
|
||||||
spark-wallet = pkgs.callPackage ./spark-wallet { };
|
spark-wallet = pkgs.callPackage ./spark-wallet { };
|
||||||
|
|
||||||
nbPython3Packages = (pkgs.python3.override {
|
pyPkgs = import ./python-packages self pkgs.python3;
|
||||||
packageOverrides = import ./python-packages self;
|
inherit (self.pyPkgs)
|
||||||
}).pkgs;
|
nbPython3Packages
|
||||||
|
nbPython3PackagesJoinmarket;
|
||||||
|
|
||||||
fetchNodeModules = pkgs.callPackage ./build-support/fetch-node-modules.nix { };
|
fetchNodeModules = pkgs.callPackage ./build-support/fetch-node-modules.nix { };
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
{ stdenv, lib, fetchurl, python3, nbPythonPackageOverrides, pkgs }:
|
{ stdenv, lib, fetchurl, python3, nbPython3PackagesJoinmarket }:
|
||||||
|
|
||||||
let
|
let
|
||||||
version = "0.9.7";
|
version = "0.9.7";
|
||||||
@ -7,17 +7,7 @@ let
|
|||||||
sha256 = "13bfr8ha6bka8wiai8m79ki43dn2r311lrfffr39ni2wy1v12l93";
|
sha256 = "13bfr8ha6bka8wiai8m79ki43dn2r311lrfffr39ni2wy1v12l93";
|
||||||
};
|
};
|
||||||
|
|
||||||
pyPkgs = (python3.override {
|
runtimePackages = with nbPython3PackagesJoinmarket; [
|
||||||
packageOverrides = (self: super: let
|
|
||||||
overrides = nbPythonPackageOverrides self super;
|
|
||||||
in
|
|
||||||
overrides // {
|
|
||||||
cryptography = overrides.cryptography_3_3_2;
|
|
||||||
}
|
|
||||||
);
|
|
||||||
}).pkgs;
|
|
||||||
|
|
||||||
runtimePackages = with pyPkgs; [
|
|
||||||
joinmarketbase
|
joinmarketbase
|
||||||
joinmarketclient
|
joinmarketclient
|
||||||
joinmarketbitcoin
|
joinmarketbitcoin
|
||||||
|
@ -1,42 +1,48 @@
|
|||||||
nbPkgs: self: super:
|
nbPkgs: python3:
|
||||||
let
|
rec {
|
||||||
|
pyPkgsOverrides = self: super: let
|
||||||
inherit (self) callPackage;
|
inherit (self) callPackage;
|
||||||
|
|
||||||
joinmarketPkg = pkg: callPackage pkg { inherit (nbPkgs.joinmarket) version src; };
|
|
||||||
clightningPkg = pkg: callPackage pkg { inherit (nbPkgs.pinned) clightning; };
|
clightningPkg = pkg: callPackage pkg { inherit (nbPkgs.pinned) clightning; };
|
||||||
|
in
|
||||||
unstable = (import ../nixpkgs-pinned.nix).nixpkgs-unstable;
|
{
|
||||||
in {
|
|
||||||
bencoderpyx = callPackage ./bencoderpyx {};
|
|
||||||
chromalog = callPackage ./chromalog {};
|
|
||||||
coincurve = callPackage ./coincurve {};
|
coincurve = callPackage ./coincurve {};
|
||||||
python-bitcointx = callPackage ./python-bitcointx { inherit (nbPkgs) secp256k1; };
|
|
||||||
runes = callPackage ./runes {};
|
|
||||||
sha256 = callPackage ./sha256 {};
|
|
||||||
txzmq = callPackage ./txzmq {};
|
txzmq = callPackage ./txzmq {};
|
||||||
urldecode = callPackage ./urldecode {};
|
|
||||||
|
|
||||||
joinmarketbase = joinmarketPkg ./jmbase;
|
|
||||||
joinmarketclient = joinmarketPkg ./jmclient;
|
|
||||||
joinmarketbitcoin = joinmarketPkg ./jmbitcoin;
|
|
||||||
joinmarketdaemon = joinmarketPkg ./jmdaemon;
|
|
||||||
|
|
||||||
pyln-client = clightningPkg ./pyln-client;
|
pyln-client = clightningPkg ./pyln-client;
|
||||||
pyln-proto = clightningPkg ./pyln-proto;
|
pyln-proto = clightningPkg ./pyln-proto;
|
||||||
pyln-bolt7 = clightningPkg ./pyln-bolt7;
|
pyln-bolt7 = clightningPkg ./pyln-bolt7;
|
||||||
pylightning = clightningPkg ./pylightning;
|
pylightning = clightningPkg ./pylightning;
|
||||||
|
|
||||||
|
# Packages only used by joinmarket
|
||||||
|
bencoderpyx = callPackage ./bencoderpyx {};
|
||||||
|
chromalog = callPackage ./chromalog {};
|
||||||
|
python-bitcointx = callPackage ./python-bitcointx { inherit (nbPkgs) secp256k1; };
|
||||||
|
runes = callPackage ./runes {};
|
||||||
|
sha256 = callPackage ./sha256 {};
|
||||||
|
urldecode = callPackage ./urldecode {};
|
||||||
|
};
|
||||||
|
|
||||||
|
# Joinmarket requires a custom package set because it uses older versions of Python pkgs
|
||||||
|
pyPkgsOverridesJoinmarket = self: super: let
|
||||||
|
inherit (self) callPackage;
|
||||||
|
joinmarketPkg = pkg: callPackage pkg { inherit (nbPkgs.joinmarket) version src; };
|
||||||
|
in
|
||||||
|
(pyPkgsOverrides self super) // {
|
||||||
|
joinmarketbase = joinmarketPkg ./jmbase;
|
||||||
|
joinmarketclient = joinmarketPkg ./jmclient;
|
||||||
|
joinmarketbitcoin = joinmarketPkg ./jmbitcoin;
|
||||||
|
joinmarketdaemon = joinmarketPkg ./jmdaemon;
|
||||||
|
|
||||||
# Don't mark `klein` as broken.
|
# Don't mark `klein` as broken.
|
||||||
# `klein` is fixed by using werkzeug 2.1.0 (see below)
|
# `klein` is fixed by using werkzeug 2.1.0 (see below)
|
||||||
klein = super.klein.overrideAttrs (old: {
|
klein = super.klein.overrideAttrs (old: {
|
||||||
meta = builtins.removeAttrs old.meta [ "broken" ];
|
meta = builtins.removeAttrs old.meta [ "broken" ];
|
||||||
});
|
});
|
||||||
|
|
||||||
## Specific versions of packages that already exist in nixpkgs
|
## Specific versions of packages that already exist in nixpkgs
|
||||||
|
|
||||||
# cryptography 3.3.2, required by joinmarketdaemon
|
# cryptography 3.3.2, required by joinmarketdaemon
|
||||||
# Used in the private python package set for joinmarket (../joinmarket/default.nix)
|
# Used in the private python package set for joinmarket (../joinmarket/default.nix)
|
||||||
cryptography_3_3_2 = callPackage ./specific-versions/cryptography {
|
cryptography = callPackage ./specific-versions/cryptography {
|
||||||
cryptography_vectors = callPackage ./specific-versions/cryptography/vectors.nix {};
|
cryptography_vectors = callPackage ./specific-versions/cryptography/vectors.nix {};
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -48,4 +54,13 @@ in {
|
|||||||
|
|
||||||
# pyopenssl 20.0.1, required by joinmarketdaemon
|
# pyopenssl 20.0.1, required by joinmarketdaemon
|
||||||
pyopenssl = callPackage ./specific-versions/pyopenssl.nix {};
|
pyopenssl = callPackage ./specific-versions/pyopenssl.nix {};
|
||||||
|
};
|
||||||
|
|
||||||
|
nbPython3Packages = (python3.override {
|
||||||
|
packageOverrides = pyPkgsOverrides;
|
||||||
|
}).pkgs;
|
||||||
|
|
||||||
|
nbPython3PackagesJoinmarket = (python3.override {
|
||||||
|
packageOverrides = pyPkgsOverridesJoinmarket;
|
||||||
|
}).pkgs;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user