Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (pypi.python.org).
Help us improve Python packaging - Donate today!

Easily download, build, install, upgrade, and uninstall Python packages

Project Description

Installation Instructions

The recommended way to bootstrap setuptools on any system is to download ez_setup.py and run it using the target Python environment. Different operating systems have different recommended techniques to accomplish this basic routine, so below are some examples to get you started.

Setuptools requires Python 2.6 or later. To install setuptools on Python 2.4 or Python 2.5, use the bootstrap script for Setuptools 1.x.

The link provided to ez_setup.py is a bookmark to bootstrap script for the latest known stable release.

Windows (Powershell 3 or later)

For best results, uninstall previous versions FIRST (see Uninstalling).

Using Windows 8 (which includes PowerShell 3) or earlier versions of Windows with PowerShell 3 installed, it’s possible to install with one simple Powershell command. Start up Powershell and paste this command:

> (Invoke-WebRequest https://bootstrap.pypa.io/ez_setup.py).Content | python -

You must start the Powershell with Administrative privileges or you may choose to install a user-local installation:

> (Invoke-WebRequest https://bootstrap.pypa.io/ez_setup.py).Content | python - --user

If you have Python 3.3 or later, you can use the py command to install to different Python versions. For example, to install to Python 3.3 if you have Python 2.7 installed:

> (Invoke-WebRequest https://bootstrap.pypa.io/ez_setup.py).Content | py -3 -

The recommended way to install setuptools on Windows is to download ez_setup.py and run it. The script will download the appropriate distribution file and install it for you.

Once installation is complete, you will find an easy_install program in your Python Scripts subdirectory. For simple invocation and best results, add this directory to your PATH environment variable, if it is not already present. If you did a user-local install, the Scripts subdirectory is $env:APPDATA\Python\Scripts.

Windows (simplified)

For Windows without PowerShell 3 or for installation without a command-line, download ez_setup.py using your preferred web browser or other technique and “run” that file.

Unix (wget)

Most Linux distributions come with wget.

Download ez_setup.py and run it using the target Python version. The script will download the appropriate version and install it for you:

> wget https://bootstrap.pypa.io/ez_setup.py -O - | python

Note that you will may need to invoke the command with superuser privileges to install to the system Python:

> wget https://bootstrap.pypa.io/ez_setup.py -O - | sudo python

Alternatively, Setuptools may be installed to a user-local path:

> wget https://bootstrap.pypa.io/ez_setup.py -O - | python - --user

Note that on some older systems (noted on Debian 6 and CentOS 5 installations), wget may refuse to download ez_setup.py, complaining that the certificate common name *.c.ssl.fastly.net does not match the host name bootstrap.pypa.io. In addition, the ez_setup.py script may then encounter similar problems using wget internally to download setuptools-x.y.zip, complaining that the certificate common name of www.python.org does not match the host name pypi.python.org. Those are known issues, related to a bug in the older versions of wget (see Issue 59). If you happen to encounter them, install Setuptools as follows:

> wget --no-check-certificate https://bootstrap.pypa.io/ez_setup.py
> python ez_setup.py --insecure

Unix including Mac OS X (curl)

If your system has curl installed, follow the wget instructions but replace wget with curl and -O with -o. For example:

> curl https://bootstrap.pypa.io/ez_setup.py -o - | python

Advanced Installation

For more advanced installation options, such as installing to custom locations or prefixes, download and extract the source tarball from Setuptools on PyPI and run setup.py with any supported distutils and Setuptools options. For example:

setuptools-x.x$ python setup.py install --prefix=/opt/setuptools

Use --help to get a full options list, but we recommend consulting the EasyInstall manual for detailed instructions, especially the section on custom installation locations.

Downloads

All setuptools downloads can be found at the project’s home page in the Python Package Index. Scroll to the very bottom of the page to find the links.

In addition to the PyPI downloads, the development version of setuptools is available from the Bitbucket repo, and in-development versions of the 0.6 branch are available as well.

Uninstalling

On Windows, if Setuptools was installed using an .exe or .msi installer, simply use the uninstall feature of “Add/Remove Programs” in the Control Panel.

Otherwise, to uninstall Setuptools or Distribute, regardless of the Python version, delete all setuptools* and distribute* files and directories from your system’s site-packages directory (and any other sys.path directories) FIRST.

If you are upgrading or otherwise plan to re-install Setuptools or Distribute, nothing further needs to be done. If you want to completely remove Setuptools, you may also want to remove the ‘easy_install’ and ‘easy_install-x.x’ scripts and associated executables installed to the Python scripts directory.

Using Setuptools and EasyInstall

Here are some of the available manuals, tutorials, and other resources for learning about Setuptools, Python Eggs, and EasyInstall:

Questions, comments, and bug reports should be directed to the distutils-sig mailing list. If you have written (or know of) any tutorials, documentation, plug-ins, or other resources for setuptools users, please let us know about them there, so this reference list can be updated. If you have working, tested patches to correct problems or add features, you may submit them to the setuptools bug tracker.

Credits

  • The original design for the .egg format and the pkg_resources API was co-created by Phillip Eby and Bob Ippolito. Bob also implemented the first version of pkg_resources, and supplied the OS X operating system version compatibility algorithm.
  • Ian Bicking implemented many early “creature comfort” features of easy_install, including support for downloading via Sourceforge and Subversion repositories. Ian’s comments on the Web-SIG about WSGI application deployment also inspired the concept of “entry points” in eggs, and he has given talks at PyCon and elsewhere to inform and educate the community about eggs and setuptools.
  • Jim Fulton contributed time and effort to build automated tests of various aspects of easy_install, and supplied the doctests for the command-line .exe wrappers on Windows.
  • Phillip J. Eby is the seminal author of setuptools, and first proposed the idea of an importable binary distribution format for Python application plug-ins.
  • Significant parts of the implementation of setuptools were funded by the Open Source Applications Foundation, to provide a plug-in infrastructure for the Chandler PIM application. In addition, many OSAF staffers (such as Mike “Code Bear” Taylor) contributed their time and stress as guinea pigs for the use of eggs and setuptools, even before eggs were “cool”. (Thanks, guys!)
  • Tarek Ziadé is the principal author of the Distribute fork, which re-invigorated the community on the project, encouraged renewed innovation, and addressed many defects.
  • Since the merge with Distribute, Jason R. Coombs is the maintainer of setuptools. The project is maintained in coordination with the Python Packaging Authority (PyPA) and the larger Python community.

Code of Conduct

Everyone interacting in the setuptools project’s codebases, issue trackers, chat rooms, and mailing lists is expected to follow the PyPA Code of Conduct.

Release History

Release History

History Node

38.2.4

History Node

38.2.3

History Node

38.2.1

History Node

38.2.0

History Node

38.1.0

History Node

38.0.0

History Node

37.0.0

History Node

36.8.0

History Node

36.7.2

History Node

36.7.1

History Node

36.7.0

History Node

36.6.1

History Node

36.6.0

History Node

36.5.0

History Node

36.4.0

History Node

36.3.0

History Node

36.2.7

History Node

36.2.6

History Node

36.2.5

History Node

36.2.4

History Node

36.2.3

History Node

36.2.2

History Node

36.2.1

History Node

36.2.0

History Node

36.1.1

History Node

36.1.0

History Node

36.0.1

History Node

35.0.2

History Node

35.0.1

History Node

35.0.0

History Node

34.4.1

History Node

34.4.0

History Node

34.3.3

History Node

34.3.2

History Node

34.3.1

History Node

34.3.0

History Node

34.2.0

History Node

34.1.1

History Node

34.1.0

History Node

34.0.3

History Node

34.0.2

History Node

34.0.1

History Node

34.0.0

History Node

33.1.1

History Node

33.1.0

History Node

32.3.1

History Node

32.3.0

History Node

32.2.0

History Node

32.1.3

History Node

32.1.2

History Node

32.1.1

History Node

32.1.0

History Node

32.0.0

History Node

31.0.1

History Node

31.0.0

History Node

30.4.0

History Node

30.3.0

History Node

30.2.1

History Node

30.2.0

History Node

30.1.0

History Node

30.0.0

History Node

29.0.1

History Node

29.0.0

History Node

28.8.1

History Node

28.8.0

History Node

28.7.1

History Node

28.7.0

History Node

28.6.1

History Node

28.6.0

This version
History Node

28.5.0

History Node

28.4.0

History Node

28.3.0

History Node

28.2.0

History Node

28.1.0

History Node

28.0.0

History Node

27.3.1

History Node

27.3.0

History Node

27.2.0

History Node

27.1.2

History Node

27.1.0

History Node

27.0.0

History Node

26.1.1

History Node

26.1.0

History Node

26.0.0

History Node

25.4.0

History Node

25.3.0

History Node

25.2.0

History Node

25.1.6

History Node

25.1.5

History Node

25.1.4

History Node

25.1.3

History Node

25.1.2

History Node

25.1.1

History Node

25.1.0

History Node

25.0.2

History Node

25.0.1

History Node

25.0.0

History Node

24.3.1

History Node

24.3.0

History Node

24.2.1

History Node

24.2.0

History Node

24.1.1

History Node

24.1.0

History Node

24.0.3

History Node

24.0.2

History Node

24.0.1

History Node

24.0.0

History Node

23.2.1

History Node

23.2.0

History Node

23.1.0

History Node

23.0.0

History Node

22.0.5

History Node

22.0.4

History Node

22.0.2

History Node

22.0.1

History Node

22.0.0

History Node

21.2.2

History Node

21.2.1

History Node

21.2.0

History Node

21.1.0

History Node

21.0.0

History Node

20.10.1

History Node

20.9.0

History Node

20.8.1

History Node

20.8.0

History Node

20.7.0

History Node

20.6.8

History Node

20.6.7

History Node

20.6.6

History Node

20.4

History Node

20.3.1

History Node

20.3

History Node

20.2.2

History Node

20.1.1

History Node

20.1

History Node

20.0

History Node

19.7

History Node

19.6.2

History Node

19.6.1

History Node

19.6

History Node

19.5

History Node

19.4.1

History Node

19.4

History Node

19.3

History Node

19.2

History Node

19.1.1

History Node

19.1

History Node

19.0

History Node

18.8.1

History Node

18.8

History Node

18.7.1

History Node

18.7

History Node

18.6.1

History Node

18.6

History Node

18.5

History Node

18.4

History Node

18.3.2

History Node

18.3.1

History Node

18.3

History Node

18.2

History Node

18.1

History Node

18.0.1

History Node

18.0

History Node

17.1.1

History Node

17.1

History Node

17.0

History Node

16.0

History Node

15.2

History Node

15.1

History Node

15.0

History Node

14.3.1

History Node

14.3

History Node

14.2

History Node

14.1.1

History Node

14.1

History Node

14.0

History Node

13.0.2

History Node

13.0.1

History Node

13.0

History Node

12.4

History Node

12.3

History Node

12.2

History Node

12.1

History Node

12.0.5

History Node

12.0.4

History Node

12.0.3

History Node

12.0.2

History Node

12.0.1

History Node

12.0

History Node

11.3.1

History Node

11.3

History Node

11.2

History Node

11.1

History Node

11.0

History Node

10.2.1

History Node

10.2

History Node

10.1

History Node

10.0.1

History Node

10.0

History Node

9.1

History Node

9.0.1

History Node

9.0

History Node

8.3

History Node

8.2.1

History Node

8.2

History Node

8.1

History Node

8.0.4

History Node

8.0.3

History Node

8.0.2

History Node

8.0.1

History Node

8.0

History Node

7.0

History Node

6.1

History Node

6.0.2

History Node

6.0.1

History Node

5.8

History Node

5.7

History Node

5.6

History Node

5.5.1

History Node

5.5

History Node

5.4.2

History Node

5.4.1

History Node

5.4

History Node

5.3

History Node

5.2

History Node

5.1

History Node

5.0.2

History Node

5.0.1

History Node

5.0

History Node

4.0.1

History Node

4.0

History Node

3.8.1

History Node

3.8

History Node

3.7.1

History Node

3.7

History Node

3.6

History Node

3.5.2

History Node

3.5.1

History Node

3.5

History Node

3.4.4

History Node

3.4.3

History Node

3.4.2

History Node

3.4.1

History Node

3.4

History Node

3.3

History Node

3.2

History Node

3.1

History Node

3.0.2

History Node

3.0.1

History Node

3.0

History Node

2.2

History Node

2.1.2

History Node

2.1.1

History Node

2.1

History Node

2.0.2

History Node

2.0.1

History Node

2.0

History Node

1.4.2

History Node

1.4.1

History Node

1.4

History Node

1.3.2

History Node

1.3.1

History Node

1.3

History Node

1.2

History Node

1.1.7

History Node

1.1.6

History Node

1.1.5

History Node

1.1.4

History Node

1.1.3

History Node

1.1.2

History Node

1.1.1

History Node

1.1

History Node

1.0

History Node

0.9.8

History Node

0.9.7

History Node

0.9.6

History Node

0.9.5

History Node

0.9.4

History Node

0.9.3

History Node

0.9.2

History Node

0.9.1

History Node

0.9

History Node

0.8

History Node

0.7.8

History Node

0.7.7

History Node

0.7.6

History Node

0.7.5

History Node

0.7.4

History Node

0.7.3

History Node

0.7.2

History Node

0.6c11

History Node

0.6c10

History Node

0.6c9

History Node

0.6c8

History Node

0.6c7

History Node

0.6c6

History Node

0.6c5

History Node

0.6c4

History Node

0.6c3

History Node

0.6c2

History Node

0.6c1

History Node

0.6b4

History Node

0.6b3

History Node

0.6b2

History Node

0.6b1

Download Files

Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
setuptools-28.5.0-py2.py3-none-any.whl (471.8 kB) Copy SHA256 Checksum SHA256 py2.py3 Wheel Oct 15, 2016
setuptools-28.5.0.tar.gz (644.6 kB) Copy SHA256 Checksum SHA256 Source Oct 15, 2016
setuptools-28.5.0.zip (694.7 kB) Copy SHA256 Checksum SHA256 Source Oct 15, 2016

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting