setup goals

Robert Collins robert.collins@itdomain.com.au
Mon May 6 08:14:00 GMT 2002


I thought I'd make the setup design and coding and make goals clear in
one place - I don't think it's been done recently. I don't anticipate
this document being controversial, but if you do disagree with what I
say, please speak up!

Setup's primary goal is to be:
A mingw application to bootstrap a cygwin install from ftp and http
servers. This means that size matters. As does 'intuitiveness'. It
should 'just work'.

Setup's main secondary goal is:
To allow incremental installs and updates of the cygwin net distribution
for cygwin users, in an easy, intuitive fashion.

As long as those two goals are consistently met, setup can enlarge to
accomplish other things, such as:
* rebasing
* rebinding
* command line options
* optional console based version.
* rsync support.
* mirroring.
* scripting.
* 'native' compilation.
* WINE compilation/execution.
* code base reuse for other setup.ini/cygwin package tasks.

And I'm sure there are more.

Patches to HEAD that break the first two goals, will only be accepted on
a 'temporary break until xyz' basis.
Patches to HEAD (or checkings from non-reviewed committers such as
Chris) that break the first two will be accidental (I hope!).

The point of this is that the only thing I *always* test is mingw
targeted compilation, and install from net. Other things may break, and
if they do, they will get fixed, but not at the same priority as if a
break occurred to the first two things.

Second to last, patches to 'release' branches, such as setup-200205,
will only ever be for critical bug fixes, not for UI enhancements and
the like. 

Lastly, on development branches, anything goes, I don't care if a
development branch even builds. (Currently we don't have any development
branches).

Rob



More information about the Cygwin-apps mailing list