summary refs log tree commit diff
diff options
context:
space:
mode:
authorFrederik Rietdijk <fridh@fridh.nl>2022-01-16 07:34:26 +0100
committerFrederik Rietdijk <freddyrietdijk@fridh.nl>2022-01-16 10:00:16 +0100
commitae18d68b6b117528e6cd72325ead36b48562d43f (patch)
tree9f9d765a7208d5d436184dc3656b164fd0581f7f
parent2027fb600d891379c53c4762463e65d040359682 (diff)
downloadnixpkgs-ae18d68b6b117528e6cd72325ead36b48562d43f.tar
nixpkgs-ae18d68b6b117528e6cd72325ead36b48562d43f.tar.gz
nixpkgs-ae18d68b6b117528e6cd72325ead36b48562d43f.tar.bz2
nixpkgs-ae18d68b6b117528e6cd72325ead36b48562d43f.tar.lz
nixpkgs-ae18d68b6b117528e6cd72325ead36b48562d43f.tar.xz
nixpkgs-ae18d68b6b117528e6cd72325ead36b48562d43f.tar.zst
nixpkgs-ae18d68b6b117528e6cd72325ead36b48562d43f.zip
python2.pkgs: move expressions into python2-modules/ folder
Another step in further separating python2 from python3.
-rw-r--r--pkgs/applications/misc/haxor-news/default.nix3
-rw-r--r--pkgs/applications/misc/privacyidea/default.nix4
-rw-r--r--pkgs/applications/networking/p2p/tribler/aiohttp-apispec.nix (renamed from pkgs/development/python-modules/aiohttp-apispec/unstable.nix)4
-rw-r--r--pkgs/applications/networking/p2p/tribler/apispec.nix (renamed from pkgs/development/python-modules/apispec/3.nix)0
-rw-r--r--pkgs/applications/networking/p2p/tribler/default.nix3
-rw-r--r--pkgs/applications/office/watson/default.nix3
-rw-r--r--pkgs/development/libraries/science/math/fenics/default.nix9
-rw-r--r--pkgs/development/python2-modules/Pygments/default.nix (renamed from pkgs/development/python-modules/Pygments/2_5.nix)0
-rw-r--r--pkgs/development/python2-modules/TurboCheetah/default.nix (renamed from pkgs/development/python-modules/TurboCheetah/default.nix)0
-rw-r--r--pkgs/development/python2-modules/bootstrapped-pip/default.nix (renamed from pkgs/development/python-modules/bootstrapped-pip/2.nix)0
-rw-r--r--pkgs/development/python2-modules/boto3/default.nix (renamed from pkgs/development/python-modules/boto3/1_17.nix)0
-rw-r--r--pkgs/development/python2-modules/botocore/default.nix (renamed from pkgs/development/python-modules/botocore/1_20.nix)0
-rw-r--r--pkgs/development/python2-modules/certifi/default.nix (renamed from pkgs/development/python-modules/certifi/python2.nix)0
-rw-r--r--pkgs/development/python2-modules/chardet/default.nix (renamed from pkgs/development/python-modules/chardet/2.nix)0
-rw-r--r--pkgs/development/python2-modules/cheetah/default.nix (renamed from pkgs/development/python-modules/cheetah/default.nix)0
-rw-r--r--pkgs/development/python2-modules/click/default.nix (renamed from pkgs/development/python-modules/click/7.nix)0
-rw-r--r--pkgs/development/python2-modules/configparser/default.nix (renamed from pkgs/development/python-modules/configparser/4.nix)0
-rw-r--r--pkgs/development/python2-modules/construct/default.nix (renamed from pkgs/development/python-modules/construct/2.10.54.nix)0
-rw-r--r--pkgs/development/python2-modules/contextlib2/default.nix (renamed from pkgs/development/python-modules/contextlib2/0.nix)0
-rw-r--r--pkgs/development/python2-modules/cryptography-vectors/default.nix (renamed from pkgs/development/python-modules/cryptography/vectors-3.3.nix)0
-rw-r--r--pkgs/development/python2-modules/cryptography/default.nix (renamed from pkgs/development/python-modules/cryptography/3.3.nix)0
-rw-r--r--pkgs/development/python2-modules/decorator/default.nix (renamed from pkgs/development/python-modules/decorator/4.nix)0
-rw-r--r--pkgs/development/python2-modules/enum/default.nix (renamed from pkgs/development/python-modules/enum/default.nix)0
-rw-r--r--pkgs/development/python2-modules/filelock/default.nix (renamed from pkgs/development/python-modules/filelock/3.2.nix)0
-rw-r--r--pkgs/development/python2-modules/flask/default.nix (renamed from pkgs/development/python-modules/flask/1.nix)0
-rw-r--r--pkgs/development/python2-modules/freezegun/default.nix (renamed from pkgs/development/python-modules/freezegun/0.3.nix)0
-rw-r--r--pkgs/development/python2-modules/futures/default.nix (renamed from pkgs/development/python-modules/futures/default.nix)0
-rw-r--r--pkgs/development/python2-modules/google-apputils/default.nix (renamed from pkgs/development/python-modules/google-apputils/default.nix)0
-rw-r--r--pkgs/development/python2-modules/httpretty/default.nix (renamed from pkgs/development/python-modules/httpretty/0.nix)0
-rw-r--r--pkgs/development/python2-modules/hypothesis/default.nix (renamed from pkgs/development/python-modules/hypothesis/2.nix)0
-rw-r--r--pkgs/development/python2-modules/idna/default.nix (renamed from pkgs/development/python-modules/idna/2.nix)0
-rw-r--r--pkgs/development/python2-modules/importlib-metadata/default.nix (renamed from pkgs/development/python-modules/importlib-metadata/2.nix)0
-rw-r--r--pkgs/development/python2-modules/ipaddr/default.nix (renamed from pkgs/development/python-modules/ipaddr/default.nix)0
-rw-r--r--pkgs/development/python2-modules/itsdangerous/default.nix (renamed from pkgs/development/python-modules/itsdangerous/1.nix)0
-rw-r--r--pkgs/development/python2-modules/jinja2/default.nix (renamed from pkgs/development/python-modules/jinja2/2.nix)0
-rw-r--r--pkgs/development/python2-modules/libcloud/default.nix (renamed from pkgs/development/python-modules/libcloud/2.nix)0
-rw-r--r--pkgs/development/python2-modules/lpod/default.nix (renamed from pkgs/development/python-modules/lpod/default.nix)0
-rw-r--r--pkgs/development/python2-modules/marisa/default.nix (renamed from pkgs/development/python-modules/marisa/default.nix)0
-rw-r--r--pkgs/development/python2-modules/markdown/default.nix (renamed from pkgs/development/python-modules/markdown/3_1.nix)0
-rw-r--r--pkgs/development/python2-modules/markupsafe/default.nix (renamed from pkgs/development/python-modules/markupsafe/1.nix)0
-rw-r--r--pkgs/development/python2-modules/mock/default.nix (renamed from pkgs/development/python-modules/mock/2.nix)0
-rw-r--r--pkgs/development/python2-modules/more-itertools/default.nix (renamed from pkgs/development/python-modules/more-itertools/2.7.nix)0
-rw-r--r--pkgs/development/python2-modules/mutagen/default.nix (renamed from pkgs/development/python-modules/mutagen/1.43.nix)0
-rw-r--r--pkgs/development/python2-modules/numpy/default.nix (renamed from pkgs/development/python-modules/numpy/1.16.nix)2
-rw-r--r--pkgs/development/python2-modules/numpy/numpy-distutils-C++.patch (renamed from pkgs/development/python-modules/numpy/numpy-distutils-C++_1.16.patch)0
-rw-r--r--pkgs/development/python2-modules/packaging/default.nix (renamed from pkgs/development/python-modules/packaging/2.nix)0
-rw-r--r--pkgs/development/python2-modules/pillow/default.nix (renamed from pkgs/development/python-modules/pillow/6.nix)0
-rw-r--r--pkgs/development/python2-modules/pillow/generic.nix77
-rw-r--r--pkgs/development/python2-modules/pip/default.nix (renamed from pkgs/development/python-modules/pip/20.nix)0
-rw-r--r--pkgs/development/python2-modules/pluggy/default.nix (renamed from pkgs/development/python-modules/pluggy/0.nix)0
-rw-r--r--pkgs/development/python2-modules/prettytable/default.nix (renamed from pkgs/development/python-modules/prettytable/1.nix)0
-rw-r--r--pkgs/development/python2-modules/protobuf/default.nix59
-rw-r--r--pkgs/development/python2-modules/pycairo/default.nix (renamed from pkgs/development/python-modules/pycairo/1.18.nix)0
-rw-r--r--pkgs/development/python2-modules/pygobject/default.nix (renamed from pkgs/development/python-modules/pygobject/3.36.nix)0
-rw-r--r--pkgs/development/python2-modules/pygtk/default.nix (renamed from pkgs/development/python-modules/pygtk/default.nix)0
-rw-r--r--pkgs/development/python2-modules/pyjwt/default.nix (renamed from pkgs/development/python-modules/pyjwt/1.nix)0
-rw-r--r--pkgs/development/python2-modules/pyroma/default.nix (renamed from pkgs/development/python-modules/pyroma/2.nix)0
-rw-r--r--pkgs/development/python2-modules/pysqlite/default.nix (renamed from pkgs/development/python-modules/pysqlite/default.nix)0
-rw-r--r--pkgs/development/python2-modules/pytest-runner/default.nix (renamed from pkgs/development/python-modules/pytest-runner/2.nix)0
-rw-r--r--pkgs/development/python2-modules/pytest-xdist/default.nix (renamed from pkgs/development/python-modules/pytest-xdist/1.nix)0
-rw-r--r--pkgs/development/python2-modules/pytest/default.nix (renamed from pkgs/development/python-modules/pytest/4.nix)0
-rw-r--r--pkgs/development/python2-modules/pyyaml/default.nix (renamed from pkgs/development/python-modules/pyyaml/5.nix)0
-rw-r--r--pkgs/development/python2-modules/qpid-python/default.nix (renamed from pkgs/development/python-modules/qpid-python/default.nix)0
-rw-r--r--pkgs/development/python2-modules/s3transfer/default.nix (renamed from pkgs/development/python-modules/s3transfer/0_4.nix)0
-rw-r--r--pkgs/development/python2-modules/scandir/default.nix (renamed from pkgs/development/python-modules/scandir/default.nix)0
-rw-r--r--pkgs/development/python2-modules/setuptools-scm/default.nix (renamed from pkgs/development/python-modules/setuptools-scm/2.nix)0
-rw-r--r--pkgs/development/python2-modules/setuptools/default.nix (renamed from pkgs/development/python-modules/setuptools/44.0.nix)0
-rw-r--r--pkgs/development/python2-modules/setuptools/tag-date.patch12
-rw-r--r--pkgs/development/python2-modules/sphinx/default.nix (renamed from pkgs/development/python-modules/sphinx/2.nix)0
-rw-r--r--pkgs/development/python2-modules/sphinx/python2-lexer.patch (renamed from pkgs/development/python-modules/sphinx/python2-lexer.patch)0
-rw-r--r--pkgs/development/python2-modules/sphinxcontrib-websupport/default.nix (renamed from pkgs/development/python-modules/sphinxcontrib-websupport/1_1.nix)0
-rw-r--r--pkgs/development/python2-modules/typing/default.nix (renamed from pkgs/development/python-modules/typing/default.nix)0
-rw-r--r--pkgs/development/python2-modules/urllib3/default.nix (renamed from pkgs/development/python-modules/urllib3/2.nix)0
-rw-r--r--pkgs/development/python2-modules/vcrpy/default.nix (renamed from pkgs/development/python-modules/vcrpy/3.nix)0
-rw-r--r--pkgs/development/python2-modules/werkzeug/default.nix (renamed from pkgs/development/python-modules/werkzeug/1.nix)0
-rw-r--r--pkgs/development/python2-modules/wsproto/default.nix (renamed from pkgs/development/python-modules/wsproto/0.14.nix)0
-rw-r--r--pkgs/development/python2-modules/wxPython/default.nix (renamed from pkgs/development/python-modules/wxPython/3.0.nix)0
-rw-r--r--pkgs/development/python2-modules/zipp/default.nix (renamed from pkgs/development/python-modules/zipp/1.nix)0
-rw-r--r--pkgs/development/tools/pur/default.nix3
-rw-r--r--pkgs/tools/misc/csvs-to-sqlite/default.nix3
-rw-r--r--pkgs/top-level/python-packages.nix21
-rw-r--r--pkgs/top-level/python2-packages.nix144
82 files changed, 251 insertions, 96 deletions
diff --git a/pkgs/applications/misc/haxor-news/default.nix b/pkgs/applications/misc/haxor-news/default.nix
index 43c2eb24224..c93d31f6630 100644
--- a/pkgs/applications/misc/haxor-news/default.nix
+++ b/pkgs/applications/misc/haxor-news/default.nix
@@ -15,7 +15,8 @@ let
           sha256 = "09h1153wgr5x2ny7ds0w2m81n3bb9j8hjb8sjfnrg506r01clkyx";
         };
       });
