Why does Python never add itself to the Windows path?

Ben Sizer kylotan at gmail.com
Tue Jan 2 12:08:41 EST 2007


Chris Lambacher wrote:

> On Sat, Dec 30, 2006 at 04:55:09PM -0800, Ben Sizer wrote:

> > Yet many scripts and applications require parameters, or to be executed
> > from a certain directory. For example, setup.py. Or the various
> > turbogears scripts. Or easy_install.

> Martin's point was that if you need to pass arguments, you can call the script
> from the command line like so:
> setup.py install
>
> The python part of the 'python setup.py install' idiom needs to be omitted on
> Windows, but that does not mean that the solution is to automatically add it
> to PATH.

Firstly, that solution only works for actual Python scripts; it doesn't
solve the utility scripts that are often installed to the /scripts
directory. It's a shame that many responses on this thread don't
address that half of the issue. Am I the only person who installs
packages that add scripts (not all of which are Python ones)?

Secondly, it's still a significant difference from the Unix-based
installs. You're right, the solution doesn't automatically have to be
adding it to the PATH - but I'm yet to see a good argument for choosing
not to, apart from "I don't like it when apps do that".

> The documentation is misleading... time for a but report:
> http://sourceforge.net/tracker/index.php?func=detail&aid=1626300&group_id=5470&atid=105470

Fixing the docs is better than nothing, but I believe fixing the
install to encourage uniform usage across all platforms is preferable,
and that in this regard the documentation shows how it 'should' work.

> > There appears to be a freely-available binary at this address that may
> > suffice:
> > http://legroom.net/modules.php?op=modload&name=Open_Source&file=index&page=software&app=modpath

> Unfortunately the Python installer is not an InnoSetup installer.

The page I linked to is a bit misleading but there is an executable on
that page. All you then have to do is invoke it with the relevant
parameter.

-- 
Ben Sizer




More information about the Python-list mailing list