From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 2201) id 3CC9B3857C51; Tue, 18 Jan 2022 15:29:31 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 3CC9B3857C51 To: cygwin-apps-cvs@sourceware.org Subject: [setup - the official Cygwin setup program] branch master, updated. release_2.916 X-Git-Refname: refs/heads/master X-Git-Reftype: branch X-Git-Oldrev: 2fd81bdf6ad6fc0c116c4a9b4c888f6b9110c08e X-Git-Newrev: 106934fe6eacd3ac28d04547f5c8ea8996348513 Message-Id: <20220118152931.3CC9B3857C51@sourceware.org> Date: Tue, 18 Jan 2022 15:29:31 +0000 (GMT) From: Jon TURNEY X-BeenThere: cygwin-apps-cvs@cygwin.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Cygwin-apps git logs List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jan 2022 15:29:31 -0000 https://sourceware.org/git/gitweb.cgi?p=cygwin-apps/setup.git;h=106934fe6eacd3ac28d04547f5c8ea8996348513 commit 106934fe6eacd3ac28d04547f5c8ea8996348513 Author: Jon Turney 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 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 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