feat(pip): add option ignoredDependencies, to ignore dependencies like wheel

also add unzip to native build inputs to allow .zip sdist files
This commit is contained in:
DavHau 2023-08-22 12:49:02 +02:00
parent 919cd21990
commit b58cc53fac
2 changed files with 28 additions and 6 deletions

View File

@ -9,6 +9,20 @@
python = config.deps.python; python = config.deps.python;
metadata = config.lock.content.fetchPipMetadata; metadata = config.lock.content.fetchPipMetadata;
ignored = l.genAttrs cfg.ignoredDependencies (name: true);
filterTarget = target:
l.filterAttrs (name: target: ! ignored ? ${name}) target;
# filter out ignored dependencies
targets = l.flip l.mapAttrs metadata.targets (
targetName: target:
l.flip l.mapAttrs (filterTarget target) (
packageName: deps:
l.filter (dep: ! ignored ? ${dep}) deps
)
);
writers = import ../../../pkgs/writers { writers = import ../../../pkgs/writers {
inherit lib; inherit lib;
inherit inherit
@ -64,6 +78,7 @@
gawk gawk
path path
stdenv stdenv
unzip
writeScript writeScript
writeScriptBin writeScriptBin
; ;

View File

@ -16,6 +16,13 @@ in {
''; '';
default = false; default = false;
}; };
ignoredDependencies = l.mkOption {
type = t.listOf t.str;
description = ''
list of dependencies to ignore
'';
default = ["wheel"];
};
pypiSnapshotDate = l.mkOption { pypiSnapshotDate = l.mkOption {
type = t.str; type = t.str;
description = '' description = ''