On Wed, Jul 22, 2009 at 07:08:26PM -0400, Glenn Maynard wrote: > On Wed, Jul 22, 2009 at 5:22 PM, M.-A. Lemburg<m...@egenix.com> wrote: > > Maybe I've misunderstood some important detail, but how will > > their "change" help with anything other than making their > > distribution a non-standard Python installation ? > > I think I'm a little confused, too, because Python supports the > /usr|/usr/local separation just fine (setup.py install > --prefix=/usr/local). > > It seems like it's also using "dist-packages" instead of > "site-packages". That part, I don't understand at all--distribution > packages should go in /usr/lib/pythonx.y/site-packages, and "site" > packages go in /usr/local/pythonx.y/site-packages; /usr/local *itself* > means "non-distribution site-installed stuff". If that's what you're > referring to, then at least on first impression I agree.
The way Debian does this isn't that stupid. It solves the problem of the sysadmin intalling Python distibutions for the system Python without writing in the system locations, which is a very reasonable thing to do. Before Debian used dist-packages, /usr/local/lib/pythonX.Y/site-packages was added to the sys.path of the system Python and this was the location where a sysadmin should add packages (although distutils did not default to that location, so it wasn so it was still easy to mess up the system package management). But this caused trouble for people who installed their own Python in /usr/local since now you have the same /usr/local/lib/pythonX.Y/site-packages shared by 2 interpreters. To solve this the system python moved to dist-packages instead, this allows the local admin location to use /usr/local/lib/pythonX.Y/dist-packages which does not conflict with locally installed interpreters. Together with this they changed distutils to install to /usr/local/lib/pythonX.Y/dist-packages by default, so that a sysadmin would have to go out of their way to mess up the system package management. This is a pretty neat solution to the problem. But the weird thing (IMHO) is that distutils-sig completely refuses to see this requirement. Generally it seems accepted that installing modules in the system location (/usr/) is a bad thing, but last time it got discussed there was a point blank refusal to accept that the local admin needs a location in to install packages in. I think it would be great if Python instead provided a general guideline or best practice for this situation which would be explained in the documentation. Regards Floris -- Debian GNU/Linux -- The Power of Freedom www.debian.org | www.gnu.org | www.kernel.org _______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com