[PATCH setup v4 0/6] Distinguish between user URLs and cygwin mirrors in UI

Ken Brown kbrown@cornell.edu
Sun Dec 10 17:49:00 GMT 2017

This is a followup to


in which Jon suggested splitting site selection into two pages, one
for cygwin.com mirrors (including private mirrors) and one for URLs of
other package repositories.  The latter would be visible only if the
user had previously checked a suitable checkbox.  This patch series
implements that suggestion.  [I hope that I now understand the
suggestion correctly.]

The page for mirrors shows the area and location of official mirrors
(from mirrors.lst), as suggested by Brian Inglis.  Private mirrors are
sorted last, with full URLs.

[Brian, see the last patch, which is in your name.  Feel free to
improve it.]

This version of the patch series introduces a new bool member
site_list_type::is_mirror to distinguish mirrors (including private
ones) from non-mirrors.

TODO: Implement a way of validating purported mirrors.  For example,
we could make sure they are signed with the cygwin signing key.  Or if
the user has used the -X option to turn off signature checking, we
could make sure that setup.ini contains "release: cygwin".

Once we finish discussing this patch series, I'll look into that.

Brian Inglis (1):
  Display area and location of official mirrors

Ken Brown (5):
  Use the IDD_SITE dialog for cygwin.com mirrors only
  Use SitePage for cygwin.com mirrors only
  Create new page UserSitePage for user URLs
  Keep the mirror list sorted properly
  Display full URLs of user sites and private mirrors

 Makefile.am |   2 +
 main.cc     |   4 +
 res.rc      |  43 ++++++++--
 resource.h  |   6 ++
 site.cc     | 267 ++++++++++++++++++++++++++++++++++++++++++-----------------
 site.h      |  10 ++-
 usersite.cc | 268 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 usersite.h  |  43 ++++++++++
 8 files changed, 558 insertions(+), 85 deletions(-)
 create mode 100644 usersite.cc
 create mode 100644 usersite.h


More information about the Cygwin-apps mailing list