erpnext-nix/python-overlay.nix

56 lines
2.1 KiB
Nix

final: prev: {
# Without this, we may inadvertedly end up with old versions (if we happen to
# overlay a dependency for other packages)
python3Packages = final.python3.pkgs;
python3 = prev.python3.override {
packageOverrides = pyFinal: pyPrev: {
bench = pyFinal.callPackage ./python/bench.nix {};
erpnext = pyFinal.callPackage ./python/erpnext.nix {};
frappe = pyFinal.callPackage ./python/frappe.nix {};
# bench dependencies
honcho = pyFinal.callPackage ./python/honcho.nix {};
# erpnext dependencies
barcodenumber = pyFinal.callPackage ./python/barcodenumber.nix {};
# frappe dependencies
email-reply-parser = pyFinal.callPackage ./python/email-reply-parser.nix {};
maxminddb-geolite2 = pyFinal.callPackage ./python/maxminddb-geolite2.nix {};
psycopg2-binary = pyFinal.callPackage ./python/psycopg2-binary.nix {};
traceback-with-variables = pyFinal.callPackage ./python/traceback-with-variables.nix {};
pydantic = pyFinal.callPackage ./python/pydantic.nix {};
versioningit = pyPrev.versioningit.overridePythonAttrs (oldAttrs: (rec {
version = "2.2.1";
src = pyPrev.fetchPypi {
inherit version;
inherit (oldAttrs) pname;
hash = "sha256-DlgkLXq9phrmNZalSUrp7WMayF2Ls8yOF24yU8pLy7U=";
};
}));
fastapi = pyPrev.fastapi.overridePythonAttrs (oldAttrs: (rec {
propagatedBuildInputs = oldAttrs.propagatedBuildInputs ++ [
pyPrev.pydantic-settings
pyPrev.pydantic-extra-types
];
}));
plaid-python = pyPrev.plaid-python.overridePythonAttrs (oldAttrs: (rec {
version = "7.2.1";
src = pyPrev.fetchPypi {
inherit version;
inherit (oldAttrs) pname;
sha256 = "sha256-ryrTJug3fIyG2XGE9gwL5BzXH1B1IB39szMcyF1N5RM=";
};
propagatedBuildInputs = [ pyPrev.requests ];
checkInputs = [ pyPrev.pytest ];
# Integration tests require API keys and internet access
checkPhase = "pyPrev.test -rxs ./tests/unit";
}));
};
};
}