This directory contains the source for the setup program for the cygwin
net releases.

TODO:

* Mirrors list orer is snafued.
* Don't downgrade if the curr version is <= installed?
* support rpm/deb files for reading the package from. (To allow the maintainers the use of rpm/deb tools to create packages.)
  * make a librar(y|ies) for setup and cygcheck to use containing 
  1) Something to translate POSIX -> native.  Currently called "cygpath"
     in setup, although this is probably a bad choice of name.
  2) Something to return the list of installed packages.
  3) Something to return the cygwin mount table.  Currently, I have implemented
     a lightweight setmntent and getmntent using the code in 
  4) Something to parse a tar file name into package/version or altenatively,
     return that information from 2)
  5) Something to return a list of files associated with a package.
* When installing and enough packages default to visible, the RH scrollbar is 
  sometimes hidden.
* Mark versions as prev/curr/test in the GUI when clicking through them.
* Remove *empty* directories on uninstalls
* Correctly overwrite -r--r--r-- files.
* Make setup.exe available through Add/Remove
 	   
WISHLIST:
  *  rsync:// support
  *  Some way to download *all* the source
  *  When clicking on a category that is showing a partial list (auto added items due to dependencies) show the full list rather than minising.
  *   incremental/recoverable download capability.
  *   build-depends
  *   FTP control connections should be closed when we are awaiting user input.
  *   Show a sdesc for each category
  * Add friendly error reporting to simpsock.cc
  * scan newly installed files for README files, show list to user, let them read them if they want.
   * Mouse wheel support broken/missing for *some* users.
   * When in category view, and changing from prev->normal->exp the categories get collapsed This is non-intuitive.
   * mirrors.lst to be copied to setup.ini and cached locally. Then the master mirrors list is reserved for bootstrapping.
   * clicking on a package that is in multiple categories should update the view of the package in both locations on screen. - Done?
   * remember the view mode - ie if you leave setup in partial, it returns to partial automatically.
   * new view - "action / category / package"
   * Downloading from the internet should be _able_ to list based on what is present in the cache, as opposed to what is installed. (To help building a complete install set for a different machine).
   * new view - show installed packages only. Probably not categorised.
   * new view - show non installed packages only.

- Have an option to display any downloaded READMEs (or at least mention that they exist)
- Don't ask about the start menu or desktop options if they already exist
 * Save the manual proxy settings so they don't need to be retyped.
 * detect files in mulitple packages
 * save all options
 * run a different script after finishing setup.
 * Show bin and src download size
 * Set ntsec permissions correctly, and for new installs enable ntsec.
   
recently completed

 * view button is not clear at first view. (the dotted highlight).
 *  continue downloading past errors, present log of failures at end (partial)
 * multiple mirror support, with setup.ini from each merged automagically.
 * installed packages aren't automatically upgraded.
 * Dependencies should not trigger alterations to user actions for installed packages that have any action other than uninstall.
 * Wide descriptions can get truncated - ie SSMTP
 * SKIP and KEEP sometimes appearing for the same package.
 * Set the screen size for 640x480 users
 * View mdoe caption on the right hand of the screen
 * Downloading from the internet should allow redownloading already present files. (This
   happens via the reinstall/redo already - perhaps this is "done".)
 * Make skip only ever appear for non-installed packages.
 *   skip sould be followed by the <prec/curr/exp> from the radio buttons, not by prev.
 * Src tickbox /source only can be confusing.
 *   ini.cc: add field in setup.ini to specify whether package is installed by default, or not. (base category does this)
 * Remove "/" from symlinks (etags.exe->/ctags.exe is an example
 * Src tickbox /source only can be confusing.
 * Handle UNC paths for the localdir correctly.
 * Chooser dialog needs work.
