Hi

On Mon, Feb 7, 2022 at 2:00 PM Daniel P. Berrangé <berrange@redhat.com> wrote:
On Mon, Feb 07, 2022 at 01:38:17PM +0400, Marc-André Lureau wrote:
> Hi
>
> On Mon, Feb 7, 2022 at 1:16 PM Daniel P. Berrangé <berrange@redhat.com>
> wrote:
>
> > On Fri, Feb 04, 2022 at 05:20:31PM +0400, Marc-André Lureau wrote:
> > > Hi
> > >
> > > On Mon, Jan 31, 2022 at 8:18 PM Kevin Kofler via devel <
> > > devel@lists.fedoraproject.org> wrote:
> > >
> > > > For the record:
> > > >
> > > > https://www.msys2.org/docs/environments/#msvcrt-vs-ucrt states:
> > > > > MSVCRT […] Works out of the box on every Microsoft Windows versions.
> > > >
> > > > This is not entirely true. MSVCRT.DLL was introduced in Windows 95 OSR
> > 2.
> > > > The original Windows 95, with or without the only service pack released
> > > > for
> > > > it (SP1, because OSR 2 was not released as a service pack, only as an
> > "OEM
> > > > service release" for new computers), shipped only the even older
> > > > CRTDLL.DLL
> > > > (which MinGW stopped supporting years ago) out of the box, MSVCRT.DLL
> > had
> > > > to
> > > > be installed through a redistributable (which was included with many
> > > > applications including Microsoft Office, but it was not part of the
> > > > operating system).
> > > >
> > > > But yes, for Windows releases ≥ 95 OSR 2 and < 10 (and no, Windows
> > version
> > > > numbers are not anywhere near monotonic ;-) ), MSVCRT is included out
> > of
> > > > the
> > > > box, UCRT is not. Is it really a good default to depend on a runtime
> > > > library
> > > > that is only included in Windows ≥ 10?
> > > >
> > >
> > > This proposal doesn't change the default. Although we can discuss whether
> > > deprecating msvcrt support in Fedora-MinGW would make sense today.
> >
> > There's a variety of sites claiming to have stats on different
> > Windows versions. They all show Windows 10 with the majority,
> > but disagree on just how much older stuff still gets used. As
> > one example though, this shows Windows 7 with 12 % and
> > Windows 8.1 on 3 %.  That 15% is too significant to declare
> > that MSVCRT is deprecated yet.
> >
> >
> > https://gs.statcounter.com/windows-version-market-share/desktop/worldwide/
>
>
> FYI, UCRT can be installed on various Windows:
> https://support.microsoft.com/en-us/topic/update-for-universal-c-runtime-in-windows-c0514201-7fe6-95a3-b0a5-287930f3560c

Can be done automatically by the application's own MSI/NSIS installer ?
Requiring the users to do that separately is not desirable.

Those are MSU, they can be installed with wusa.exe. From NSIS should be trivial. With WiX, MsuPackage (not supported by wixl atm) or CustomAction.
 

> We should also look at the cost/benefit for Fedora to ship and maintain
> MSVCRT environments.

Or we could look at the cost/benefit of adding UCRT to Fedora, since
that's the change being proposed in this thread. In this thread

https://lists.fedoraproject.org/archives/list/mingw@lists.fedoraproject.org/message/6G2EAKYSNWMLDBWZ2BYQS3BEIRKJ2EEG/

you're proposing that Fedora stop shipping any mingw packages at all,
and just rely on MSys2 to do the packaging work. If that is the desired
solution, is it actually a benefit to spend any effort adding -ucrt64
sub-RPMs to every mingw package in Fedora today ? 

If the msys2 solution works, then there isn't much benefit shipping mingw*-packages, except for what Sandro said, to sync the Fedora native and windows versions.
 

--
Marc-André Lureau