[setup - the official Cygwin setup program] branch master, updated. release_2.916

Jon TURNEY via Cygwin-apps-cvs <[email protected]>
Newsgroups gmane.os.cygwin.cvs.apps
Message-ID <[email protected]>


https://sourceware.org/git/gitweb.cgi?p=cygwin-apps/setup.git;h=106934fe6eacd3ac28d04547f5c8ea8996348513

commit 106934fe6eacd3ac28d04547f5c8ea8996348513
Author: Jon Turney <[email protected]>
Date:   Tue Jan 18 15:02:58 2022 +0000

    Ignore 'CYGWIN=winsymlinks:lnk'
    
    Ignore 'CYGWIN=winsymlinks:lnk', rather than converting it to
    '--symlink-type lnk', which then fails with '*** --symlink-type lnk is
    not implemented'.

https://sourceware.org/git/gitweb.cgi?p=cygwin-apps/setup.git;h=47a7f7b788aa6380d72c07e3a39949de272ec145

commit 47a7f7b788aa6380d72c07e3a39949de272ec145
Author: Jon Turney <[email protected]>
Date:   Wed Jan 12 20:25:30 2022 +0000

    Show a MessageBox warning if running on a deprecated Windows version
    
    Show a MessageBox warning if we are running on a Windows version which
    we have deprecated Cygwin support for:
    
    - Windows 6.0 (Windows Vista, Windows Server 2008)
    - 32-bit Windows
    
    This warning can be disabled with '--no-warn-deprecated-windows'.

https://sourceware.org/git/gitweb.cgi?p=cygwin-apps/setup.git;h=bab20a811c24baae6af1f5407b6ce6570ef808de

commit bab20a811c24baae6af1f5407b6ce6570ef808de
Author: Jon Turney <[email protected]>
Date:   Mon Jan 10 15:54:19 2022 +0000

    Update TODO


Diff:
---
 TODO       |  8 ++++++++
 WISHLIST   |  8 --------
 main.cc    | 22 ++++++++++++++++++++--
 res.rc     |  2 ++
 resource.h |  2 ++
 5 files changed, 32 insertions(+), 10 deletions(-)

diff --git a/TODO b/TODO
new file mode 100644
index 00000000..f6087bee
--- /dev/null
+++ b/TODO
@@ -0,0 +1,8 @@
+TODO
+----
+
+* store all information for a package in installed.db
+* install build-depends for a package
+* detect duplicate filenames in multiple packages
+* Improve mirror selection UI
+
diff --git a/WISHLIST b/WISHLIST
index 6b3128f7..89aae0f6 100644
--- a/WISHLIST
+++ b/WISHLIST
@@ -1,7 +1,5 @@
 WISHLIST:
 ---------
- * 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.
@@ -11,7 +9,6 @@ WISHLIST:
    4) Something to parse a tar file name into package/version or alternatively,
       return that information from 2)
    5) Something to return a list of files associated with a package.
- * Mark versions as prev/curr/test in the GUI when clicking through them.
  * Make setup.exe available through Add/Remove
  * Local package scan stops updating when it stops being the active window.
  * Some way to download *all* the source.
@@ -24,17 +21,12 @@ WISHLIST:
    read them if they want.
  * 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.
  * 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 - "action / category / package"
- * New view - show installed packages only. Probably not categorised.
  * 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 multiple packages.
  * Show bin and src download size.
- * Confirm cancellation of setup if in the middle of doing something.
- * Improve mirror selection UI.
  * Ability to "hold" the version of a package - i.e. never auto-upgrade.
diff --git a/main.cc b/main.cc
index 162028ff..ea4152f5 100644
--- a/main.cc
+++ b/main.cc
@@ -104,6 +104,7 @@ static BoolOption HelpOption (false, 'h', "help", "Print help");
 static BoolOption VersionOption (false, 'V', "version", "Show version");
 static StringOption SetupBaseNameOpt ("setup", 'i', "ini-basename", "Use a different basename, e.g. \"foo\", instead of \"setup\"", false);
 BoolOption UnsupportedOption (false, '\0', "allow-unsupported-windows", "Allow old, unsupported Windows versions");
+static BoolOption DeprecatedOption (false, 'w', "no-warn-deprecated-windows", "Warn about deprecated Windows versions");
 static StringChoiceOption SymlinkTypeOption(symlink_types, '\0', "symlink-type", "Symlink type (lnk, native, sys, wsl)", false, SymlinkTypeMagic);
 static StringOption GuiLangOption ("", '\0', "lang", "Specify GUI language langid");
 
@@ -337,6 +338,22 @@ WinMain (HINSTANCE h,
 	Logger ().exit (1, false);
       }
 
+    /* Warn if Windows version is deprecated for Cygwin */
+    if (!DeprecatedOption)
+      {
+        if
+#ifdef _X86_
+          (TRUE)
+#else
+          (!is_64bit)
+#endif
+          mbox (NULL, IDS_DEPRECATED_WINDOWS_ARCH,
+                MB_ICONEXCLAMATION | MB_OK);
+        else if ((OSMajorVersion () == 6) && (OSMinorVersion() < 1))
+          mbox (NULL, IDS_DEPRECATED_WINDOWS_VERSION,
+                MB_ICONEXCLAMATION | MB_OK);
+      }
+
     /* Set default DACL and Group. */
     nt_sec.setDefaultSecurity ((root_scope == IDC_ROOT_SYSTEM));
 
@@ -371,8 +388,9 @@ WinMain (HINSTANCE h,
         }
       else if (cygwin.find("winsymlinks:lnk") != std::string::npos)
         {
-          symlinkType = SymlinkTypeShortcut;
-          elevate_extra_args.append("--symlink-type lnk");
+          // Ignore CYGWIN=winsymlinks:lnk, as '--symlink-type lnk' is not implemented
+          // symlinkType = SymlinkTypeShortcut;
+          // elevate_extra_args.append("--symlink-type lnk");
         }
       }
     else
diff --git a/res.rc b/res.rc
index 83d83393..1b9026ae 100644
--- a/res.rc
+++ b/res.rc
@@ -675,6 +675,8 @@ BEGIN
                     "Setup will not be able to create Cygwin Icons "
                     "in the Start Menu or on the Desktop."
     IDS_UNSUPPORTED_WINDOWS_VERSION "Cygwin is not supported on this Windows version"
+    IDS_DEPRECATED_WINDOWS_VERSION "Cygwin support for this Windows version is deprecated, and will be removed in the next major version"
+    IDS_DEPRECATED_WINDOWS_ARCH "Cygwin support for 32-bit Windows is deprecated, and will be removed in the next major version"
     IDS_MOUNT_REGISTRY_KEY_FAILED "Couldn't create registry key to store installation path"
     IDS_NIO_ERROR "Internet Error: %s"
     IDS_PREREQ_UNSOLVED_PROBLEMS
diff --git a/resource.h b/resource.h
index 0a10f648..6dfedccf 100644
--- a/resource.h
+++ b/resource.h
@@ -103,6 +103,8 @@
 #define IDS_PROGRESS_DOWNLOADING_FROM    1206
 #define IDS_FILE_INUSE_KILL              1207
 #define IDS_FILE_INUSE_MSG               1208
+#define IDS_DEPRECATED_WINDOWS_VERSION   1209
+#define IDS_DEPRECATED_WINDOWS_ARCH      1210
 
 // Dialogs
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.