-      click = self.callPackage ../../../development/python-modules/click/7.nix { };
+      # Use click 7
+      click = self.callPackage ../../../development/python2-modules/click/default.nix { };
     };
   };
 in
diff --git a/pkgs/applications/misc/privacyidea/default.nix b/pkgs/applications/misc/privacyidea/default.nix
index 912cb9b94b1..2a3a1a47410 100644
--- a/pkgs/applications/misc/privacyidea/default.nix
+++ b/pkgs/applications/misc/privacyidea/default.nix
@@ -20,8 +20,8 @@ let
           sha256 = "ae2f05671588762dd83a21d8b18c51fe355e86783e24594995ff8d7380dffe38";
         };
       });
-      werkzeug = self.callPackage ../../../development/python-modules/werkzeug/1.nix { };
-      flask = self.callPackage ../../../development/python-modules/flask/1.nix { };
+      werkzeug = self.callPackage ../../../development/python2-modules/werkzeug { };
+      flask = self.callPackage ../../../development/python2-modules/flask { };
       sqlsoup = super.sqlsoup.overrideAttrs ({ meta ? {}, ... }: {
         meta = meta // { broken = false; };
       });
diff --git a/pkgs/development/python-modules/aiohttp-apispec/unstable.nix b/pkgs/applications/networking/p2p/tribler/aiohttp-apispec.nix
index 73a28de7b40..4e1f5ee6ca7 100644
--- a/pkgs/development/python-modules/aiohttp-apispec/unstable.nix
+++ b/pkgs/applications/networking/p2p/tribler/aiohttp-apispec.nix
@@ -3,8 +3,8 @@
 }:
 
 let
