File: installing.rst

package info (click to toggle)
python-pip 20.3.4-4%2Bdeb11u1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 7,008 kB
  • sloc: python: 77,841; makefile: 60; sh: 59
file content (230 lines) | stat: -rw-r--r-- 6,107 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
.. _`Installation`:

============
Installation
============

Do I need to install pip?
=========================

pip is already installed if you are using Python 2 >=2.7.9 or Python 3 >=3.4
downloaded from `python.org <https://www.python.org>`_ or if you are working
in a :ref:`Virtual Environment <pypug:Creating and using Virtual Environments>`
created by :ref:`pypug:virtualenv` or :ref:`venv <pypug:venv>`. Just make sure
to :ref:`upgrade pip <Upgrading pip>`.

Use the following command to check whether pip is installed:

.. tab:: Unix/macOS

   .. code-block:: console

      $ python -m pip --version
      pip X.Y.Z from .../site-packages/pip (python X.Y)

.. tab:: Windows

   .. code-block:: console

      C:\> py -m pip --version
      pip X.Y.Z from ...\site-packages\pip (python X.Y)

Using Linux Package Managers
============================

.. warning::

   If you installed Python from a package manager on Linux, you should always
   install pip for that Python installation using the same source.

See `pypug:Installing pip/setuptools/wheel with Linux Package Managers <https://packaging.python.org/guides/installing-using-linux-tools/>`_
in the Python Packaging User Guide.

Here are ways to contact a few Linux package maintainers if you run into
problems:

* `Deadsnakes PPA <https://github.com/deadsnakes/issues>`_
* `Debian Python Team <https://wiki.debian.org/Teams/PythonTeam>`_ (for general
  issues related to ``apt``)
* `Red Hat Bugzilla <https://bugzilla.redhat.com/>`_

pip developers do not have control over how Linux distributions handle pip
installations, and are unable to provide solutions to related issues in
general.

Using ensurepip
===============

Python >=3.4 can self-bootstrap pip with the built-in
:ref:`ensurepip <pypug:ensurepip>` module. Refer to the standard library
documentation for more details. Make sure to :ref:`upgrade pip <Upgrading pip>`
after ``ensurepip`` installs pip.

See the `Using Linux Package Managers`_ section if your Python reports
``No module named ensurepip`` on Debian and derived systems (e.g. Ubuntu).


.. _`get-pip`:

Installing with get-pip.py
==========================

.. warning::

   Be cautious if you are using a Python install that is managed by your operating
   system or another package manager. ``get-pip.py`` does not coordinate with
   those tools, and may leave your system in an inconsistent state.

To manually install pip, securely [1]_ download ``get-pip.py`` by following
this link: `get-pip.py
<https://bootstrap.pypa.io/get-pip.py>`_. Alternatively, use ``curl``::

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

Then run the following command in the folder where you
have downloaded ``get-pip.py``:

.. tab:: Unix/macOS

   .. code-block:: shell

      python get-pip.py

.. tab:: Windows

   .. code-block:: shell

      py get-pip.py

``get-pip.py`` also installs :ref:`pypug:setuptools` [2]_ and :ref:`pypug:wheel`
if they are not already. :ref:`pypug:setuptools` is required to install
:term:`source distributions <pypug:Source Distribution (or "sdist")>`.  Both are
required in order to build a :ref:`Wheel cache` (which improves installation
speed), although neither are required to install pre-built :term:`wheels
<pypug:Wheel>`.

.. note::

   The get-pip.py script is supported on the same python version as pip.
   For the now unsupported Python 2.6, alternate script is available
   `here <https://bootstrap.pypa.io/2.6/get-pip.py>`__.


get-pip.py options
------------------

.. option:: --no-setuptools

    If set, do not attempt to install :ref:`pypug:setuptools`

.. option:: --no-wheel

    If set, do not attempt to install :ref:`pypug:wheel`


``get-pip.py`` allows :ref:`pip install options <pip
install Options>` and the :ref:`general options <General Options>`. Below are
some examples:

Install from local copies of pip and setuptools:

.. tab:: Unix/macOS

   .. code-block:: shell

      python get-pip.py --no-index --find-links=/local/copies

.. tab:: Windows

   .. code-block:: shell

      py get-pip.py --no-index --find-links=/local/copies

Install to the user site [3]_:

.. tab:: Unix/macOS

   .. code-block:: shell

      python get-pip.py --user

.. tab:: Windows

   .. code-block:: shell

      py get-pip.py --user

Install behind a proxy:

.. tab:: Unix/macOS

   .. code-block:: shell

      python get-pip.py --proxy="http://[user:passwd@]proxy.server:port"

.. tab:: Windows

   .. code-block:: shell

      py get-pip.py --proxy="http://[user:passwd@]proxy.server:port"

``get-pip.py`` can also be used to install a specified combination of ``pip``,
``setuptools``, and ``wheel`` using the same requirements syntax as pip:

.. tab:: Unix/macOS

   .. code-block:: shell

      python get-pip.py pip==9.0.2 wheel==0.30.0 setuptools==28.8.0

.. tab:: Windows

   .. code-block:: shell

      py get-pip.py pip==9.0.2 wheel==0.30.0 setuptools==28.8.0

.. _`Upgrading pip`:

Upgrading pip
=============

.. tab:: Unix/macOS

   .. code-block:: shell

      python -m pip install -U pip

.. tab:: Windows

   .. code-block:: shell

      py -m pip install -U pip


.. _compatibility-requirements:

Python and OS Compatibility
===========================

pip works with CPython versions 2.7, 3.5, 3.6, 3.7, 3.8 and also PyPy.

This means pip works on the latest patch version of each of these minor
versions. Previous patch versions are supported on a best effort approach.

pip works on Unix/Linux, macOS, and Windows.


----

.. [1] "Secure" in this context means using a modern browser or a
       tool like ``curl`` that verifies SSL certificates when downloading from
       https URLs.

.. [2] Beginning with pip v1.5.1, ``get-pip.py`` stopped requiring setuptools to
       be installed first.

.. [3] The pip developers are considering making ``--user`` the default for all
       installs, including ``get-pip.py`` installs of pip, but at this time,
       ``--user`` installs for pip itself, should not be considered to be fully
       tested or endorsed. For discussion, see `Issue 1668
       <https://github.com/pypa/pip/issues/1668>`_.