2016-12-03 12:04:52 +00:00
|
|
|
# This function provides generic bits to install a Python wheel.
|
|
|
|
|
|
|
|
{ python
|
|
|
|
, bootstrapped-pip
|
|
|
|
}:
|
|
|
|
|
|
|
|
{ buildInputs ? []
|
|
|
|
# Additional flags to pass to "pip install".
|
|
|
|
, installFlags ? []
|
|
|
|
, ... } @ attrs:
|
|
|
|
|
|
|
|
attrs // {
|
|
|
|
buildInputs = buildInputs ++ [ bootstrapped-pip ];
|
|
|
|
|
2016-12-06 15:36:06 +00:00
|
|
|
configurePhase = attrs.configurePhase or ''
|
2016-12-05 16:29:39 +00:00
|
|
|
runHook preConfigure
|
|
|
|
runHook postConfigure
|
|
|
|
'';
|
|
|
|
|
2016-12-03 12:04:52 +00:00
|
|
|
installPhase = attrs.installPhase or ''
|
|
|
|
runHook preInstall
|
|
|
|
|
|
|
|
mkdir -p "$out/${python.sitePackages}"
|
|
|
|
export PYTHONPATH="$out/${python.sitePackages}:$PYTHONPATH"
|
|
|
|
|
|
|
|
pushd dist
|
2016-12-13 13:31:47 +00:00
|
|
|
${bootstrapped-pip}/bin/pip install *.whl --no-index --prefix=$out --no-cache ${toString installFlags} --build tmpbuild
|
2016-12-03 12:04:52 +00:00
|
|
|
popd
|
|
|
|
|
|
|
|
runHook postInstall
|
|
|
|
'';
|
2016-12-06 15:36:06 +00:00
|
|
|
}
|