[ python-Bugs-1428789 ] add /usr/local support

SourceForge.net noreply at sourceforge.net
Mon Feb 13 06:05:20 CET 2006

Bugs item #1428789, was opened at 2006-02-10 02:55
Message generated for change (Comment added) made by loewis
You can respond by visiting: 

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: Installation
Group: None
>Status: Closed
>Resolution: Invalid
Priority: 5
Submitted By: Karol Pietrzak (noodlez84)
Assigned to: Nobody/Anonymous (nobody)
Summary: add /usr/local support

Initial Comment:
Generally, /usr/local support needs to be added for   
python.  Many distributions already do this, either   
partially or completely, causing inconsistencies   
between Python installations among Linux   
1. There should be a site-packages directory   
in /usr/local,   
probably /usr/local/lib/python/site-packages.  Just   
like in /usr, it'll need the appropriate symlinks.    
x86_64 bit issues also need to be taken into account,   
so /usr/local/lib64/python2.4/site-packages should be   
the local site-packages directory for Python 2.4.x on   
a x86_64 machine.   
The reasons for these are numerous.  $PATH   
contains /usr/local/bin, $GTK_PATH   
contains /usr/local, $MANPATH   
contains /usr/local/share/man, and $PKG_CONFIG_PATH   
contains /usr/local/lib/pkgconfig.  Adding a   
site-packages directory in /usr/local will simply   
fill in the hole in the Python configuration.   
As the FHS points out, /usr may very well be mounted   
read-only for security purposes.  /usr/local should   
be used instead, especially for non-system / testing   
2. Distutils should install, by default, in   
the site-packages directory in /usr/local described  
in part (1).  This will simply mimic the auto(conf| 
make|etc.) default installation path (isn't the  
default installation path for Python  
itself /usr/local?).  
For simplicity and consistency's sake, the default  
installation path for distutils should be the 
site-packages directory in /usr/local. 
If someone would point me in the right direction, I 
will gladly write the patch myself. 


>Comment By: Martin v. Löwis (loewis)
Date: 2006-02-13 06:05

Logged In: YES 

I fail to see the bug in Python here. In the default
configuration, Python does use site-packages in /usr/local,
and distutils does install into /usr/local. So it appears
that Python already does what you say you want.

Apparently, you are talking about Linux here. However, even
on Linux, Python installs to /usr/local by default. If Linux
distributors chose to install it into /usr, then why can't
they also arrange these other changes?

To get /usr/local<something> into sys.path, either edit
site.py, or add a file sitecustomize.py. At compile time,
you can also edit Modules/Setup[.local] to set SITEPATH.

To change the default installation directories, add a
distutils.cfg into the distutils directory, or edit the
unix_prefix scheme in command/install.py


You can respond by visiting: 

More information about the Python-bugs-list mailing list