mirror of
https://github.com/python/cpython.git
synced 2025-08-30 13:38:43 +00:00

The command without arguments already prints all installed distributions found. In addition, change “releases” for “projects” in the description of the list action. Strictly speaking, one installed distribution satisfies the requirement for a release (i.e. version) of a project, but as currently only one release per project can be installed at a time, the two are somewhat equivalent, and “project” is more understandable in help texts (which call their argument “dist”, by the way..)
164 lines
4.6 KiB
ReStructuredText
164 lines
4.6 KiB
ReStructuredText
.. _packaging-pysetup:
|
|
|
|
================
|
|
Pysetup Tutorial
|
|
================
|
|
|
|
Getting started
|
|
---------------
|
|
|
|
Pysetup is a simple script that supports the following features:
|
|
|
|
- install, remove, list, and verify Python packages;
|
|
- search for available packages on PyPI or any *Simple Index*;
|
|
- verify installed packages (md5sum, installed files, version).
|
|
|
|
|
|
Finding out what's installed
|
|
----------------------------
|
|
|
|
Pysetup makes it easy to find out what Python packages are installed::
|
|
|
|
$ pysetup list virtualenv
|
|
'virtualenv' 1.6 at '/opt/python3.3/lib/python3.3/site-packages/virtualenv-1.6-py3.3.egg-info'
|
|
|
|
$ pysetup list
|
|
'pyverify' 0.8.1 at '/opt/python3.3/lib/python3.3/site-packages/pyverify-0.8.1.dist-info'
|
|
'virtualenv' 1.6 at '/opt/python3.3/lib/python3.3/site-packages/virtualenv-1.6-py3.3.egg-info'
|
|
...
|
|
|
|
|
|
Installing a distribution
|
|
-------------------------
|
|
|
|
Pysetup can install a Python project from the following sources:
|
|
|
|
- PyPI and Simple Indexes;
|
|
- source directories containing a valid :file:`setup.py` or :file:`setup.cfg`;
|
|
- distribution source archives (:file:`project-1.0.tar.gz`, :file:`project-1.0.zip`);
|
|
- HTTP (http://host/packages/project-1.0.tar.gz).
|
|
|
|
|
|
Installing from PyPI and Simple Indexes::
|
|
|
|
$ pysetup install project
|
|
$ pysetup install project==1.0
|
|
|
|
Installing from a distribution source archive::
|
|
|
|
$ pysetup install project-1.0.tar.gz
|
|
|
|
Installing from a source directory containing a valid :file:`setup.py` or
|
|
:file:`setup.cfg`::
|
|
|
|
$ cd path/to/source/directory
|
|
$ pysetup install
|
|
|
|
$ pysetup install path/to/source/directory
|
|
|
|
Installing from HTTP::
|
|
|
|
$ pysetup install http://host/packages/project-1.0.tar.gz
|
|
|
|
|
|
Retrieving metadata
|
|
-------------------
|
|
|
|
You can gather metadata from two sources, a project's source directory or an
|
|
installed distribution. The `pysetup metadata` command can retrieve one or
|
|
more metadata fields using the `-f` option and a metadata field as the
|
|
argument. ::
|
|
|
|
$ pysetup metadata virtualenv -f version -f name
|
|
Version:
|
|
1.6
|
|
Name:
|
|
virtualenv
|
|
|
|
$ pysetup metadata virtualenv
|
|
Metadata-Version:
|
|
1.0
|
|
Name:
|
|
virtualenv
|
|
Version:
|
|
1.6
|
|
Platform:
|
|
UNKNOWN
|
|
Summary:
|
|
Virtual Python Environment builder
|
|
...
|
|
|
|
.. seealso::
|
|
|
|
There are three metadata versions, 1.0, 1.1, and 1.2. The following PEPs
|
|
describe specifics of the field names, and their semantics and usage. 1.0
|
|
:PEP:`241`, 1.1 :PEP:`314`, and 1.2 :PEP:`345`
|
|
|
|
|
|
Removing a distribution
|
|
-----------------------
|
|
|
|
You can remove one or more installed distributions using the `pysetup remove`
|
|
command::
|
|
|
|
$ pysetup remove virtualenv
|
|
removing 'virtualenv':
|
|
/opt/python3.3/lib/python3.3/site-packages/virtualenv-1.6-py3.3.egg-info/dependency_links.txt
|
|
/opt/python3.3/lib/python3.3/site-packages/virtualenv-1.6-py3.3.egg-info/entry_points.txt
|
|
/opt/python3.3/lib/python3.3/site-packages/virtualenv-1.6-py3.3.egg-info/not-zip-safe
|
|
/opt/python3.3/lib/python3.3/site-packages/virtualenv-1.6-py3.3.egg-info/PKG-INFO
|
|
/opt/python3.3/lib/python3.3/site-packages/virtualenv-1.6-py3.3.egg-info/SOURCES.txt
|
|
/opt/python3.3/lib/python3.3/site-packages/virtualenv-1.6-py3.3.egg-info/top_level.txt
|
|
Proceed (y/n)? y
|
|
success: removed 6 files and 1 dirs
|
|
|
|
The optional '-y' argument auto confirms, skipping the conformation prompt::
|
|
|
|
$ pysetup remove virtualenv -y
|
|
|
|
|
|
Getting help
|
|
------------
|
|
|
|
All pysetup actions take the `-h` and `--help` options which prints the commands
|
|
help string to stdout. ::
|
|
|
|
$ pysetup remove -h
|
|
Usage: pysetup remove dist [-y]
|
|
or: pysetup remove --help
|
|
|
|
Uninstall a Python package.
|
|
|
|
positional arguments:
|
|
dist installed distribution name
|
|
|
|
optional arguments:
|
|
-y auto confirm package removal
|
|
|
|
Getting a list of all pysetup actions and global options::
|
|
|
|
$ pysetup --help
|
|
Usage: pysetup [options] action [action_options]
|
|
|
|
Actions:
|
|
run: Run one or several commands
|
|
metadata: Display the metadata of a project
|
|
install: Install a project
|
|
remove: Remove a project
|
|
search: Search for a project in the indexes
|
|
list: List installed projects
|
|
graph: Display a graph
|
|
create: Create a project
|
|
generate-setup: Generate a backward-comptatible setup.py
|
|
|
|
To get more help on an action, use:
|
|
|
|
pysetup action --help
|
|
|
|
Global options:
|
|
--verbose (-v) run verbosely (default)
|
|
--quiet (-q) run quietly (turns verbosity off)
|
|
--dry-run (-n) don't actually do anything
|
|
--help (-h) show detailed help message
|
|
--no-user-cfg ignore pydistutils.cfg in your home directory
|
|
--version Display the version
|