-  apispec3 = callPackage ../apispec/3.nix {};
-  jinja2 = callPackage ../jinja2/2.nix {};
+  apispec3 = callPackage ./apispec.nix {};
+  jinja2 = callPackage ../../../../development/python2-modules/jinja2 {};
 in
 buildPythonPackage rec {
   pname = "aiohttp-apispec";
diff --git a/pkgs/development/python-modules/apispec/3.nix b/pkgs/applications/networking/p2p/tribler/apispec.nix
index e60a440df3f..e60a440df3f 100644
--- a/pkgs/development/python-modules/apispec/3.nix
+++ b/pkgs/applications/networking/p2p/tribler/apispec.nix
diff --git a/pkgs/applications/networking/p2p/tribler/default.nix b/pkgs/applications/networking/p2p/tribler/default.nix
index 774aea642d4..6a8f93a2938 100644
--- a/pkgs/applications/networking/p2p/tribler/default.nix
+++ b/pkgs/applications/networking/p2p/tribler/default.nix
@@ -6,8 +6,7 @@ let
   libtorrent = (python3.pkgs.toPythonModule (
     libtorrent-rasterbar-1_2_x.override { python = python3; })).python;
 
-  aiohttp-apispec = python3.pkgs.callPackage 
-    ../../../../development/python-modules/aiohttp-apispec/unstable.nix { };
+  aiohttp-apispec = python3.pkgs.callPackage ./aiohttp-apispec.nix { };
 in
 stdenv.mkDerivation rec {
   pname = "tribler";
diff --git a/pkgs/applications/office/watson/default.nix b/pkgs/applications/office/watson/default.nix
index 7584debc20f..cf4fa359749 100644
--- a/pkgs/applications/office/watson/default.nix
+++ b/pkgs/applications/office/watson/default.nix
@@ -10,7 +10,8 @@ let
   # Workaround the issue by providing click 7 explicitly.
   python = python3.override {
     packageOverrides = self: super: {
-      click = self.callPackage ../../../development/python-modules/click/7.nix { };
+      # Use click 7
+      click = self.callPackage ../../../development/python2-modules/click/default.nix { };
     };
   };
 in with python.pkgs; buildPythonApplication rec {
diff --git a/pkgs/development/libraries/science/math/fenics/default.nix b/pkgs/development/libraries/science/math/fenics/default.nix
index e80607ab955..b65ab0bf63d 100644
--- a/pkgs/development/libraries/science/math/fenics/default.nix
+++ b/pkgs/development/libraries/science/math/fenics/default.nix
@@ -30,6 +30,15 @@
 let
   version = "2019.1.0";
 
+  # TODO: test with newer pytest
+  pytest = pythonPackages.callPackage
+    ../../../../python2-modules/pytest {
+      # hypothesis tests require pytest that causes dependency cycle
+      hypothesis = pythonPackages.hypothesis.override {
+        doCheck = false;
+      };
+    };
+
   dijitso = pythonPackages.buildPythonPackage {
     pname = "dijitso";
     inherit version;
diff --git a/pkgs/development/python-modules/Pygments/2_5.nix b/pkgs/development/python2-modules/Pygments/default.nix
index aa59c370d2e..aa59c370d2e 100644
--- a/pkgs/development/python-modules/Pygments/2_5.nix
+++ b/pkgs/development/python2-modules/Pygments/default.nix
diff --git a/pkgs/development/python-modules/TurboCheetah/default.nix b/pkgs/development/python2-modules/TurboCheetah/default.nix
index 717b2b5f278..717b2b5f278 100644
--- a/pkgs/development/python-modules/TurboCheetah/default.nix
+++ b/pkgs/development/python2-modules/TurboCheetah/default.nix
diff --git a/pkgs/development/python-modules/bootstrapped-pip/2.nix b/pkgs/development/python2-modules/bootstrapped-pip/default.nix
index 2fc8b8b8d4b..2fc8b8b8d4b 100644
--- a/pkgs/development/python-modules/bootstrapped-pip/2.nix
+++ b/pkgs/development/python2-modules/bootstrapped-pip/default.nix
diff --git a/pkgs/development/python-modules/boto3/1_17.nix b/pkgs/development/python2-modules/boto3/default.nix
index c8b8210f650..c8b8210f650 100644
--- a/pkgs/development/python-modules/boto3/1_17.nix
+++ b/pkgs/development/python2-modules/boto3/default.nix
diff --git a/pkgs/development/python-modules/botocore/1_20.nix b/pkgs/development/python2-modules/botocore/default.nix
index d05c2decf49..d05c2decf49 100644
--- a/pkgs/development/python-modules/botocore/1_20.nix
+++ b/pkgs/development/python2-modules/botocore/default.nix
diff --git a/pkgs/development/python-modules/certifi/python2.nix b/pkgs/development/python2-modules/certifi/default.nix
index 529d5b1fb99..529d5b1fb99 100644
--- a/pkgs/development/python-modules/certifi/python2.nix
+++ b/pkgs/development/python2-modules/certifi/default.nix
diff --git a/pkgs/development/python-modules/chardet/2.nix b/pkgs/development/python2-modules/chardet/default.nix
index 5f6fe0a672a..5f6fe0a672a 100644
--- a/pkgs/development/python-modules/chardet/2.nix
+++ b/pkgs/development/python2-modules/chardet/default.nix
diff --git a/pkgs/development/python-modules/cheetah/default.nix b/pkgs/development/python2-modules/cheetah/default.nix
index 1cee46fa725..1cee46fa725 100644
--- a/pkgs/development/python-modules/cheetah/default.nix
+++ b/pkgs/development/python2-modules/cheetah/default.nix
diff --git a/pkgs/development/python-modules/click/7.nix b/pkgs/development/python2-modules/click/default.nix
index fcbd4d0981a..fcbd4d0981a 100644
--- a/pkgs/development/python-modules/click/7.nix
+++ b/pkgs/development/python2-modules/click/default.nix
diff --git a/pkgs/development/python-modules/configparser/4.nix b/pkgs/development/python2-modules/configparser/default.nix
index 0f3b6e0b491..0f3b6e0b491 100644
--- a/pkgs/development/python-modules/configparser/4.nix
+++ b/pkgs/development/python2-modules/configparser/default.nix
diff --git a/pkgs/development/python-modules/construct/2.10.54.nix b/pkgs/development/python2-modules/construct/default.nix
index 5bbbd150145..5bbbd150145 100644
--- a/pkgs/development/python-modules/construct/2.10.54.nix
+++ b/pkgs/development/python2-modules/construct/default.nix
diff --git a/pkgs/development/python-modules/contextlib2/0.nix b/pkgs/development/python2-modules/contextlib2/default.nix
index 38d9fb696e2..38d9fb696e2 100644
--- a/pkgs/development/python-modules/contextlib2/0.nix
+++ b/pkgs/development/python2-modules/contextlib2/default.nix
diff --git a/pkgs/development/python-modules/cryptography/vectors-3.3.nix b/pkgs/development/python2-modules/cryptography-vectors/default.nix
index f9b7c525237..f9b7c525237 100644
--- a/pkgs/development/python-modules/cryptography/vectors-3.3.nix
+++ b/pkgs/development/python2-modules/cryptography-vectors/default.nix
diff --git a/pkgs/development/python-modules/cryptography/3.3.nix b/pkgs/development/python2-modules/cryptography/default.nix
index 357bb35dacf..357bb35dacf 100644
--- a/pkgs/development/python-modules/cryptography/3.3.nix
+++ b/pkgs/development/python2-modules/cryptography/default.nix
diff --git a/pkgs/development/python-modules/decorator/4.nix b/pkgs/development/python2-modules/decorator/default.nix
index 8e8fd28f0b5..8e8fd28f0b5 100644
--- a/pkgs/development/python-modules/decorator/4.nix
+++ b/pkgs/development/python2-modules/decorator/default.nix
diff --git a/pkgs/development/python-modules/enum/default.nix b/pkgs/development/python2-modules/enum/default.nix
index db827601d5d..db827601d5d 100644
--- a/pkgs/development/python-modules/enum/default.nix
+++ b/pkgs/development/python2-modules/enum/default.nix
diff --git a/pkgs/development/python-modules/filelock/3.2.nix b/pkgs/development/python2-modules/filelock/default.nix
index 401fdf582ff..401fdf582ff 100644
--- a/pkgs/development/python-modules/filelock/3.2.nix
+++ b/pkgs/development/python2-modules/filelock/default.nix
diff --git a/pkgs/development/python-modules/flask/1.nix b/pkgs/development/python2-modules/flask/default.nix
index 27f436c3c53..27f436c3c53 100644
--- a/pkgs/development/python-modules/flask/1.nix
+++ b/pkgs/development/python2-modules/flask/default.nix
diff --git a/pkgs/development/python-modules/freezegun/0.3.nix b/pkgs/development/python2-modules/freezegun/default.nix
index 7f77616f2a4..7f77616f2a4 100644
--- a/pkgs/development/python-modules/freezegun/0.3.nix
+++ b/pkgs/development/python2-modules/freezegun/default.nix
diff --git a/pkgs/development/python-modules/futures/default.nix b/pkgs/development/python2-modules/futures/default.nix
index bc19a31927a..bc19a31927a 100644
--- a/pkgs/development/python-modules/futures/default.nix
+++ b/pkgs/development/python2-modules/futures/default.nix
diff --git a/pkgs/development/python-modules/google-apputils/default.nix b/pkgs/development/python2-modules/google-apputils/default.nix
index 225adf348d1..225adf348d1 100644
--- a/pkgs/development/python-modules/google-apputils/default.nix
+++ b/pkgs/development/python2-modules/google-apputils/default.nix
diff --git a/pkgs/development/python-modules/httpretty/0.nix b/pkgs/development/python2-modules/httpretty/default.nix
index 92ed5c6616e..92ed5c6616e 100644
--- a/pkgs/development/python-modules/httpretty/0.nix
+++ b/pkgs/development/python2-modules/httpretty/default.nix
diff --git a/pkgs/development/python-modules/hypothesis/2.nix b/pkgs/development/python2-modules/hypothesis/default.nix
index 47bc8860bc5..47bc8860bc5 100644
--- a/pkgs/development/python-modules/hypothesis/2.nix
+++ b/pkgs/development/python2-modules/hypothesis/default.nix
diff --git a/pkgs/development/python-modules/idna/2.nix b/pkgs/development/python2-modules/idna/default.nix
index 9a1c1dc271f..9a1c1dc271f 100644
--- a/pkgs/development/python-modules/idna/2.nix
+++ b/pkgs/development/python2-modules/idna/default.nix
diff --git a/pkgs/development/python-modules/importlib-metadata/2.nix b/pkgs/development/python2-modules/importlib-metadata/default.nix
index f50b2c07c1d..f50b2c07c1d 100644
--- a/pkgs/development/python-modules/importlib-metadata/2.nix
+++ b/pkgs/development/python2-modules/importlib-metadata/default.nix
diff --git a/pkgs/development/python-modules/ipaddr/default.nix b/pkgs/development/python2-modules/ipaddr/default.nix
index b29ee917928..b29ee917928 100644
--- a/pkgs/development/python-modules/ipaddr/default.nix
+++ b/pkgs/development/python2-modules/ipaddr/default.nix
diff --git a/pkgs/development/python-modules/itsdangerous/1.nix b/pkgs/development/python2-modules/itsdangerous/default.nix
index d1669a1ed5b..d1669a1ed5b 100644
--- a/pkgs/development/python-modules/itsdangerous/1.nix
+++ b/pkgs/development/python2-modules/itsdangerous/default.nix
diff --git a/pkgs/development/python-modules/jinja2/2.nix b/pkgs/development/python2-modules/jinja2/default.nix
index 02127a50df7..02127a50df7 100644
--- a/pkgs/development/python-modules/jinja2/2.nix
+++ b/pkgs/development/python2-modules/jinja2/default.nix
diff --git a/pkgs/development/python-modules/libcloud/2.nix b/pkgs/development/python2-modules/libcloud/default.nix
index 504e7753a97..504e7753a97 100644
--- a/pkgs/development/python-modules/libcloud/2.nix
+++ b/pkgs/development/python2-modules/libcloud/default.nix
diff --git a/pkgs/development/python-modules/lpod/default.nix b/pkgs/development/python2-modules/lpod/default.nix
index 9c719d234f8..9c719d234f8 100644
--- a/pkgs/development/python-modules/lpod/default.nix
+++ b/pkgs/development/python2-modules/lpod/default.nix
diff --git a/pkgs/development/python-modules/marisa/default.nix b/pkgs/development/python2-modules/marisa/default.nix
index 93a4ccb959f..93a4ccb959f 100644
--- a/pkgs/development/python-modules/marisa/default.nix
+++ b/pkgs/development/python2-modules/marisa/default.nix
diff --git a/pkgs/development/python-modules/markdown/3_1.nix b/pkgs/development/python2-modules/markdown/default.nix
index 13ed2f1744a..13ed2f1744a 100644
--- a/pkgs/development/python-modules/markdown/3_1.nix
+++ b/pkgs/development/python2-modules/markdown/default.nix
diff --git a/pkgs/development/python-modules/markupsafe/1.nix b/pkgs/development/python2-modules/markupsafe/default.nix
index ae0878c7a97..ae0878c7a97 100644
--- a/pkgs/development/python-modules/markupsafe/1.nix
+++ b/pkgs/development/python2-modules/markupsafe/default.nix
diff --git a/pkgs/development/python-modules/mock/2.nix b/pkgs/development/python2-modules/mock/default.nix
index 190297b41a2..190297b41a2 100644
--- a/pkgs/development/python-modules/mock/2.nix
+++ b/pkgs/development/python2-modules/mock/default.nix
diff --git a/pkgs/development/python-modules/more-itertools/2.7.nix b/pkgs/development/python2-modules/more-itertools/default.nix
index f9a6ac732e2..f9a6ac732e2 100644
--- a/pkgs/development/python-modules/more-itertools/2.7.nix
+++ b/pkgs/development/python2-modules/more-itertools/default.nix
diff --git a/pkgs/development/python-modules/mutagen/1.43.nix b/pkgs/development/python2-modules/mutagen/default.nix
index 7f2e9f452b4..7f2e9f452b4 100644
--- a/pkgs/development/python-modules/mutagen/1.43.nix
+++ b/pkgs/development/python2-modules/mutagen/default.nix
diff --git a/pkgs/development/python-modules/numpy/1.16.nix b/pkgs/development/python2-modules/numpy/default.nix
index 1ab958a15f0..b1d71bd66f3 100644
--- a/pkgs/development/python-modules/numpy/1.16.nix
+++ b/pkgs/development/python2-modules/numpy/default.nix
@@ -54,7 +54,7 @@ in buildPythonPackage rec {
     # We patch cpython/distutils to fix https://bugs.python.org/issue1222585
     # Patching of numpy.distutils is needed to prevent it from undoing the
     # patch to distutils.
-    ./numpy-distutils-C++_1.16.patch
+    ./numpy-distutils-C++.patch
   ];
 
   preConfigure = ''
diff --git a/pkgs/development/python-modules/numpy/numpy-distutils-C++_1.16.patch b/pkgs/development/python2-modules/numpy/numpy-distutils-C++.patch
index b2626ea26e5..b2626ea26e5 100644
--- a/pkgs/development/python-modules/numpy/numpy-distutils-C++_1.16.patch
+++ b/pkgs/development/python2-modules/numpy/numpy-distutils-C++.patch
diff --git a/pkgs/development/python-modules/packaging/2.nix b/pkgs/development/python2-modules/packaging/default.nix
index 0f9e61859a1..0f9e61859a1 100644
--- a/pkgs/development/python-modules/packaging/2.nix
+++ b/pkgs/development/python2-modules/packaging/default.nix
diff --git a/pkgs/development/python-modules/pillow/6.nix b/pkgs/development/python2-modules/pillow/default.nix
index 61242c894a8..61242c894a8 100644
--- a/pkgs/development/python-modules/pillow/6.nix
+++ b/pkgs/development/python2-modules/pillow/default.nix
diff --git a/pkgs/development/python2-modules/pillow/generic.nix b/pkgs/development/python2-modules/pillow/generic.nix
new file mode 100644
index 00000000000..3e33f1a8aa0
--- /dev/null
+++ b/pkgs/development/python2-modules/pillow/generic.nix
@@ -0,0 +1,77 @@
+{ pname
+, version
+, disabled
+, src
+, meta
+, ...
+}@args:
+
+with args;
+
+buildPythonPackage rec {
+  inherit pname version src meta;
+
+  # Disable imagefont tests, because they don't work well with infinality:
+  # https://github.com/python-pillow/Pillow/issues/1259
+  postPatch = ''
+    rm Tests/test_imagefont.py
+  '';
+
+  # Disable darwin tests which require executables: `iconutil` and `screencapture`
+  disabledTests = lib.optionals stdenv.isDarwin [
+    "test_grab"
+    "test_grabclipboard"
+    "test_save"
+
+    # pillow-simd
+    "test_roundtrip"
+    "test_basic"
+  ] ++ lib.optionals (lib.versions.major version == "6") [
+    # RuntimeError: Error setting from dictionary
+    "test_custom_metadata"
+  ];
+
+  propagatedBuildInputs = [ olefile ]
+    ++ lib.optionals (lib.versionAtLeast version "8.2.0") [ defusedxml ];
+
+  checkInputs = [ pytestCheckHook pyroma numpy ];
+
+  buildInputs = [ freetype libjpeg openjpeg libimagequant zlib libtiff libwebp tcl lcms2 ]
+    ++ lib.optionals (lib.versionAtLeast version "7.1.0") [ libxcb ]
+    ++ lib.optionals (isPyPy) [ tk libX11 ];
+
+  # NOTE: we use LCMS_ROOT as WEBP root since there is not other setting for webp.
+  # NOTE: The Pillow install script will, by default, add paths like /usr/lib
+  # and /usr/include to the search paths. This can break things when building
+  # on a non-NixOS system that has some libraries installed that are not
+  # installed in Nix (for example, Arch Linux has jpeg2000 but Nix doesn't
+  # build Pillow with this support). We patch the `disable_platform_guessing`
+  # setting here, instead of passing the `--disable-platform-guessing`
+  # command-line option, since the command-line option doesn't work when we run
+  # tests.
+  preConfigure = let
+    libinclude' = pkg: ''"${pkg.out}/lib", "${pkg.out}/include"'';
+    libinclude = pkg: ''"${pkg.out}/lib", "${pkg.dev}/include"'';
+  in ''
+    sed -i "setup.py" \
+        -e 's|^FREETYPE_ROOT =.*$|FREETYPE_ROOT = ${libinclude freetype}|g ;
+            s|^JPEG_ROOT =.*$|JPEG_ROOT = ${libinclude libjpeg}|g ;
+            s|^JPEG2K_ROOT =.*$|JPEG2K_ROOT = ${libinclude openjpeg}|g ;
+            s|^IMAGEQUANT_ROOT =.*$|IMAGEQUANT_ROOT = ${libinclude' libimagequant}|g ;
+            s|^ZLIB_ROOT =.*$|ZLIB_ROOT = ${libinclude zlib}|g ;
+            s|^LCMS_ROOT =.*$|LCMS_ROOT = ${libinclude lcms2}|g ;
+            s|^TIFF_ROOT =.*$|TIFF_ROOT = ${libinclude libtiff}|g ;
+            s|^TCL_ROOT=.*$|TCL_ROOT = ${libinclude' tcl}|g ;
+            s|self\.disable_platform_guessing = None|self.disable_platform_guessing = True|g ;'
+    export LDFLAGS="$LDFLAGS -L${libwebp}/lib"
+    export CFLAGS="$CFLAGS -I${libwebp}/include"
+  '' + lib.optionalString (lib.versionAtLeast version "7.1.0") ''
+    export LDFLAGS="$LDFLAGS -L${libxcb}/lib"
+    export CFLAGS="$CFLAGS -I${libxcb.dev}/include"
+  '' + lib.optionalString stdenv.isDarwin ''
+    # Remove impurities
+    substituteInPlace setup.py \
+      --replace '"/Library/Frameworks",' "" \
+      --replace '"/System/Library/Frameworks"' ""
+  '';
+}
diff --git a/pkgs/development/python-modules/pip/20.nix b/pkgs/development/python2-modules/pip/default.nix
index e3666d6a796..e3666d6a796 100644
--- a/pkgs/development/python-modules/pip/20.nix
+++ b/pkgs/development/python2-modules/pip/default.nix
diff --git a/pkgs/development/python-modules/pluggy/0.nix b/pkgs/development/python2-modules/pluggy/default.nix
index 30fa2e1945b..30fa2e1945b 100644
--- a/pkgs/development/python-modules/pluggy/0.nix
+++ b/pkgs/development/python2-modules/pluggy/default.nix
diff --git a/pkgs/development/python-modules/prettytable/1.nix b/pkgs/development/python2-modules/prettytable/default.nix
index 8191e9b5f57..8191e9b5f57 100644
--- a/pkgs/development/python-modules/prettytable/1.nix
+++ b/pkgs/development/python2-modules/prettytable/default.nix
diff --git a/pkgs/development/python2-modules/protobuf/default.nix b/pkgs/development/python2-modules/protobuf/default.nix
new file mode 100644
index 00000000000..30e9fbf9ea7
--- /dev/null
+++ b/pkgs/development/python2-modules/protobuf/default.nix
@@ -0,0 +1,59 @@
+{ buildPackages
+, lib
+, fetchpatch
+, python
+, buildPythonPackage
+, isPy37
+, protobuf
+, google-apputils ? null
+, six
+, pyext
+, isPy27
+, disabled
+, doCheck ? true
+}:
+
+buildPythonPackage {
+  inherit (protobuf) pname src version;
+  inherit disabled;
+  doCheck = doCheck && !isPy27; # setuptools>=41.4 no longer collects correctly on python2
+
+  propagatedBuildInputs = [ six ] ++ lib.optionals isPy27 [ google-apputils ];
+  propagatedNativeBuildInputs = [ buildPackages.protobuf ]; # For protoc.
+  nativeBuildInputs = [ pyext ] ++ lib.optionals isPy27 [ google-apputils ];
+  buildInputs = [ protobuf ];
+
+  patches = lib.optional (isPy37 && (lib.versionOlder protobuf.version "3.6.1.2"))
+    # Python 3.7 compatibility (not needed for protobuf >= 3.6.1.2)
+    (fetchpatch {
+      url = "https://github.com/protocolbuffers/protobuf/commit/0a59054c30e4f0ba10f10acfc1d7f3814c63e1a7.patch";
+      sha256 = "09hw22y3423v8bbmc9xm07znwdxfbya6rp78d4zqw6fisdvjkqf1";
+      stripLen = 1;
+    })
+  ;
+
+  prePatch = ''
+    while [ ! -d python ]; do
+      cd *
+    done
+    cd python
+  '';
+
+  setupPyGlobalFlags = lib.optional (lib.versionAtLeast protobuf.version "2.6.0")
+    "--cpp_implementation";
+
+  pythonImportsCheck = [
+    "google.protobuf"
+  ] ++ lib.optionals (lib.versionAtLeast protobuf.version "2.6.0") [
+    "google.protobuf.internal._api_implementation" # Verify that --cpp_implementation worked
+  ];
+
+  meta = with lib; {
+    description = "Protocol Buffers are Google's data interchange format";
+    homepage = "https://developers.google.com/protocol-buffers/";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ knedlsepp ];
+  };
+
+  passthru.protobuf = protobuf;
+}
diff --git a/pkgs/development/python-modules/pycairo/1.18.nix b/pkgs/development/python2-modules/pycairo/default.nix
index 9da4da1479c..9da4da1479c 100644
--- a/pkgs/development/python-modules/pycairo/1.18.nix
+++ b/pkgs/development/python2-modules/pycairo/default.nix
diff --git a/pkgs/development/python-modules/pygobject/3.36.nix b/pkgs/development/python2-modules/pygobject/default.nix
index ce9410eaf8b..ce9410eaf8b 100644
--- a/pkgs/development/python-modules/pygobject/3.36.nix
+++ b/pkgs/development/python2-modules/pygobject/default.nix
diff --git a/pkgs/development/python-modules/pygtk/default.nix b/pkgs/development/python2-modules/pygtk/default.nix
index 938b55630c0..938b55630c0 100644
--- a/pkgs/development/python-modules/pygtk/default.nix
+++ b/pkgs/development/python2-modules/pygtk/default.nix
diff --git a/pkgs/development/python-modules/pyjwt/1.nix b/pkgs/development/python2-modules/pyjwt/default.nix
index 9978302d1cc..9978302d1cc 100644
--- a/pkgs/development/python-modules/pyjwt/1.nix
+++ b/pkgs/development/python2-modules/pyjwt/default.nix
diff --git a/pkgs/development/python-modules/pyroma/2.nix b/pkgs/development/python2-modules/pyroma/default.nix
index 9fee5ec56c0..9fee5ec56c0 100644
--- a/pkgs/development/python-modules/pyroma/2.nix
+++ b/pkgs/development/python2-modules/pyroma/default.nix
diff --git a/pkgs/development/python-modules/pysqlite/default.nix b/pkgs/development/python2-modules/pysqlite/default.nix
index 09cc312223a..09cc312223a 100644
--- a/pkgs/development/python-modules/pysqlite/default.nix
+++ b/pkgs/development/python2-modules/pysqlite/default.nix
diff --git a/pkgs/development/python-modules/pytest-runner/2.nix b/pkgs/development/python2-modules/pytest-runner/default.nix
index bea83146c37..bea83146c37 100644
--- a/pkgs/development/python-modules/pytest-runner/2.nix
+++ b/pkgs/development/python2-modules/pytest-runner/default.nix
diff --git a/pkgs/development/python-modules/pytest-xdist/1.nix b/pkgs/development/python2-modules/pytest-xdist/default.nix
index 466d86f50f7..466d86f50f7 100644
--- a/pkgs/development/python-modules/pytest-xdist/1.nix
+++ b/pkgs/development/python2-modules/pytest-xdist/default.nix
diff --git a/pkgs/development/python-modules/pytest/4.nix b/pkgs/development/python2-modules/pytest/default.nix
index 0a0ae571ba0..0a0ae571ba0 100644
--- a/pkgs/development/python-modules/pytest/4.nix
+++ b/pkgs/development/python2-modules/pytest/default.nix
diff --git a/pkgs/development/python-modules/pyyaml/5.nix b/pkgs/development/python2-modules/pyyaml/default.nix
index 3edfae90e66..3edfae90e66 100644
--- a/pkgs/development/python-modules/pyyaml/5.nix
+++ b/pkgs/development/python2-modules/pyyaml/default.nix
diff --git a/pkgs/development/python-modules/qpid-python/default.nix b/pkgs/development/python2-modules/qpid-python/default.nix
index e22b3215e81..e22b3215e81 100644
--- a/pkgs/development/python-modules/qpid-python/default.nix
+++ b/pkgs/development/python2-modules/qpid-python/default.nix
diff --git a/pkgs/development/python-modules/s3transfer/0_4.nix b/pkgs/development/python2-modules/s3transfer/default.nix
index 8cfd324f00a..8cfd324f00a 100644
--- a/pkgs/development/python-modules/s3transfer/0_4.nix
+++ b/pkgs/development/python2-modules/s3transfer/default.nix
diff --git a/pkgs/development/python-modules/scandir/default.nix b/pkgs/development/python2-modules/scandir/default.nix
index f92b1f5a6ed..f92b1f5a6ed 100644
--- a/pkgs/development/python-modules/scandir/default.nix
+++ b/pkgs/development/python2-modules/scandir/default.nix
diff --git a/pkgs/development/python-modules/setuptools-scm/2.nix b/pkgs/development/python2-modules/setuptools-scm/default.nix
index 4cf6f16fedf..4cf6f16fedf 100644
--- a/pkgs/development/python-modules/setuptools-scm/2.nix
+++ b/pkgs/development/python2-modules/setuptools-scm/default.nix
diff --git a/pkgs/development/python-modules/setuptools/44.0.nix b/pkgs/development/python2-modules/setuptools/default.nix
index ca70a106151..ca70a106151 100644
--- a/pkgs/development/python-modules/setuptools/44.0.nix
+++ b/pkgs/development/python2-modules/setuptools/default.nix
diff --git a/pkgs/development/python2-modules/setuptools/tag-date.patch b/pkgs/development/python2-modules/setuptools/tag-date.patch
new file mode 100644
index 00000000000..441177a5d17
--- /dev/null
+++ b/pkgs/development/python2-modules/setuptools/tag-date.patch
@@ -0,0 +1,12 @@
+diff --git a/setup.cfg b/setup.cfg
+index f23714b6..8aaeb330 100644
+--- a/setup.cfg
++++ b/setup.cfg
+@@ -1,6 +1,6 @@
+ [egg_info]
+ tag_build = .post
+-tag_date = 1
++tag_date = 0
+
+ [aliases]
+ clean_egg_info = egg_info -Db ''
diff --git a/pkgs/development/python-modules/sphinx/2.nix b/pkgs/development/python2-modules/sphinx/default.nix
index 0424b9b4c39..0424b9b4c39 100644
--- a/pkgs/development/python-modules/sphinx/2.nix
+++ b/pkgs/development/python2-modules/sphinx/default.nix
diff --git a/pkgs/development/python-modules/sphinx/python2-lexer.patch b/pkgs/development/python2-modules/sphinx/python2-lexer.patch
index cf4a243315a..cf4a243315a 100644
--- a/pkgs/development/python-modules/sphinx/python2-lexer.patch
+++ b/pkgs/development/python2-modules/sphinx/python2-lexer.patch
diff --git a/pkgs/development/python-modules/sphinxcontrib-websupport/1_1.nix b/pkgs/development/python2-modules/sphinxcontrib-websupport/default.nix
index b1bdf6a0dff..b1bdf6a0dff 100644
--- a/pkgs/development/python-modules/sphinxcontrib-websupport/1_1.nix
+++ b/pkgs/development/python2-modules/sphinxcontrib-websupport/default.nix
diff --git a/pkgs/development/python-modules/typing/default.nix b/pkgs/development/python2-modules/typing/default.nix
index b3dcea20323..b3dcea20323 100644
--- a/pkgs/development/python-modules/typing/default.nix
+++ b/pkgs/development/python2-modules/typing/default.nix
diff --git a/pkgs/development/python-modules/urllib3/2.nix b/pkgs/development/python2-modules/urllib3/default.nix
index a52e68eac5e..a52e68eac5e 100644
--- a/pkgs/development/python-modules/urllib3/2.nix
+++ b/pkgs/development/python2-modules/urllib3/default.nix
diff --git a/pkgs/development/python-modules/vcrpy/3.nix b/pkgs/development/python2-modules/vcrpy/default.nix
index ddd4015aad1..ddd4015aad1 100644
--- a/pkgs/development/python-modules/vcrpy/3.nix
+++ b/pkgs/development/python2-modules/vcrpy/default.nix
diff --git a/pkgs/development/python-modules/werkzeug/1.nix b/pkgs/development/python2-modules/werkzeug/default.nix
index c03cc6935d2..c03cc6935d2 100644
--- a/pkgs/development/python-modules/werkzeug/1.nix
+++ b/pkgs/development/python2-modules/werkzeug/default.nix
diff --git a/pkgs/development/python-modules/wsproto/0.14.nix b/pkgs/development/python2-modules/wsproto/default.nix
index a8488d8c4ab..a8488d8c4ab 100644
--- a/pkgs/development/python-modules/wsproto/0.14.nix
+++ b/pkgs/development/python2-modules/wsproto/default.nix
diff --git a/pkgs/development/python-modules/wxPython/3.0.nix b/pkgs/development/python2-modules/wxPython/default.nix
index 6649c5f6931..6649c5f6931 100644
--- a/pkgs/development/python-modules/wxPython/3.0.nix
+++ b/pkgs/development/python2-modules/wxPython/default.nix
diff --git a/pkgs/development/python-modules/zipp/1.nix b/pkgs/development/python2-modules/zipp/default.nix
index 82f100aaa0d..82f100aaa0d 100644
--- a/pkgs/development/python-modules/zipp/1.nix
+++ b/pkgs/development/python2-modules/zipp/default.nix
diff --git a/pkgs/development/tools/pur/default.nix b/pkgs/development/tools/pur/default.nix
index dc37e3fa20f..359f3519acd 100644
--- a/pkgs/development/tools/pur/default.nix
+++ b/pkgs/development/tools/pur/default.nix
@@ -7,7 +7,8 @@ let
   py = python3.override {
     packageOverrides = self: super: {
       # newest version doesn't support click >8.0 https://github.com/alanhamlett/pip-update-requirements/issues/38
-      click = self.callPackage ../../../development/python-modules/click/7.nix { };
+      # Use click 7
+      click = self.callPackage ../../../development/python2-modules/click/default.nix { };
     };
   };
   inherit (py.pkgs) buildPythonApplication click pytestCheckHook;
diff --git a/pkgs/tools/misc/csvs-to-sqlite/default.nix b/pkgs/tools/misc/csvs-to-sqlite/default.nix
index b351b6e4efb..1deae6b3f83 100644
--- a/pkgs/tools/misc/csvs-to-sqlite/default.nix
+++ b/pkgs/tools/misc/csvs-to-sqlite/default.nix
@@ -7,7 +7,8 @@ let
   # Workaround the issue by providing click 7 explicitly.
   python = python3.override {
     packageOverrides = self: super: {
-      click = self.callPackage ../../../development/python-modules/click/7.nix { };
+      # Use click 7
+      click = self.callPackage ../../../development/python2-modules/click/default.nix { };
     };
   };
 in with python.pkgs; buildPythonApplication rec {
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index cbe6fba4cd3..2df29237f8d 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -22,10 +22,7 @@ let
 
   namePrefix = python.libPrefix + "-";
 
-  bootstrapped-pip = if isPy3k then
-    callPackage ../development/python-modules/bootstrapped-pip { }
-  else
-    callPackage ../development/python-modules/bootstrapped-pip/2.nix { };
+  bootstrapped-pip = callPackage ../development/python-modules/bootstrapped-pip { };
 
   # Derivations built with `buildPythonPackage` can already be overriden with `override`, `overrideAttrs`, and `overrideDerivation`.
   # This function introduces `overridePythonAttrs` and it overrides the call to `buildPythonPackage`.
@@ -2789,7 +2786,6 @@ in {
   feedparser = callPackage ../development/python-modules/feedparser { };
 
   fenics = callPackage ../development/libraries/science/math/fenics {
-    pytest = self.pytest_4;
     hdf5 = pkgs.hdf5_1_10;
   };
 
@@ -7554,14 +7550,6 @@ in {
 
   pytest = self.pytest_6;
 
-  pytest_4 = callPackage
-    ../development/python-modules/pytest/4.nix {
-      # hypothesis tests require pytest that causes dependency cycle
-      hypothesis = self.hypothesis.override {
-        doCheck = false;
-      };
-    };
-
   pytest_5 = callPackage
     ../development/python-modules/pytest/5.nix {
       # hypothesis tests require pytest that causes dependency cycle
@@ -10335,8 +10323,6 @@ in {
 
   werkzeug = callPackage ../development/python-modules/werkzeug { };
 
-  werkzeug1 = callPackage ../development/python-modules/werkzeug/1.nix { };
-
   west = callPackage ../development/python-modules/west { };
 
   wfuzz = callPackage ../development/python-modules/wfuzz { };
@@ -10407,10 +10393,7 @@ in {
 
   wsnsimpy = callPackage ../development/python-modules/wsnsimpy { };
 
-  wsproto = if (pythonAtLeast "3.6") then
-    callPackage ../development/python-modules/wsproto { }
-  else
-    callPackage ../development/python-modules/wsproto/0.14.nix { };
+  wsproto = callPackage ../development/python-modules/wsproto { };
 
   wtforms = callPackage ../development/python-modules/wtforms { };
 
diff --git a/pkgs/top-level/python2-packages.nix b/pkgs/top-level/python2-packages.nix
index b7d9d4e95a4..4ef13ef604f 100644
--- a/pkgs/top-level/python2-packages.nix
+++ b/pkgs/top-level/python2-packages.nix
@@ -6,125 +6,135 @@ self: super:
 
 with self; with super; {
 
-  boto3 = callPackage ../development/python-modules/boto3/1_17.nix {};
+  bootstrapped-pip = callPackage ../development/python2-modules/bootstrapped-pip { };
 
-  botocore = callPackage ../development/python-modules/botocore/1_20.nix {};
+  boto3 = callPackage ../development/python2-modules/boto3 {};
 
-  certifi = callPackage ../development/python-modules/certifi/python2.nix { };
+  botocore = callPackage ../development/python2-modules/botocore {};
 
-  chardet = callPackage ../development/python-modules/chardet/2.nix { };
+  certifi = callPackage ../development/python2-modules/certifi { };
 
-  cheetah = callPackage ../development/python-modules/cheetah { };
+  chardet = callPackage ../development/python2-modules/chardet { };
 
-  click = callPackage ../development/python-modules/click/7.nix { };
+  cheetah = callPackage ../development/python2-modules/cheetah { };
 
-  configparser = callPackage ../development/python-modules/configparser/4.nix { };
+  click = callPackage ../development/python2-modules/click { };
 
-  construct = callPackage ../development/python-modules/construct/2.10.54.nix { };
+  configparser = callPackage ../development/python2-modules/configparser { };
 
-  contextlib2 = callPackage ../development/python-modules/contextlib2/0.nix { };
+  construct = callPackage ../development/python2-modules/construct { };
 
-  cryptography = callPackage ../development/python-modules/cryptography/3.3.nix { };
+  contextlib2 = callPackage ../development/python2-modules/contextlib2 { };
 
-  cryptography_vectors = callPackage ../development/python-modules/cryptography/vectors-3.3.nix { };
+  cryptography = callPackage ../development/python2-modules/cryptography { };
 
-  decorator = callPackage ../development/python-modules/decorator/4.nix { };
+  cryptography_vectors = callPackage ../development/python2-modules/cryptography-vectors { };
 
-  enum = callPackage ../development/python-modules/enum { };
+  decorator = callPackage ../development/python2-modules/decorator { };
 
-  filelock =  callPackage ../development/python-modules/filelock/3.2.nix { };
+  enum = callPackage ../development/python2-modules/enum { };
 
-  flask = callPackage ../development/python-modules/flask/1.nix { };
+  filelock =  callPackage ../development/python2-modules/filelock { };
 
-  freezegun = callPackage ../development/python-modules/freezegun/0.3.nix { };
+  flask = callPackage ../development/python2-modules/flask { };
 
-  futures = callPackage ../development/python-modules/futures { };
+  freezegun = callPackage ../development/python2-modules/freezegun { };
 
-  google-apputils = callPackage ../development/python-modules/google-apputils { };
+  futures = callPackage ../development/python2-modules/futures { };
 
-  httpretty = callPackage ../development/python-modules/httpretty/0.nix { };
+  google-apputils = callPackage ../development/python2-modules/google-apputils { };
 
-  hypothesis = callPackage ../development/python-modules/hypothesis/2.nix { };
+  httpretty = callPackage ../development/python2-modules/httpretty { };
 
-  idna = callPackage ../development/python-modules/idna/2.nix { };
+  hypothesis = callPackage ../development/python2-modules/hypothesis { };
 
-  importlib-metadata = callPackage ../development/python-modules/importlib-metadata/2.nix { };
+  idna = callPackage ../development/python2-modules/idna { };
 
-  ipaddr = callPackage ../development/python-modules/ipaddr { };
+  importlib-metadata = callPackage ../development/python2-modules/importlib-metadata { };
 
-  itsdangerous = callPackage ../development/python-modules/itsdangerous/1.nix { };
+  ipaddr = callPackage ../development/python2-modules/ipaddr { };
 
-  jinja2 = callPackage ../development/python-modules/jinja2/2.nix { };
+  itsdangerous = callPackage ../development/python2-modules/itsdangerous { };
 
-  libcloud = callPackage ../development/python-modules/libcloud/2.nix { };
+  jinja2 = callPackage ../development/python2-modules/jinja2 { };
 
-  lpod = callPackage ../development/python-modules/lpod { };
+  libcloud = callPackage ../development/python2-modules/libcloud { };
 
-  marisa = callPackage ../development/python-modules/marisa {
+  lpod = callPackage ../development/python2-modules/lpod { };
+
+  marisa = callPackage ../development/python2-modules/marisa {
     inherit (pkgs) marisa;
   };
 
-  markdown = callPackage ../development/python-modules/markdown/3_1.nix { };
+  markdown = callPackage ../development/python2-modules/markdown { };
 
-  markupsafe = callPackage ../development/python-modules/markupsafe/1.nix { };
+  markupsafe = callPackage ../development/python2-modules/markupsafe { };
 
-  mock = callPackage ../development/python-modules/mock/2.nix { };
+  mock = callPackage ../development/python2-modules/mock { };
 
-  more-itertools = callPackage ../development/python-modules/more-itertools/2.7.nix { };
+  more-itertools = callPackage ../development/python2-modules/more-itertools { };
 
-  mutagen = callPackage ../development/python-modules/mutagen/1.43.nix { };
+  mutagen = callPackage ../development/python2-modules/mutagen { };
 
-  numpy = callPackage ../development/python-modules/numpy/1.16.nix { };
+  numpy = callPackage ../development/python2-modules/numpy { };
 
-  packaging = callPackage ../development/python-modules/packaging/2.nix { };
+  packaging = callPackage ../development/python2-modules/packaging { };
 
-  pillow = callPackage ../development/python-modules/pillow/6.nix {
+  pillow = callPackage ../development/python2-modules/pillow {
     inherit (pkgs) freetype libjpeg zlib libtiff libwebp tcl lcms2 tk;
     inherit (pkgs.xorg) libX11;
   };
 
-  pip = callPackage ../development/python-modules/pip/20.nix { };
+  pip = callPackage ../development/python2-modules/pip { };
 
-  pluggy = callPackage ../development/python-modules/pluggy/0.nix { };
+  pluggy = callPackage ../development/python2-modules/pluggy { };
 
-  prettytable = callPackage ../development/python-modules/prettytable/1.nix { };
+  prettytable = callPackage ../development/python2-modules/prettytable { };
 
-  protobuf = callPackage ../development/python-modules/protobuf {
+  protobuf = callPackage ../development/python2-modules/protobuf {
     disabled = isPyPy;
     protobuf = pkgs.protobuf3_17; # last version compatible with Python 2
   };
 
-  pycairo = callPackage ../development/python-modules/pycairo/1.18.nix {
+  pycairo = callPackage ../development/python2-modules/pycairo {
     inherit (pkgs.buildPackages) meson;
   };
 
-  pygments = callPackage ../development/python-modules/Pygments/2_5.nix { };
+  pygments = callPackage ../development/python2-modules/Pygments { };
 
-  pygobject3 = callPackage ../development/python-modules/pygobject/3.36.nix {
+  pygobject3 = callPackage ../development/python2-modules/pygobject {
     inherit (pkgs) meson;
   };
 
-  pygtk = callPackage ../development/python-modules/pygtk { };
+  pygtk = callPackage ../development/python2-modules/pygtk { };
 
   pyGtkGlade = self.pygtk.override {
     inherit (pkgs.gnome2) libglade;
   };
 
-  pyjwt = callPackage ../development/python-modules/pyjwt/1.nix { };
+  pyjwt = callPackage ../development/python2-modules/pyjwt { };
 
-  pyroma = callPackage ../development/python-modules/pyroma/2.nix { };
+  pyroma = callPackage ../development/python2-modules/pyroma { };
 
-  pysqlite = callPackage ../development/python-modules/pysqlite { };
+  pysqlite = callPackage ../development/python2-modules/pysqlite { };
 
   pytest = pytest_4;
 
-  pytest-runner = callPackage ../development/python-modules/pytest-runner/2.nix { };
+  pytest_4 = callPackage
+    ../development/python2-modules/pytest {
+      # hypothesis tests require pytest that causes dependency cycle
+      hypothesis = self.hypothesis.override {
+        doCheck = false;
+      };
+    };
+
+  pytest-runner = callPackage ../development/python2-modules/pytest-runner { };
 
-  pytest-xdist = callPackage ../development/python-modules/pytest-xdist/1.nix { };
+  pytest-xdist = callPackage ../development/python2-modules/pytest-xdist { };
 
-  pyyaml = callPackage ../development/python-modules/pyyaml/5.nix { };
+  pyyaml = callPackage ../development/python2-modules/pyyaml { };
 
-  qpid-python = callPackage ../development/python-modules/qpid-python { };
+  qpid-python = callPackage ../development/python2-modules/qpid-python { };
 
   recoll = disabled super.recoll;
 
@@ -132,42 +142,44 @@ with self; with super; {
 
   rpm = disabled super.rpm;
 
-  s3transfer = callPackage ../development/python-modules/s3transfer/0_4.nix { };
+  s3transfer = callPackage ../development/python2-modules/s3transfer { };
 
-  scandir = callPackage ../development/python-modules/scandir { };
+  scandir = callPackage ../development/python2-modules/scandir { };
 
   sequoia = disabled super.sequoia;
 
-  setuptools = callPackage ../development/python-modules/setuptools/44.0.nix { };
+  setuptools = callPackage ../development/python2-modules/setuptools { };
+
+  setuptools-scm = callPackage ../development/python2-modules/setuptools-scm { };
 
-  setuptools-scm = callPackage ../development/python-modules/setuptools-scm/2.nix { };
+  sphinxcontrib-websupport = callPackage ../development/python2-modules/sphinxcontrib-websupport { };
 
-  sphinxcontrib-websupport = callPackage ../development/python-modules/sphinxcontrib-websupport/1_1.nix { };
+  sphinx = callPackage ../development/python2-modules/sphinx { };
 
-  sphinx = callPackage ../development/python-modules/sphinx/2.nix { };
+  TurboCheetah = callPackage ../development/python2-modules/TurboCheetah { };
 
-  TurboCheetah = callPackage ../development/python-modules/TurboCheetah { };
+  typing = callPackage ../development/python2-modules/typing { };
 
-  typing = callPackage ../development/python-modules/typing { };
+  urllib3 = callPackage ../development/python2-modules/urllib3 { };
 
-  urllib3 = callPackage ../development/python-modules/urllib3/2.nix { };
+  werkzeug = callPackage ../development/python2-modules/werkzeug { };
 
-  werkzeug = callPackage ../development/python-modules/werkzeug/1.nix { };
+  wsproto = callPackage ../development/python2-modules/wsproto { };
 
-  wxPython30 = callPackage ../development/python-modules/wxPython/3.0.nix {
+  wxPython30 = callPackage ../development/python2-modules/wxPython {
     wxGTK = pkgs.wxGTK30;
   };
 
   wxPython = self.wxPython30;
 
-  vcrpy = callPackage ../development/python-modules/vcrpy/3.nix { };
+  vcrpy = callPackage ../development/python2-modules/vcrpy { };
 
-  yenc = callPackage ../development/python-modules/yenc { };
+  yenc = callPackage ../development/python2-modules/yenc { };
 
-  yt = callPackage ../development/python-modules/yt { };
+  yt = callPackage ../development/python2-modules/yt { };
 
   zeek = disabled super.zeek;
 
-  zipp = callPackage ../development/python-modules/zipp/1.nix { };
+  zipp = callPackage ../development/python2-modules/zipp { };
 
 }