1{ lib
2, buildPythonPackage
3, bootstrapped-pip
4, fetchFromGitHub
5, mock
6, scripttest
7, virtualenv
8, pretend
9, pytest
10}:
11
12buildPythonPackage rec {
13 pname = "pip";
14 version = "20.3.4";
15 format = "other";
16
17 src = fetchFromGitHub {
18 owner = "pypa";
19 repo = pname;
20 rev = version;
21 sha256 = "0hkhs9yc1cjdj1gn9wkycd3sy65c05q8k8rhqgsm5jbpksfssiwn";
22 name = "${pname}-${version}-source";
23 };
24
25 nativeBuildInputs = [ bootstrapped-pip ];
26
27 # pip detects that we already have bootstrapped_pip "installed", so we need
28 # to force it a little.
29 pipInstallFlags = [ "--ignore-installed" ];
30
31 checkInputs = [ mock scripttest virtualenv pretend pytest ];
32 # Pip wants pytest, but tests are not distributed
33 doCheck = false;
34
35 meta = {
36 description = "The PyPA recommended tool for installing Python packages";
37 license = with lib.licenses; [ mit ];
38 homepage = "https://pip.pypa.io/";
39 priority = 10;
40 };
41}