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] New package: stow


> Does stow have support for hard links at all?

No, not at present.

> If not is that an easy 
> thing to add in?

It probably is, although I can't spend any time on it in the foreseeable 
future.  

>  Such an option would make stow more useful on Cygwin, IMHO.

I think you're right, for the following reasons.

One, as I said in the announcement, Cygwin implements symlinks as 
Windows shortcuts, which are broken.  Therefore, stow will only be 
useful for installing software that is used exclusively within Cygwin 
(which interprets the shortcuts to emulate POSIX behavior) and that 
doesn't install any DLLs (since Windows won't interpret the symlinks 
correctly).

Two, Cygwin implements hard links as file copies.  Windows file systems 
don't support hard links, so this is probably the best that can be done.  
So 'ln a b' is really the same as 'cp -p a b'.

Now that approach has obvious disadvantages (it uses twice the disk 
space; changes in either file aren't reflected in the other, since 
they're different files), but for software installation it would have 
the advantage of solving the symlink problem.  Installed files 
(including DLLs) would just be copied into the installation directory, 
where Windows can use them.  The original, stowed copy (e.g. 
/usr/local/stow/emacs) would become superfluous, except as a map of 
which files to delete if you want to uninstall the package.  Also, the 
problem of modifications to the target not being reflected in the source 
probably isn't very important for software installation, since the 
package files don't get changed much.

So, if someone wanted to pursue this, I think it would be useful.
Andrew.

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


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