Mail Archives: cygwin/2000/07/03/14:21:51
On Mon, Jul 03, 2000 at 10:47:39AM -0700, friedman_hill ernest j wrote:
>I think Chris Faylor wrote:
>> >I had wondered about this myself. I like the links better because I
>> >want to have cygnus root at d:/ and I want d:/ mounted as /. Having
>> >cygnus root at some lower directory just makes things vaguely
>> >confusing, IMO.
>>
>> So, feel free to use d:\ as your root. No one is stopping you. This
>> has no bearing on whether you symlink /usr/bin to /bin or use mount.
>
>But it -does- stop me; it stops me from using setup, anyway. Setup's
>built in tar doesn't try to figure out what's going on if it sees a
>symlink from bin to /usr/bin. Instead it deletes the symlink and
>creates a /bin directory and puts things into it. It would be nice if
>Setup recognized the situation as acceptable and just put the files
>into /usr/bin.
>>>Anyway, I recently found out why it is done this way: it's because the
>>>setup program can't grok symlinks! When setup untars an installer
>>>tarball, it uses its own built-in untar routines which use Win32
>>>filesystem calls directly. I'm not 100% sure why its this way, but I
>>>suppose it's so that setup can bootstrap a new installation without
>>>installing the DLL first.
>>
>>You're apparently looking at DJ's work in progress. The setup.exe
>>program on sourceware does understand symlinks.
>
>Well, it might, but it still would clobber them and create mount points
>instead. But yes, the source I was looking at was CVS top copy.
>
>>As to why they aren't used, please check the archives. I never
>>anticipated being second-guessed so often on this decision. It's
>>really incredible to see the number of times that this idea has been
>>raised and presented to me as if this was something I would not have
>>thought of.
>
>I've been following the list for a long time, and I've never seen a
>reall explanation about this;
>
>things want software in /bin, and some in /usr/bin; and endless
>recapilutaion of the fact that identity mounts are bad given the way
>Cygwin sets things up by default.
There is nothing wrong with identity mounts if you know what you're
doing. The setup program suggests that it would be a good idea to
install everything in a "cygwin" directory so as not to clutter the root
of some drive with extra files. Just close your eyes if you don't
like the warning and hit "y".
It is a good idea, in general, to isolate everything that is
cygwin-related into its own cygwin directory. Setup.exe is less likely
to pollute existing x:\bin and x:\lib (which may contain non-cygwin
code) directories that way.
>I have neevr seen an explanation of why things aren't simply set up
>with x:/mounted as /, and x:/bin -> x:/usr/bin, and x:/lib ->
>x:/usr/lib. This setup works absolutely perfectly once created, and it
>annoys me that setup won't respect it.
I've explained why we don't use symbolic links. If you want to use
the root of a disk, feel free.
If you want to submit a patch to honor or create symbolic links, then
DJ may welcome it. I don't know what he plans in this area.
>I'll gladly just fix my own copy of setup, and share it with
>interested parties on my own, but it seems like there are so many
>other people who would like setup to act this way that it should be at
>least a switched behaviour of the official tool.
See above.
>>The bottom line is that symlinks do not work on samba mounted
>>directories.
>
>This has nothing whatsoever to do with Samba; I'm talking about cygnus
>symlinks.
It is entirely possible that a user will install cygwin onto a samba
mounted directory. You may not use samba or you may not install cygwin
onto a samba drive. Other people do.
When we first contemplated the new directory structure on the
cygwin-developers mailing list, I really wanted to use symlinks. I
tried to invent an alternate way of dealing with symlinks that would
work on a samba drive but I wasn't successful. Eventually we came to
the conclusion that it wasn't feasible to use symlinks given the
possibility of installing on a samba drive.
We decided that it was best to consistently use a mounted directory
rather than a symlink. This has the added benefit of being slightly
faster as well. Mount points are faster to access than symlinks since
there is no disk activity involved in translating a mount point.
I suppose that we could have used symlinks in some cases and mount
points in others but we opted for consistency, at least in the
preliminary version of setup.exe.
cgf
--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe AT sourceware DOT cygnus DOT com
- Raw text -