This is the mail archive of the
mailing list for the Cygwin project.
Re: how to get the windows PATH env in cygwin
DePriest, Jason R. wrote:
> On Tue, Dec 1, 2009 at 10:03 AM, Andy Koppe <> wrote:
>> 2009/12/1 Reinier Post:
>>>> If you want to see the Windows PATH setting unmolested by Cygwin, you
>>>> will either need to strip out the additions set by /etc/profile or avoid
>>>> running under an environment modified by /etc/profile.
>>> It doesn't add, actually - it replaces it.
>> You're wrong. The Cygwin DLL at startup translates the Windows PATH
>> variable. And this line in /etc/profile adds to it:
> This is completely and totally true.
I'm sorry, but it is not true. Maybe there is a misunderstanding though.
> To verify it, all you have to do is open a bash prompt (Cygwin.bat,
> mintty, rxvt, whatever) and then launch a cmd.exe or powershell.
> Check the path in the bash prompt and you will see the cygwin stuff at
> the beginning of it.
Yes, indeed you will see the Cygwin paths prepended to PATH as you say.
Andy said this as well and even included the line from /etc/profile
which does this work when you run a login shell (i.e. bash --login under
rxvt or what-have-you). However, since the remainder of PATH derives
from the Windows-native value of PATH (converted automatically by Cygwin
to POSIX-style), we're saying that the value of PATH was *modified*
rather than *replaced* entirely. To say that PATH was entirely replaced
is to imply that the new value of PATH has no basis whatsoever in the
original value of PATH.
> Check the path in the cmd.exe or powershell prompt which was run
> *after* the bash script updated the path and you will see that it does
> *not* include the cygwin paths.
> It doesn't override what you have set anywhere but in cygwin's magic space.
No one is arguing that Cygwin ever modifies PATH system-wide or for
anything aside from Cygwin programs. In the base case, a Cygwin program
will see the value of PATH converted to POSIX-style. If that same
Cygwin program is run from a login shell, it will see the PATH as
further modified by /etc/profile as Andy indicated.
Windows programs will only ever see a Windows-style PATH no matter what;
however, they WILL see the Cygwin paths converted to Windows-style and
prepended IF they were run from a login shell under Cygwin.
Problem reports: http://cygwin.com/problems.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple