On Tue, Mar 18, 2008 at 02:15:58PM -0700, Dan Kegel wrote: >The last company I worked for tried bundling Cygwin (with sources, natch) >as part of a product. Predictably (to those who have tried this), >this caused big problems because it conflicted with any Cygwin >installed on customers' machines. > >Looking at the archives, I see at least a couple other people have >tried to do this, e.g. >http://www.cygwin.com/ml/cygwin/2001-10/msg00625.html >http://www.cygwin.com/ml/cygwin/2001-10/msg00650.html >http://www.cygwin.com/ml/cygwin/2007-03/msg00862.html > >but the Cygwin developers always reply with >"Don't do that. There can be only one instance of cygwin." > >I'd like to see an FAQ entry about this, e.g. > >http://cygwin.com/faq/faq.programming.html#faq.bundled.cygwin > >--- snip -- >Q. I want to bundle Cygwin with a product, and ship it to customer >sites. How can I do this without conflicting with any Cygwin >installed by the user? > >A. Cygwin is not designed for this; the developers >official position is that there should be only one instance of >cygwin on any system, and that it should be updated >to the latest version constantly. So please don't try. >It will only bring you grief. > >What, you're still here? Move on to the next question, >nothing to see here. > >Oh, ok. If you want to do it anyway, one way to do it is to >change four places in the Cygwin source tree and >rebuild from scratch, then ship both source and binary of >Cygwin with your product. The four places are: >- change the updater to point to your own update server, or disable it >- change the name of the shared/common memory area >- change the location in the registry where Cygwin settings are kept >- rename the cygwin1.dll (such that all apps you build know the new name) >It's a daunting prospect. One can imagine a shell script that >automates producing such a modified version of Cygwin, >but nobody has written one yet. >--- snip --- > >How's that look? Corrections welcome.
You somehow managed to get part of the message while tanking on the rest. We're not going to TELL people that it's ok to make random changes to the source. That is not true. We're not going to imply in any way that keeping multiple copies around is sanctioned by giving instructions. Your instructions are incomplete and imprecise. But, then, they always are. And, they probably always will be because no one would be compelled to update them if/when Corinna or I make changes to the Cygwin sources. So, we DON'T WANT people doing this. What we actually want a 3PP to do is check if there is a version of cygwin installed and use the installed version if it is a newer or conditionally upgrade if it is not. If someone wrote a nice utility for doing this type of checking, I'd be happy to put it somewhere on the Cygwin site. We're not going to tell people that it's ok to keep multiple copies around because that just isn't true. Yes, I know. It's horribly inconvenient for those people who really want to make a buck by bundling this totally free software with their apps. And, maybe the 3PP just wants one or two cygwin utilities and what's the big deal and *you* made the changes to the source and everything (seemed to) work just fine and maybe it's time to think about this because it's been a "problem" for so long and cygwin will die a horrible screaming painful death if something isn't done very soon. Still not gonna happen. cgf -- 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/