about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/python-modules/mayavi/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/python-modules/mayavi/default.nix')
-rw-r--r--nixpkgs/pkgs/development/python-modules/mayavi/default.nix38
1 files changed, 23 insertions, 15 deletions
diff --git a/nixpkgs/pkgs/development/python-modules/mayavi/default.nix b/nixpkgs/pkgs/development/python-modules/mayavi/default.nix
index d7a821915f20..2fd536609076 100644
--- a/nixpkgs/pkgs/development/python-modules/mayavi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mayavi/default.nix
@@ -1,37 +1,45 @@
-{ stdenv, fetchPypi, buildPythonPackage
-, wxPython, pygments, numpy, vtk, traitsui, envisage, apptools
-, nose, mock
-, isPy3k
+{ lib, buildPythonPackage, isPy27, fetchPypi, wrapQtAppsHook
+, pyface, pygments, numpy, vtk, traitsui, envisage, apptools, pyqt5
 }:
 
 buildPythonPackage rec {
   pname = "mayavi";
-  version = "4.7.0";
+  version = "4.7.1";
+
+  disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
     extension = "tar.bz2";
-    sha256 = "02rg4j1vkny2piqn3f728kg34m54kgx396g6h5y7ykz2lk3f3h44";
+    sha256 = "095p7mds6kqqrp7xqv24iygr3mw85rm7x41wb5y4yc3gi1pznldy";
   };
 
-  # Discovery of 'vtk' in setuptools is not working properly, due to a missing
-  # .egg-info in the vtk package. It does however import and run just fine.
   postPatch = ''
+    # Discovery of 'vtk' in setuptools is not working properly, due to a missing
+    # .egg-info in the vtk package. It does however import and run just fine.
     substituteInPlace mayavi/__init__.py --replace "'vtk'" ""
-  '';
 
-  propagatedBuildInputs = [ wxPython pygments numpy vtk traitsui envisage apptools ];
+    # building the docs fails with the usual Qt xcb error, so skip:
+    substituteInPlace setup.py \
+      --replace "build.build.run(self)" "build.build.run(self); return"
+  '';
 
-  checkInputs = [ nose mock ];
+  nativeBuildInputs = [ wrapQtAppsHook ];
 
-  disabled = isPy3k; # TODO: This would need pyqt5 instead of wxPython
+  propagatedBuildInputs = [
+    pyface pygments numpy vtk traitsui envisage apptools pyqt5
+  ];
 
   doCheck = false; # Needs X server
 
-  meta = with stdenv.lib; {
+  preFixup = ''
+    makeWrapperArgs+=("''${qtWrapperArgs[@]}")
+  '';
+
+  meta = with lib; {
     description = "3D visualization of scientific data in Python";
-    homepage = https://github.com/enthought/mayavi;
-    maintainers = with stdenv.lib.maintainers; [ knedlsepp ];
+    homepage = "https://github.com/enthought/mayavi";
+    maintainers = with maintainers; [ knedlsepp ];
     license = licenses.bsdOriginal;
   };
 }