[issue1298835] Add a vendor-packages directory for system-supplied modules

Matthias Klose report at bugs.python.org
Sat May 4 19:53:11 CEST 2013


Matthias Klose added the comment:

there is more than one thing addressed with the 'dist-packages' choice of name.

The primary reason is to have a directory where you only find python packages as distributed by the linux distribution, and where installers do not install to by default.  Even if this directory is non-writable, people did call 'sudo python setup.py install', and then did report issues on the Ubuntu tracker caused by these installs. Such a vendor place should never be the default to be installed to by default.

There is a Debian policy to support /usr/local, and that's the reason you find a second directory /usr/local/lib/pythonx.y/dist-packages. A 'sudo python setup.py install' installs into this location, distribution maintainers providing Debian packages are supposed to call setup.py install --install-layout=deb to install into the debian system installation.

At this time Barry still new to distro policies, was surprised to find /usr/local/lib/pythonx.y/site-packages being used by the system python, which is also used by a local python build which is configured without any --prefix parameters. So the system python now uses dist-packages in both /usr and /usr/local to not interfere with a local python installation.

Note that for python3, Debian and Ubuntu are trying to share dist-packages across python3 versions to ease upgrades from one version to the other, and trying to support more than one version during the upgrade (calling that /usr/lib/python3/dist-packages).

----------

_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue1298835>
_______________________________________


More information about the Python-bugs-list mailing list