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: FAQ suggestion


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/


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