Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT sourceware DOT cygnus DOT com Delivered-To: mailing list cygwin AT sourceware DOT cygnus DOT com Date: Mon, 3 Jul 2000 14:20:40 -0400 From: Chris Faylor To: friedman_hill ernest j Cc: Tony Arnold , cygwin AT sourceware DOT cygnus DOT com Subject: Re: Inetutils and mount points Message-ID: <20000703142040.A28305@cygnus.com> Reply-To: cygwin AT sourceware DOT cygnus DOT com Mail-Followup-To: friedman_hill ernest j , Tony Arnold , cygwin AT sourceware DOT cygnus DOT com References: <20000703122906 DOT C27379 AT cygnus DOT com> <200007031747 DOT KAA14285 AT california DOT sandia DOT gov> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2i In-Reply-To: <200007031747.KAA14285@california.sandia.gov>; from ejfried@california.sandia.gov on Mon, Jul 03, 2000 at 10:47:39AM -0700 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