nixos-option: rewrite as a nix script, 2nd try (#369151)
[NixPkgs.git] / pkgs / development / python-modules / mxnet / default.nix
blob75f9ff5391467e52b4722c8d6c4bbadbf7fd56b1
2   lib,
3   buildPythonPackage,
4   pkgs,
5   setuptools,
6   distutils,
7   requests,
8   numpy,
9   graphviz,
10   python,
11   isPy3k,
12   isPy310,
15 buildPythonPackage {
16   inherit (pkgs.mxnet) pname version src;
17   pyproject = true;
19   build-system = [ setuptools ];
21   buildInputs = [ pkgs.mxnet ];
23   dependencies = [
24     distutils
25     requests
26     numpy
27     graphviz
28   ];
30   pythonRelaxDeps = [
31     "graphviz"
32     "numpy"
33   ];
35   LD_LIBRARY_PATH = lib.makeLibraryPath [ pkgs.mxnet ];
37   doCheck = !isPy3k;
39   postPatch = ''
40     # Required to support numpy >=1.24 where np.bool is removed in favor of just bool
41     substituteInPlace python/mxnet/numpy/utils.py \
42       --replace-fail "bool = onp.bool" "bool = bool"
43   '';
45   preConfigure = ''
46     cd python
47   '';
49   postInstall = ''
50     rm -rf $out/mxnet
51     ln -s ${pkgs.mxnet}/lib/libmxnet.so $out/${python.sitePackages}/mxnet
52   '';
54   meta = pkgs.mxnet.meta // {
55     broken = (pkgs.mxnet.broken or false) || (isPy310 && pkgs.mxnet.cudaSupport);
56   };