[Python-Dev] Python install layout and the PATH on win32

Mark Hammond mhammond at skippinet.com.au
Sat Mar 17 02:12:11 CET 2012


On 17/03/2012 12:07 PM, Brian Curtin wrote:
> On Fri, Mar 16, 2012 at 19:53, Mark Hammond<skippy.hammond at gmail.com>  wrote:
>> For the sake of brain-storming, how about this:
>>
>> * All executables and scripts go into the root of the Python install. This
>> directory is largely empty now - it is mainly a container for other
>> directories.  This would solve the problem of needing 2 directories on the
>> PATH and mean existing tools which locate the executable would work fine.
>
> How are existing tools locating the executable which would break with
> a change to bin? As I posted on the tracker, the way which pops in my
> mind would be to look for "C:\\Python%d%d" % (x, y) but that's already
> pretty broken.

As I just replied in the tracker :)  They typically look up the 
InstallPath key in the registry and look for python.exe there - see the 
link to that activate.bat file I posted early in the thread.

> The people I talked to at PyCon about this were Dino
> from Microsoft and he nudged the guy next to him to ask the same
> question (I seem to remember this guy worked for an IDE) -- both of
> them just wanted to be sure they can still find python.exe's location
> via the registry, which will be fine. I think we'll add a key to go
> along with InstallPath - BinaryPath probably makes sense.

While I wouldn't object to that, it would seem redundant - if the whole 
point of this is to standardize the locations, then looking for 
"bin/python.exe" relative to the existing InstallPath key should also be 
reliable and hopefully permanent.

At the risk of repeating myself too many times, my concern is with 3rd 
party tools who (a) will break with the new scheme and need to be 
updated and (b) even after updating will still need the burden of 
supporting both the old and the new schemes.  I simply don't see the 
benefit that makes this worthwhile.

>> * If cross-platform consistency was desired, then we could consider making
>> other platforms match this.  However, if there are issues which might
>> prevent this happening for other platforms (eg, the risk of breaking other
>> 3rd party tools, conventions on the platform ,etc) then it might be worth
>> conceding these considerations apply equally to the Windows installs and we
>> just live with this platform difference.
>
> I don't think we're going to defeat the Unix army with their fleets of
> distro packagers and torch wielding purists. If anyone's going to
> move, my money's on Windows.

Right - but why?  Who wins?  Where is the evidence of the pain this has 
caused people over the last 18 years or so since Windows has been doing 
this?

Mark


More information about the Python-Dev mailing list