46 lines
1.2 KiB
Nix
46 lines
1.2 KiB
Nix
{ stdenv
|
|
, fetchPypi
|
|
, python
|
|
, wrapPython
|
|
, unzip
|
|
}:
|
|
|
|
# Should use buildPythonPackage here somehow
|
|
stdenv.mkDerivation rec {
|
|
pname = "setuptools";
|
|
version = "40.8.0";
|
|
name = "${python.libPrefix}-${pname}-${version}";
|
|
|
|
src = fetchPypi {
|
|
inherit pname version;
|
|
extension = "zip";
|
|
sha256 = "6e4eec90337e849ade7103723b9a99631c1f0d19990d6e8412dc42f5ae8b304d";
|
|
};
|
|
|
|
nativeBuildInputs = [ unzip wrapPython python.pythonForBuild ];
|
|
doCheck = false; # requires pytest
|
|
installPhase = ''
|
|
dst=$out/${python.sitePackages}
|
|
mkdir -p $dst
|
|
export PYTHONPATH="$dst:$PYTHONPATH"
|
|
${python.pythonForBuild.interpreter} setup.py install --prefix=$out
|
|
wrapPythonPrograms
|
|
'';
|
|
|
|
pythonPath = [];
|
|
|
|
dontPatchShebangs = true;
|
|
|
|
# Python packages built through cross-compilation are always for the host platform.
|
|
disallowedReferences = stdenv.lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ python.pythonForBuild ];
|
|
|
|
|
|
meta = with stdenv.lib; {
|
|
description = "Utilities to facilitate the installation of Python packages";
|
|
homepage = https://pypi.python.org/pypi/setuptools;
|
|
license = with licenses; [ psfl zpl20 ];
|
|
platforms = python.meta.platforms;
|
|
priority = 10;
|
|
};
|
|
}
|