24 lines
782 B
Nix
24 lines
782 B
Nix
|
# Build a python package from info made available by setupcfg2nix.
|
||
|
#
|
||
|
# * src: The source of the package.
|
||
|
# * info: The package information generated by setupcfg2nix.
|
||
|
# * meta: Standard nixpkgs metadata.
|
||
|
# * application: Whether this package is a python library or an
|
||
|
# application which happens to be written in python.
|
||
|
pythonPackages: { src, info, meta ? {}, application ? false }: let
|
||
|
build = if application
|
||
|
then pythonPackages.buildPythonApplication
|
||
|
else pythonPackages.buildPythonPackage;
|
||
|
in build {
|
||
|
inherit (info) pname version;
|
||
|
|
||
|
inherit src meta;
|
||
|
|
||
|
nativeBuildInputs = map (p: pythonPackages.${p}) (
|
||
|
(info.setup_requires or []) ++
|
||
|
(info.tests_require or []));
|
||
|
|
||
|
propagatedBuildInputs = map (p: pythonPackages.${p})
|
||
|
(info.install_requires or []);
|
||
|
}
|