<html>
    <head>
      <base href="https://bugs.documentfoundation.org/">
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_UNCONFIRMED "
   title="UNCONFIRMED - Main LibreOffice MSI Package should be compiled with external .cab file to reduce installation size requirements"
   href="https://bugs.documentfoundation.org/show_bug.cgi?id=122824">122824</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>Main LibreOffice MSI Package should be compiled with external .cab file to reduce installation size requirements
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>LibreOffice
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>3.3.0 release
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>All
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Windows (All)
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>UNCONFIRMED
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>enhancement
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>medium
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>Installation
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>libreoffice-bugs@lists.freedesktop.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>joaopauloag-freedesktop@yahoo.com.br
          </td>
        </tr></table>
      <p>
        <div>
        <pre>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
"<a href="https://blogs.msdn.microsoft.com/heaths/2009/02/02/changes-to-package-caching-in-windows-installer-5-0/">https://blogs.msdn.microsoft.com/heaths/2009/02/02/changes-to-package-caching-in-windows-installer-5-0/</a>".

After some Internet searching, I found that .msi files can contain another .msi
file and can be chained to run sequentially (see
"<a href="https://docs.microsoft.com/pt-br/windows/desktop/Msi/multiple-package-installations">https://docs.microsoft.com/pt-br/windows/desktop/Msi/multiple-package-installations</a>",
"<a href="https://docs.microsoft.com/pt-br/windows/desktop/Msi/concurrent-installations">https://docs.microsoft.com/pt-br/windows/desktop/Msi/concurrent-installations</a>",
and "<a href="http://wixtoolset.org/documentation/manual/v3/bundle/">http://wixtoolset.org/documentation/manual/v3/bundle/</a>"). 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.</pre>
        </div>
      </p>


      <hr>
      <span>You are receiving this mail because:</span>

      <ul>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>