at master 1.6 kB view raw
1{ 2 lib, 3 stdenv, 4 buildPythonPackage, 5 replaceVars, 6 fetchPypi, 7 cython, 8 fontconfig, 9 freetype-py, 10 hsluv, 11 kiwisolver, 12 libGL, 13 numpy, 14 oldest-supported-numpy, 15 packaging, 16 pythonOlder, 17 setuptools, 18 setuptools-scm, 19 wheel, 20}: 21 22buildPythonPackage rec { 23 pname = "vispy"; 24 version = "0.15.2"; 25 pyproject = true; 26 27 disabled = pythonOlder "3.7"; 28 29 src = fetchPypi { 30 inherit pname version; 31 hash = "sha256-1S0QwGl/SJkFVc6iorrT+fWncjkYVv2jZOpLvGn9B1w="; 32 }; 33 34 patches = lib.optionals (!stdenv.hostPlatform.isDarwin) [ 35 (replaceVars ./library-paths.patch { 36 fontconfig = "${fontconfig.lib}/lib/libfontconfig${stdenv.hostPlatform.extensions.sharedLibrary}"; 37 gl = "${libGL.out}/lib/libGL${stdenv.hostPlatform.extensions.sharedLibrary}"; 38 }) 39 ]; 40 41 nativeBuildInputs = [ 42 cython 43 oldest-supported-numpy 44 setuptools 45 setuptools-scm 46 wheel 47 ]; 48 49 buildInputs = [ libGL ]; 50 51 propagatedBuildInputs = [ 52 freetype-py 53 hsluv 54 kiwisolver 55 numpy 56 packaging 57 ]; 58 59 doCheck = false; # otherwise runs OSX code on linux. 60 61 pythonImportsCheck = [ 62 "vispy" 63 "vispy.color" 64 "vispy.geometry" 65 "vispy.gloo" 66 "vispy.glsl" 67 "vispy.io" 68 "vispy.plot" 69 "vispy.scene" 70 "vispy.util" 71 "vispy.visuals" 72 ]; 73 74 meta = with lib; { 75 description = "Interactive scientific visualization in Python"; 76 homepage = "https://vispy.org/index.html"; 77 changelog = "https://github.com/vispy/vispy/blob/v${version}/CHANGELOG.md"; 78 license = licenses.bsd3; 79 maintainers = with maintainers; [ goertzenator ]; 80 }; 81}