This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [ANNOUNCEMENT] [1.7] Updated: cygwin-1.7.0-63


On Nov  4 09:34, Ken Brown wrote:
> On 11/3/2009 9:54 AM, Corinna Vinschen wrote:
> >- Add a bigger patch which allows by default to run multiple Cygwin
> >  installations in parallel [...]
> 
> I experimented a little with the new features and found a couple of
> glitches.  My normal cygwin installation is in D:\cygwin-1.7.  I
> updated it to 1.7.0-63 and then installed a second cygwin
> installation in C:\cygwin-1.7 just to see if I really could run two
> cygwin-1.7's at once.  It seemed to work fine.
> 
> I then deleted the directory C:\cygwin-1.7 and ran 'cygcheck
> --delete-orphaned-installation-keys', followed by 'cygcheck -svr' to
> make sure my original cygwin (in D:\cygwin-1.7) was still OK.  I'm
> attaching some excerpts from the cygcheck output.  The most
> surprising thing (to me) is that cygcheck was still reporting the
> standard mounts
> 
> C:\cygwin-1.7      /          system  binary,auto
> C:\cygwin-1.7\bin  /usr/bin   system  binary,auto
> C:\cygwin-1.7\lib  /usr/lib   system  binary,auto

Ouch, yes.  Fortunately this doesn't affect the actual Cygwin
installations.  The problem is that cygcheck itself is a plain Win32,
non-Cygwin application.  As such, it has no immediate access to the
mount table.  So what it does is this:

It checks the registry entry {HKLM,HKCU}\Software\Cygwin\setup.  This
entry is written by the setup-1.7.exe installer every time you install.
The latest install always "wins", if you get my meaning.  Since the default
mount points don't require an /etc/fstab file, they are computed...

> I reinstalled cygwin 1.7.0-63 in D:\cygwin-1.7, and everything was
> back to normal.

Sure enough, since {HKLM,HKCU}\Software\Cygwin\setup was reverted to
D:\cygwin-1.7.


> In retrospect, I probably should have tried rebooting first

Why, no.  Rebooting doesn't change anything.

It seems that cygcheck just reading the installation dir from the setup
key in the registry to compute the mount points isn't exactly the best
thing to do.  Given that cygcheck is usually installed into /bin, same
as the Cygwin DLL, it should probable first try to find a local Cygwin
DLL.  If it exists, it should assume that it's part of *that*
installation.  Only if that fails, it should fall back to the setup
registry key.

Given that cygcheck is no Cygwin binray itself, there's probably no
really foolproof solution for this, but we shurly can try to make
the guessing better than that.


Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Project Co-Leader          cygwin AT cygwin DOT com
Red Hat

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]