[Python-Dev] Remove site-packages?!? [was: [Distutils] PEP 376 - from pythonpkgmgr's point of view]

david.lyon at preisshare.net david.lyon at preisshare.net
Thu Jul 23 11:22:32 CEST 2009


Hi Floris,

That's exactly how I see it and i totally agree.

My contribution is to make a Package Manager Gui that tries to be
supportive of what you describe so well.

If i have any complaint about the state of affairs it would only be that
it takes a newcomer such a long time (months) to fully understand what
should be a 5 minute thing as you so well describe below.

> 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<mal at 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 at python.org
> http://mail.python.org/mailman/listinfo/python-dev
> Unsubscribe:
> http://mail.python.org/mailman/options/python-dev/david.lyon%40preisshare.net
>




More information about the Python-Dev mailing list