Difference between revisions of "LibreOffice"

From WPKG | Open Source Software Deployment and Distribution
Jump to: navigation, search
(LibreOffice 3.3.x: Tidying up language)
(Common Installer Options: Changed meaning of ALLUSERS from what I wrongly set it to)
Line 23: Line 23:
  
 
* REGISTER_ALL_MSO_TYPES - Use LibreOffice as the default application for Microsoft Office file formats
 
* REGISTER_ALL_MSO_TYPES - Use LibreOffice as the default application for Microsoft Office file formats
* ALLUSERS (default=1) - Install shortcuts in All Users directory
+
* ALLUSERS (default=1) - performs a per-user installation or per-machine installation depending on the access privileges of the user
 
* ISCHECKFORPRODUCTUPDATE (default=1) - Check for updates
 
* ISCHECKFORPRODUCTUPDATE (default=1) - Check for updates
 
* CREATEDESKTOPLINK  (default=1) - Create desktop shortcuts
 
* CREATEDESKTOPLINK  (default=1) - Create desktop shortcuts

Revision as of 19:37, 28 July 2011

LibreOffice is an office suite. It is a fork of OpenOffice, and a replacement of Novell's Go-OO, managed by the Document Foundation. See www.libreoffice.org


Get LibreOffice

Download LibreOffice from www.libreoffice.org/download/

You need the program itself:

  • LibO_3.x.x_Win_x86_install_multi.exe

or

  • LibO_3.x.x_Win_x86_install_all_lang.exe (for uncommon languages)

Additionaly you may want to install the help package for your language, for example:

  • LibO_3.x.x_Win_x86_helppack_en-US.exe 8.6

Dependencies

The Java Runtime Environment is a software prerequiste for LibreOffice, thus is a <depends> of the package.

Dual Installation with OpenOffice

LibreOffice 3.3.2 does not replace previous OpenOffice installations (but LibreOffice 3.3 beta was doing so). Keep this in mind in your package management. You may like to remove OpenOffice before installing LibreOffice.

Common Installer Options

  • REGISTER_ALL_MSO_TYPES - Use LibreOffice as the default application for Microsoft Office file formats
  • ALLUSERS (default=1) - performs a per-user installation or per-machine installation depending on the access privileges of the user
  • ISCHECKFORPRODUCTUPDATE (default=1) - Check for updates
  • CREATEDESKTOPLINK (default=1) - Create desktop shortcuts
  • REMOVE - remove specified components

OpenOffice has a wiki page for this; most of the OpenOffice options are nearly the same for LibreOffice.

LibreOffice 3.3.x

This is based on the OpenOffice 3.2.1 package script.

Unpack the LibreOffice installer (.exe) and help file installer (.exe) with an archive tool (for example 7-zip, or using the installer itself).

Copy the unpacked files to your server.

If required, for example to change installer options or to remove unnecessary languages, modify the MSI file or create a transform (.mst) file using an MSI editor such as Microsoft ORCA or InstEd. The main interesting sections to configure in the MSI are 'Property' and 'Feature'.


LibreOffice

<package id="libreoffice" name="LibreOffice" revision="3" reboot="false" priority="10">
    <variable name="PKG_VERSION" value="3.3.2" />

    <!-- LibreOffice removed main programs from full install -->
    <variable name="REMOVEPROGS" value="gm_p_Base,gm_p_Base_Bin,gm_p_Math,gm_p_Math_Bin" />
    <!-- LibreOffice removed options from full install -->
    <variable name="REMOVEOPTIONS" value="gm_o_Testtool,gm_o_Xsltfiltersamples,gm_o_Pyuno,gm_o_jf_Palm,gm_o_jf_Pocketpc,gm_o_Quickstart,gm_o_Extensions_PRESENTER_SCREEN,gm_o_Extensions_REPORTDESIGN,gm_o_Extensions_MEDIAWIKI" />
    <!-- Company Name option -->
    <variable name="CNAME" value="Our Company" />

    <!-- Some LibreOffice functionalities depends on Java -->
    <depends package-id="java" />

    <check type="uninstall" condition="versiongreaterorequal" path="LibreOffice .+" value="%PKG_VERSION%" />

    <install cmd='msiexec /qn /I "%SOFTWARE%\LibreOffice\LibO_%PKG_VERSION%_Win_x86_install_multi\libreoffice33.msi" COMPANYNAME="%CNAME%" USERNAME="" ISCHECKFORPRODUCTUPDATE=0 CREATEDESKTOPLINK=0 ADDLOCAL=ALL REMOVE=%REMOVEPROGS%,%REMOVEOPTIONS%' />

    <upgrade cmd='msiexec /qn /I "%SOFTWARE%\LibreOffice\LibO_%PKG_VERSION%_Win_x86_install_multi\libreoffice33.msi" COMPANYNAME="%CNAME%" USERNAME="" ISCHECKFORPRODUCTUPDATE=0 CREATEDESKTOPLINK=0 ADDLOCAL=ALL REMOVE=%REMOVEPROGS%,%REMOVEOPTIONS%' />
    
    <remove cmd='msiexec /qn /X "%SOFTWARE%\LibreOffice\LibO_%PKG_VERSION%_Win_x86_install_multi\libreoffice33.msi"' />
    
</package>


LibreOffice Help Pack

<package id="libreoffice_help" name="LibreOffice Help Pack" revision="2" reboot="false" priority="10">
    <variable name="PKG_VERSION" value="3.3.2" />
    <variable name="INS_VERSION" value="3.3" />
    <variable name="SHORT_LANG" value="cs" />
    <variable name="LANG" value="Czech" />

    <depends package-id="libreoffice" />

    <check type="uninstall" condition="exists" path="LibreOffice %INS_VERSION% Help Pack (%LANG%)" />

    <install cmd='msiexec /qn /I "%SOFTWARE%\LibreOffice\LibO_%PKG_VERSION%_Win_x86_helppack_%SHORT_LANG%\libreoffice33.msi"' />
   
    <upgrade cmd='msiexec /qn /I "%SOFTWARE%\LibreOffice\LibO_%PKG_VERSION%_Win_x86_helppack_%SHORT_LANG%\libreoffice33.msi"' />

    <remove cmd='msiexec /qn /X "%SOFTWARE%\LibreOffice\LibO_%PKG_VERSION%_Win_x86_helppack_%SHORT_LANG%\libreoffice33.msi"' />

</package>

Note: For the <remove> tag I have used the .msi file itself to get rid of the fact that the uninstall strings in HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall are language dependent. But this requires you to keep the .msi file on the server for removing software. You may prefer to use remove strings such as:

<!-- language dependent msiexec remove strings (here the czech ones) -->
<remove cmd='msiexec /qn /X{CEE2613D-3B53-4447-BA2D-E88C08272581}' />
<remove cmd='msiexec /qn /X{04A88043-281E-4E32-B878-343B51F56F2E}' />

You will have to use the string relevant to your language. These strings are held in setup.ini, under 'productcode'.