[Libreoffice-bugs] [Bug 122824] New: Main LibreOffice MSI Package should be compiled with external .cab file to reduce installation size requirements

bugzilla-daemon at bugs.documentfoundation.org bugzilla-daemon at bugs.documentfoundation.org
Sun Jan 20 05:08:10 UTC 2019


https://bugs.documentfoundation.org/show_bug.cgi?id=122824

            Bug ID: 122824
           Summary: Main LibreOffice MSI Package should be compiled with
                    external .cab file to reduce installation size
                    requirements
           Product: LibreOffice
           Version: 3.3.0 release
          Hardware: All
                OS: Windows (All)
            Status: UNCONFIRMED
          Severity: enhancement
          Priority: medium
         Component: Installation
          Assignee: libreoffice-bugs at lists.freedesktop.org
          Reporter: joaopauloag-freedesktop at yahoo.com.br

Description:
LibreOffice installation uses too much storage on Windows, but can use a lot
less by using a stripped down LibreOffice.msi package. Please follow my
explanation:

Before version 5, Windows Installer used to strip MSI packages from all .cab
files  before caching the .msi file inside \Windows\Installer folder. The
cached installer package therefore contained only the installer structure and
was kept small and didn't increase installation storage requirements
unnecessarily.

After Windows Installer 5 (which came with Windows 7), .msi files were cached
in full size to avoid breaking the file signature (it affected UAC prompt on
setup launch from Control Panel, Add/Remove Programs on Windows Vista). The
cached installer packages are kept in full size, increasing storage
requirements unnecessarily.

Both paragraphs above summarizes the information at
"https://blogs.msdn.microsoft.com/heaths/2009/02/02/changes-to-package-caching-in-windows-installer-5-0/".

After some Internet searching, I found that .msi files can contain another .msi
file and can be chained to run sequentially (see
"https://docs.microsoft.com/pt-br/windows/desktop/Msi/multiple-package-installations",
"https://docs.microsoft.com/pt-br/windows/desktop/Msi/concurrent-installations",
and "http://wixtoolset.org/documentation/manual/v3/bundle/"). Therefore, it
should be possible to build two .msi packages:

* "LibreOffice_inner.msi" + "LibreOffice_inner.cab", it's the main LibreOffice
.msi package that will be installed, and which would go inside of:
* "LibreOffice_outer.msi", which would be downloaded from www.libreoffice.org
and be visible to the user.

The idea is that the user only deals with the "LibreOffice_outer.msi" package,
which would extract "LibreOffice_outer.msi" and "LibreOffice_inner.cab" to the
%Temp% folder, pass all the install properties/features the user selected
(either by the GUI, the command line or by a transform .mst file) to it, then
only the bundled/chained package would be installed. Therefore, Windows
Installer 5 (on Windows 7 and newer) would only copy the stripped down
"LibreOffice_inner.msi".

Although current hard disk drives are on the 500GB+ range, people who uses
solid state drives (not my case) has a lot less storage space available. Also,
people with HDDs would still benefit from the approximately 240MB free space,
be it because of the space, or be it because it's less data to defragment or to
mirror inside a backup or system image.

Steps to Reproduce:
1. Download LibreOffice for Windows, then install it.
2. Open \Windows\Installer folder (it's hidden by default).
3. Find the .msi file related to LibreOffice (it has a random hex name) by
righ-clicking it, then Properties, Details (it will have "LibreOffice" as its
subject property).
4. Open the found .msi file with 7-Zip, then check its properties (Info button
at toolbar).
4. Check the file size: It's exactly the same as the downloaded file.

Actual Results:
The cached LibreOffice .msi file inside Windows\Installer folder is the same
size as the downloaded LibreOffice .msi file because it has the
libreoffice1.cab inside of it.

Expected Results:
It would be better if the cached file was minimal, without the .cab file inside
of it.


Reproducible: Always


User Profile Reset: No



Additional Info:
Although Windows Installer 5 (from Windows 7 and newer) doesn't strip the .msi
file from its internal .cab file, there is a way to author the .msi file so the
cached .msi file doesn't have the .cab file embedded.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/libreoffice-bugs/attachments/20190120/666f2999/attachment-0001.html>


More information about the Libreoffice-bugs mailing list