{ lib , python , buildPythonPackage , bootstrapped-pip , fetchFromGitHub , mock , scripttest , virtualenv , pretend , pytest , setuptools , wheel }: buildPythonPackage rec { pname = "pip"; version = "21.1.3"; format = "other"; src = fetchFromGitHub { owner = "pypa"; repo = pname; rev = version; sha256 = "sha256-zfMz9p4I6Kmw849xuvnmGWHmWtajDntFW1jjDilKkgk="; name = "${pname}-${version}-source"; }; nativeBuildInputs = [ bootstrapped-pip ]; # pip detects that we already have bootstrapped_pip "installed", so we need # to force it a little. pipInstallFlags = [ "--ignore-installed" ]; checkInputs = [ mock scripttest virtualenv pretend pytest ]; # Pip wants pytest, but tests are not distributed doCheck = false; meta = { description = "The PyPA recommended tool for installing Python packages"; license = with lib.licenses; [ mit ]; homepage = "https://pip.pypa.io/"; priority = 10; }; }