about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--pkgs/applications/science/spyder/default.nix34
-rw-r--r--pkgs/development/python-modules/qtawesome/default.nix19
-rw-r--r--pkgs/development/python-modules/qtpy/default.nix25
-rw-r--r--pkgs/development/python-modules/rope/default.nix18
-rw-r--r--pkgs/top-level/python-packages.nix27
5 files changed, 86 insertions, 37 deletions
diff --git a/pkgs/applications/science/spyder/default.nix b/pkgs/applications/science/spyder/default.nix
index 6dbc75e9c062..0952b61551e3 100644
--- a/pkgs/applications/science/spyder/default.nix
+++ b/pkgs/applications/science/spyder/default.nix
@@ -1,25 +1,27 @@
-{ stdenv, fetchurl, unzip, buildPythonApplication, makeDesktopItem
+{ stdenv, fetchPypi, unzip, buildPythonApplication, makeDesktopItem
 # mandatory
-, pyside
-# recommended
-, pyflakes ? null, rope ? null, sphinx ? null, numpy ? null, scipy ? null, matplotlib ? null
+, qtpy, numpydoc, qtconsole, qtawesome, jedi, pycodestyle, psutil
+, pyflakes, rope, sphinx, nbconvert, mccabe
 # optional
-, ipython ? null, pylint ? null, pep8 ? null
+, numpy ? null, scipy ? null, matplotlib ? null
+# optional
+, pylint ? null
 }:
 
 buildPythonApplication rec {
-  name = "spyder-${version}";
-  version = "2.3.8";
+  pname = "spyder";
+  version = "3.2.4";
   namePrefix = "";
 
-  src = fetchurl {
-    url = "mirror://pypi/s/spyder/${name}.zip";
-    sha256 = "99fdae2cea325c0f2842c77bd67dd22db19fef3d9c0dde1545b1a2650eae517e";
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "028hg71gfq2yrplwhhl7hl4rbwji1l0zxzghblwmb0i443ki10v3";
   };
 
-  # NOTE: sphinx makes the build fail with: ValueError: ZIP does not support timestamps before 1980
-  propagatedBuildInputs =
-    [ pyside pyflakes rope  numpy scipy matplotlib ipython pylint pep8 ];
+  propagatedBuildInputs = [
+    jedi pycodestyle psutil qtpy pyflakes rope numpy scipy matplotlib pylint
+    numpydoc qtconsole qtawesome nbconvert mccabe
+  ];
 
   # There is no test for spyder
   doCheck = false;
@@ -36,9 +38,9 @@ buildPythonApplication rec {
 
   # Create desktop item
   postInstall = ''
-    mkdir -p $out/share/{applications,icons}
-    cp  $desktopItem/share/applications/* $out/share/applications/
-    cp  spyderlib/images/spyder.svg $out/share/icons/
+    mkdir -p $out/share/icons
+    cp spyder/images/spyder.svg $out/share/icons
+    cp -r $desktopItem/share/applications/ $out/share
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/python-modules/qtawesome/default.nix b/pkgs/development/python-modules/qtawesome/default.nix
new file mode 100644
index 000000000000..016266dd8544
--- /dev/null
+++ b/pkgs/development/python-modules/qtawesome/default.nix
@@ -0,0 +1,19 @@
+{ stdenv, buildPythonPackage, fetchPypi, qtpy, six, pyside }:
+
+buildPythonPackage rec {
+  pname = "QtAwesome";
+  version = "0.4.4";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "12l71wh9fcd79d6c7qfzp029iph6gv4daxpg2ddpzr9lrvcw3yah";
+  };
+
+  propagatedBuildInputs = [ qtpy six pyside ];
+
+  meta = with stdenv.lib; {
+    description = "Iconic fonts in PyQt and PySide applications";
+    homepage = https://github.com/spyder-ide/qtawesome;
+    license = licenses.mit;
+  };
+}
diff --git a/pkgs/development/python-modules/qtpy/default.nix b/pkgs/development/python-modules/qtpy/default.nix
new file mode 100644
index 000000000000..035ea32b3989
--- /dev/null
+++ b/pkgs/development/python-modules/qtpy/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, buildPythonPackage, fetchPypi, pyside, pytest }:
+
+buildPythonPackage rec {
+  pname = "QtPy";
+  version = "1.3.1";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "04skhjb2dbbhvpq0x71nnz2h68805fkxfpkdjhwvd7lzsljjbbq8";
+  };
+
+  # no concrete propagatedBuildInputs as multiple backends are supposed
+  checkInputs = [ pyside pytest ];
+
+  doCheck = false; # require X
+  checkPhase = ''
+    py.test qtpy/tests
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Abstraction layer for PyQt5/PyQt4/PySide2/PySide";
+    homepage = https://github.com/spyder-ide/qtpy;
+    license = licenses.mit;
+  };
+}
diff --git a/pkgs/development/python-modules/rope/default.nix b/pkgs/development/python-modules/rope/default.nix
new file mode 100644
index 000000000000..db08ad2a5c03
--- /dev/null
+++ b/pkgs/development/python-modules/rope/default.nix
@@ -0,0 +1,18 @@
+{ stdenv, buildPythonPackage, fetchPypi }:
+
+buildPythonPackage rec {
+  pname = "rope";
+  version = "0.10.7";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1lc01pjn0yr6yqcpbf6kk170zg8zhnyzj8kqlsch1mag0g9dz7m0";
+  };
+
+  meta = with stdenv.lib; {
+    description = "Python refactoring library";
+    homepage = https://github.com/python-rope/rope;
+    maintainers = with maintainers; [ goibhniu ];
+    license = licenses.gpl2;
+  };
+}
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 8f88c7e17ee2..30433a509f4b 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -17122,8 +17122,12 @@ in {
     };
   };
 
+  qtawesome = callPackage ../development/python-modules/qtawesome { };
+
   qtconsole = callPackage ../development/python-modules/qtconsole { };
 
+  qtpy = callPackage ../development/python-modules/qtpy { };
+
   quantities = buildPythonPackage rec {
     name = "quantities-0.10.1";
 
@@ -17490,24 +17494,7 @@ in {
 
   rootpy = callPackage ../development/python-modules/rootpy { };
 
-  rope = buildPythonPackage rec {
-    version = "0.10.2";
-    name = "rope-${version}";
-
-    disabled = isPy3k;
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/r/rope/${name}.tar.gz";
-      sha256 = "0rdlvp8h74qs49wz1hx6qy8mgp2ddwlfs7z13h9139ynq04a3z7z";
-    };
-
-    meta = {
-      description = "Python refactoring library";
-      homepage = http://rope.sf.net;
-      maintainers = with maintainers; [ goibhniu ];
-      license = licenses.gpl2;
-    };
-  };
+  rope = callPackage ../development/python-modules/rope { };
 
   ropper = callPackage ../development/python-modules/ropper { };
 
@@ -19041,9 +19028,7 @@ in {
     };
   });
 
-  spyder = callPackage ../applications/science/spyder {
-    rope = if isPy3k then null else self.rope;
-  };
+  spyder = callPackage ../applications/science/spyder { };
 
   sqlalchemy = callPackage ../development/python-modules/sqlalchemy { };