Re: [PATCH setup] Show a MessageBox warning if running on a deprecated Windows version
On 18/01/2022 16:15, Jon Turney wrote: On 14/01/2022 09:04, Corinna Vinschen wrote: On Jan 13 15:13, Jon Turney wrote: Show a MessageBox warning if we are running on a Windows version which we have deprecated Cygwin support for: [..] Question is, how often should setup show this message? Every time might really be a bit annoying. Some kind of "I saw it, now leave me alone, at least for a while" kind of function would be great. Yeah, unfortunately that turns this into more effort than I'm going to commit to this: Adding a "Don't show this again" checkbox means we can't use a MessageBox, so have design a dialog box for that purpose. Making that setting persistent means we have to wait until after the cygwin root directory is established so we know where to retrieve that persistent setting from. It turns out SHMessageBoxCheck() exists, which avoids both these problems, so I've reworked this change to use that.
Re: [PATCH setup] Show a MessageBox warning if running on a deprecated Windows version
On 14/01/2022 09:04, Corinna Vinschen wrote: On Jan 13 15:13, Jon Turney wrote: 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 '--allow-unsupported-windows'. I changed this to a separate option '-w'/'--no-warn-deprecated-windows (since '--allow-unsupported-windows' has the side effect of effectively making '--site' mandatory) and applied this. --- Notes: Not sure if this is needed, or maybe this is just annoying to the ~3% of users who are running effected OSes. But maybe we want to annoy them into doing something about it? Question is, how often should setup show this message? Every time might really be a bit annoying. Some kind of "I saw it, now leave me alone, at least for a while" kind of function would be great. Yeah, unfortunately that turns this into more effort than I'm going to commit to this: Adding a "Don't show this again" checkbox means we can't use a MessageBox, so have design a dialog box for that purpose. Making that setting persistent means we have to wait until after the cygwin root directory is established so we know where to retrieve that persistent setting from.
Re: [PATCH setup] Show a MessageBox warning if running on a deprecated Windows version
On 2022-01-17 03:03, Corinna Vinschen wrote: On Jan 16 17:55, Hamish McIntyre-Bhatty wrote: This reminds me: It's probably useful for me to support 32-bit even after Cygwin no longer does for my commercial project(s). Which probably means I should release said package soon (I couldn't get the rebase to work on 32-bit before, will ask another question soon. Are all the 32-bit packages going offline after support ends or will it remain as a kind of graveyard? This hasn't been decided yet. I *guess* we keep the 32 bit packages around for a while. Like other setup and package versions, they should remain available as long as Peter Castro maintains the Cygwin Time Machine at http://www.fruitbat.org/ subsite http://www.crouchingtigerhiddenfruitbat.org/Cygwin/timemachine.html -- Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada This email may be disturbing to some readers as it contains too much technical detail. Reader discretion is advised. [Data in binary units and prefixes, physical quantities in SI.]
Re: [PATCH setup] Show a MessageBox warning if running on a deprecated Windows version
On Jan 16 17:55, Hamish McIntyre-Bhatty wrote: > This reminds me: It's probably useful for me to support 32-bit even after > Cygwin no longer does for my commercial project(s). Which probably means I > should release said package soon (I couldn't get the rebase to work on > 32-bit before, will ask another question soon. Are all the 32-bit packages > going offline after support ends or will it remain as a kind of graveyard? This hasn't been decided yet. I *guess* we keep the 32 bit packages around for a while. Corinna
Re: [PATCH setup] Show a MessageBox warning if running on a deprecated Windows version
On 16/01/2022 13:46, Adam Dinwoodie wrote: On Fri, Jan 14, 2022 at 12:45:06PM +0100, Corinna Vinschen wrote: On Jan 14 10:54, Adam Dinwoodie wrote: On Fri, 14 Jan 2022 at 09:05, Corinna Vinschen wrote: On Jan 13 15:13, Jon Turney wrote: 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 '--allow-unsupported-windows'. --- Notes: Not sure if this is needed, or maybe this is just annoying to the ~3% of users who are running effected OSes. But maybe we want to annoy them into doing something about it? Question is, how often should setup show this message? Every time might really be a bit annoying. Some kind of "I saw it, now leave me alone, at least for a while" kind of function would be great. Eh. The installer tries to add icons to my desktop every time I run it unless I provide a command-line argument every time. This behaviour seems no more or less annoying to me, and I think having users see that warning is much more important than adding a desktop icon. Point. Perhaps more constructively: I've become inured to the bits of setup's behaviour that I find annoying, and I've created my own workarounds (specifically, a bash function that wraps setup and automatically provides a bunch of arguments, including `-d` to avoid adding icons I don't want). I expect most people who are using setup have also become inured to these annoyances, and I don't think adding this additional warning is a significant additional annoyance. That said, just because I've become inured to these annoyances, doesn't mean we* couldn't do better. In particular, I think a lot of the parts of the setup UI you have to go through every time could more usefully be hidden after a user has gone through them once, and only displayed again if (a) the user requested that with a command-line option, (b) the options have legitimately changed, or possibly (c) the user clicks (say) an "Advanced mode" button on the first page of the installer. In particular, I expect the installer would be that bit friendlier to most users if the default behaviour were as if `-Mn` were specified by default every time after the first run. This is obviously well outside the scope of the immediate conversation, but I thought it worth revisiting the topic with a more constructive view, rather than my initial slightly grumpy reaction. Adam * I say "we" here; I sadly do not have the bandwidth for committing to working on even small enhancements to setup's usability. The perennial open source issue: someone has to do it, and I have far too many other things to spend time on... This reminds me: It's probably useful for me to support 32-bit even after Cygwin no longer does for my commercial project(s). Which probably means I should release said package soon (I couldn't get the rebase to work on 32-bit before, will ask another question soon. Are all the 32-bit packages going offline after support ends or will it remain as a kind of graveyard? Hamish McIntyre-Bhatty
Re: [PATCH setup] Show a MessageBox warning if running on a deprecated Windows version
On Fri, Jan 14, 2022 at 12:45:06PM +0100, Corinna Vinschen wrote: > On Jan 14 10:54, Adam Dinwoodie wrote: > > On Fri, 14 Jan 2022 at 09:05, Corinna Vinschen wrote: > > > On Jan 13 15:13, Jon Turney wrote: > > > > 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 '--allow-unsupported-windows'. > > > > --- > > > > > > > > Notes: > > > > Not sure if this is needed, or maybe this is just annoying to the > > > > ~3% of > > > > users who are running effected OSes. But maybe we want to annoy > > > > them > > > > into doing something about it? > > > > > > Question is, how often should setup show this message? Every time might > > > really be a bit annoying. Some kind of "I saw it, now leave me alone, > > > at least for a while" kind of function would be great. > > > > Eh. The installer tries to add icons to my desktop every time I run it > > unless I provide a command-line argument every time. This behaviour > > seems no more or less annoying to me, and I think having users see > > that warning is much more important than adding a desktop icon. > > Point. Perhaps more constructively: I've become inured to the bits of setup's behaviour that I find annoying, and I've created my own workarounds (specifically, a bash function that wraps setup and automatically provides a bunch of arguments, including `-d` to avoid adding icons I don't want). I expect most people who are using setup have also become inured to these annoyances, and I don't think adding this additional warning is a significant additional annoyance. That said, just because I've become inured to these annoyances, doesn't mean we* couldn't do better. In particular, I think a lot of the parts of the setup UI you have to go through every time could more usefully be hidden after a user has gone through them once, and only displayed again if (a) the user requested that with a command-line option, (b) the options have legitimately changed, or possibly (c) the user clicks (say) an "Advanced mode" button on the first page of the installer. In particular, I expect the installer would be that bit friendlier to most users if the default behaviour were as if `-Mn` were specified by default every time after the first run. This is obviously well outside the scope of the immediate conversation, but I thought it worth revisiting the topic with a more constructive view, rather than my initial slightly grumpy reaction. Adam * I say "we" here; I sadly do not have the bandwidth for committing to working on even small enhancements to setup's usability. The perennial open source issue: someone has to do it, and I have far too many other things to spend time on...
Re: [PATCH setup] Show a MessageBox warning if running on a deprecated Windows version
On Jan 14 10:54, Adam Dinwoodie wrote: > On Fri, 14 Jan 2022 at 09:05, Corinna Vinschen wrote: > > On Jan 13 15:13, Jon Turney wrote: > > > 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 '--allow-unsupported-windows'. > > > --- > > > > > > Notes: > > > Not sure if this is needed, or maybe this is just annoying to the ~3% > > > of > > > users who are running effected OSes. But maybe we want to annoy them > > > into doing something about it? > > > > Question is, how often should setup show this message? Every time might > > really be a bit annoying. Some kind of "I saw it, now leave me alone, > > at least for a while" kind of function would be great. > > Eh. The installer tries to add icons to my desktop every time I run it > unless I provide a command-line argument every time. This behaviour > seems no more or less annoying to me, and I think having users see > that warning is much more important than adding a desktop icon. Point. Corinna
Re: [PATCH setup] Show a MessageBox warning if running on a deprecated Windows version
On Fri, 14 Jan 2022 at 09:05, Corinna Vinschen wrote: > On Jan 13 15:13, Jon Turney wrote: > > 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 '--allow-unsupported-windows'. > > --- > > > > Notes: > > Not sure if this is needed, or maybe this is just annoying to the ~3% of > > users who are running effected OSes. But maybe we want to annoy them > > into doing something about it? > > Question is, how often should setup show this message? Every time might > really be a bit annoying. Some kind of "I saw it, now leave me alone, > at least for a while" kind of function would be great. Eh. The installer tries to add icons to my desktop every time I run it unless I provide a command-line argument every time. This behaviour seems no more or less annoying to me, and I think having users see that warning is much more important than adding a desktop icon.
Re: [PATCH setup] Show a MessageBox warning if running on a deprecated Windows version
On Jan 13 15:13, Jon Turney wrote: > 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 '--allow-unsupported-windows'. > --- > > Notes: > Not sure if this is needed, or maybe this is just annoying to the ~3% of > users who are running effected OSes. But maybe we want to annoy them > into doing something about it? Question is, how often should setup show this message? Every time might really be a bit annoying. Some kind of "I saw it, now leave me alone, at least for a while" kind of function would be great. Other than that, for people not visiting the home page or subscribing to the mailing lists that may turn out to be an important info, so I'm for it. Corinna
[PATCH setup] 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 '--allow-unsupported-windows'. --- Notes: Not sure if this is needed, or maybe this is just annoying to the ~3% of users who are running effected OSes. But maybe we want to annoy them into doing something about it? main.cc| 23 +++ res.rc | 2 ++ resource.h | 2 ++ 3 files changed, 23 insertions(+), 4 deletions(-) diff --git a/main.cc b/main.cc index 162028f..818b01b 100644 --- a/main.cc +++ b/main.cc @@ -330,11 +330,26 @@ WinMain (HINSTANCE h, } /* Check if Cygwin works on this Windows version */ -if (!UnsupportedOption && (OSMajorVersion () < 6)) +if (!UnsupportedOption) { - mbox (NULL, IDS_UNSUPPORTED_WINDOWS_VERSION, - MB_ICONEXCLAMATION | MB_OK); - Logger ().exit (1, false); +if (OSMajorVersion () < 6) + { +mbox (NULL, IDS_UNSUPPORTED_WINDOWS_VERSION, + MB_ICONEXCLAMATION | MB_OK); +Logger ().exit (1, false); + } + +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. */ diff --git a/res.rc b/res.rc index 83d8339..1b9026a 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 0a10f64..6dfedcc 100644 --- a/resource.h +++ b/resource.h @@ -103,6 +103,8 @@ #define IDS_PROGRESS_DOWNLOADING_FROM1206 #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 -- 2.34.1