/get-pip

Primary LanguagePythonMIT LicenseMIT

get-pip.py

get-pip.py is a bootstrapping script that enables users to install pip, setuptools, and wheel in Python environments that don't already have them. You should not directly reference the files located in this repository and instead use the versions located at https://bootstrap.pypa.io/.

Usage

$ curl -sSL https://bootstrap.pypa.io/get-pip.py -o get-pip.py
$ python get-pip.py

Upon execution, get-pip.py will install pip, setuptools and wheel in the current Python environment.

It is possible to provide additional arguments to the underlying script. These are passed through to the underlying pip install command, and can thus be used to constraint the versions of the packages, or to pass other pip options such as --no-index.

$ python get-pip.py "pip < 21.0" "setuptools < 50.0" "wheel < 1.0"
$ python get-pip.py --no-index --find-links=/local/copies

get-pip.py options

This script also has it's own options, which control which packages it will install.

--no-setuptools
If set, do not attempt to install setuptools.
--no-wheel
If set, do not attempt to install wheel.

Development

Most of the work of get-pip.py comes from the copy of pip that is bundled inside of it. However, there is a tiny bit of glue code located inside of template.py to enable get-pip.py to actually work.

Install the dependencies from requirements.txt to get setup with the repo. You may want to perform something like:

$ python3 -m venv venv
$ source venv/bin/activate
$ pip install -r requirements.txt

Any pull request should include regenerated files, which can be generated by running:

$ invoke generate

Discussion

If you run into bugs, you can file them in our issue tracker.

You can also join #pypa or #pypa-dev on Freenode to ask questions or get involved.

Code of Conduct

Everyone interacting in the get-pip project's codebases, issue trackers, chat rooms, and mailing lists is expected to follow the PSF Code of Conduct.