Hi Mike,

this is a good idea, but I think the better way is, when the system need the 
vc_redist then we "download" the new  vc_redist.exe from MS and starting.
This has 2 advantage 
 - the LO msi would not be bigger 
 - we install always the up to date redist-dll's

In the current way it is possible you install older one of the dll's, and after 
the LO installation it pop up the Windows-Update, that I think is a little bit 
strange.

In the unattended installation, I think that is okay, the admin should only 
inform, what he need for running the LO

Best
Juergen

PS.: it is possible, that email would be block from list.freedesktop.org, all 
spam goes but mine always block, that life


-----Ursprüngliche Nachricht-----
Von: LibreOffice [mailto:libreoffice-boun...@lists.freedesktop.org] Im Auftrag 
von Mike Kaganski
Gesendet: Mittwoch, 13. Dezember 2017 14:02
An: libreoffice@lists.freedesktop.org
Betreff: tdf#108580: integrate vc_redist.exe into Windows installer

Hi!

Some time ago, we had a ESC decision [1] to use a workaround for bug
108580 [2] about problem with VCRedist, which stopped to install essential part 
of libraries on Windows Vista and above (currently affected are Win7, Win8, and 
Win8.1), which was done in 71d9a61302e65fe091cf70c13fa72b3df09b7e3a [3], and 
"for 6.0 do something clever".

Here is the proposal [4] that pretends to be clever :) The following is 
essentially a copy-paste from the patch commit message:

Since commit 71d9a61302e65fe091cf70c13fa72b3df09b7e3a, we use a workaround 
described at [5] as "App-local deployment of the Universal CRT". We just copy 
all UCRT DLLs to LibreOffice/program. This has a drawback though, that our UCRT 
is not updated by Windows Update, so users would rely on LibreOffice updates in 
case of some vulnerabilities in UCRT (and they could even not realize they have 
that problem).

MS recommends to install UCRT using EXEs they provide from their site. 
The EXEs install both VCRuntimes and UCRTs, along with required patches, for 
all Windows versions (Windows XP through Windows 10, where they only install 
VCRuntimes); the installed libraries are managed by system's update mechanism. 
But those EXEs cannot be used in MSI custom actions inside 
InstallExecuteSequence, because they use MSI themselves.

So this patch integrates the vc_redist.xXX.exe into MSI binary table, and uses 
custom action to run the EXE after ExecuteAction in InstallUISequence. This 
will show the user a VCRedist install window after the main LibreOffice 
installation finishes; no user interaction is required (except one more UAC 
request), and errors are ignored.

Since this installation takes care of both VCRuntime and UCRT, we can 
ultimately drop both the app-local workaround, and vcredist merge module (so 
VCRuntime would also be updated by system).

This has its drawback: if one wants to use unattended installation (without UI; 
one example is deployment using ActiveDirectory GPO), then InstallUISequence is 
not run, and so VCRedist isn't installed. In this case, one should install 
VCRedist separately. Supposedly this should not be huge problem, because this 
is the case for many existing applications that need separate VCRedist 
deployment in these scenarios.

Please share your opinions. Is this change viable?

The patch itself IMO needs some polish: I suppose that we should remove 
redundant workaround (and possibly even merge module bits) if we accept it. But 
it is in working state, so testing is possible.

[1]
https://lists.freedesktop.org/archives/libreoffice-qa/2017-November/010300.html
[2] https://bugs.documentfoundation.org/show_bug.cgi?id=108580
[3]
https://cgit.freedesktop.org/libreoffice/core/commit/?id=71d9a61302e65fe091cf70c13fa72b3df09b7e3a
[4] https://gerrit.libreoffice.org/46356
[5]
https://blogs.msdn.microsoft.com/vcblog/2015/03/03/introducing-the-universal-crt/

--
Best regards,
Mike Kaganski
_______________________________________________
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice
_______________________________________________
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice

Reply via email to