summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--pkgs/development/python-modules/bootstrapped-pip/default.nix5
-rw-r--r--pkgs/development/python-modules/pip/default.nix9
2 files changed, 14 insertions, 0 deletions
diff --git a/pkgs/development/python-modules/bootstrapped-pip/default.nix b/pkgs/development/python-modules/bootstrapped-pip/default.nix
index 8bb713b7641..04bac36cf5a 100644
--- a/pkgs/development/python-modules/bootstrapped-pip/default.nix
+++ b/pkgs/development/python-modules/bootstrapped-pip/default.nix
@@ -2,6 +2,7 @@
 , pipInstallHook
 , setuptoolsBuildHook
 , wheel, pip, setuptools
+, isPy27
 }:
 
 stdenv.mkDerivation rec {
@@ -24,6 +25,10 @@ stdenv.mkDerivation rec {
 
   postPatch = ''
     mkdir -p $out/bin
+  '' + stdenv.lib.optionalString isPy27 ''
+    pushd "${pip.src.name}"
+    patch -p1 < ${builtins.elemAt pip.patches 0}
+    popd
   '';
 
   nativeBuildInputs = [ makeWrapper unzip ];
diff --git a/pkgs/development/python-modules/pip/default.nix b/pkgs/development/python-modules/pip/default.nix
index 9db7cdea672..d451ca4a9b2 100644
--- a/pkgs/development/python-modules/pip/default.nix
+++ b/pkgs/development/python-modules/pip/default.nix
@@ -10,6 +10,8 @@
 , pytest
 , setuptools
 , wheel
+, isPy27
+, fetchpatch
 }:
 
 buildPythonPackage rec {
@@ -27,6 +29,13 @@ buildPythonPackage rec {
 
   nativeBuildInputs = [ bootstrapped-pip ];
 
+  patches = lib.optionals isPy27 [
+    (fetchpatch {
+      url = "https://github.com/pypa/pip/commit/94fbb6cf78c267bf7cdf83eeeb2536ad56cfe639.patch";
+      sha256 = "Z6x5yxBp8QkU/GOfb1ltI0dVt//MaI09XK3cdY42kFs=";
+    })
+  ];
+
   # pip detects that we already have bootstrapped_pip "installed", so we need
   # to force it a little.
   pipInstallFlags = [ "--ignore-installed" ];