nixpkgs/pkgs/development/python-modules/cupy/default.nix
Profpatsch 4a7f99d55d treewide: with stdenv.lib; in meta -> with lib;
Part of: https://github.com/NixOS/nixpkgs/issues/108938

meta = with stdenv.lib;

is a widely used pattern. We want to slowly remove
the `stdenv.lib` indirection and encourage people
to use `lib` directly. Thus let’s start with the meta
field.

This used a rewriting script to mostly automatically
replace all occurances of this pattern, and add the
`lib` argument to the package header if it doesn’t
exist yet.

The script in its current form is available at
https://cs.tvl.fyi/depot@2f807d7f141068d2d60676a89213eaa5353ca6e0/-/blob/users/Profpatsch/nixpkgs-rewriter/default.nix
2021-01-11 10:38:22 +01:00

50 lines
994 B
Nix

{ lib, stdenv, buildPythonPackage
, fetchPypi, isPy3k, linuxPackages
, fastrlock, numpy, six, wheel, pytest, mock, setuptools
, cudatoolkit, cudnn, nccl
}:
buildPythonPackage rec {
pname = "cupy";
version = "8.3.0";
disabled = !isPy3k;
src = fetchPypi {
inherit pname version;
sha256 = "db699fddfde7806445908cf6454c6f4985e7a9563b40405ddf97845d808c5f12";
};
checkInputs = [
pytest
mock
];
preConfigure = ''
export CUDA_PATH=${cudatoolkit}
'';
propagatedBuildInputs = [
cudatoolkit
cudnn
linuxPackages.nvidia_x11
nccl
fastrlock
numpy
six
setuptools
wheel
];
# In python3, test was failed...
doCheck = !isPy3k;
enableParallelBuilding = true;
meta = with lib; {
description = "A NumPy-compatible matrix library accelerated by CUDA";
homepage = "https://cupy.chainer.org/";
license = licenses.mit;
platforms = [ "x86_64-linux" ];
maintainers = with maintainers; [ hyphon81 ];
};
}