husisusi / officeonlin-install.sh

Script to install Office Online on Ubuntu 22.04 & Debian 11
139 stars 52 forks source link

officeonline-install.sh v2.7.0


Script intended to build & install Office Online on moderns Ubuntu and Debian systems.

Written by: Marc C., @DmDS & Subhi H.


Summary

GNUv3 License

This script is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This script is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.

Requirements

Notice

THE FIRST INSTALLATION WILL TAKE A VERY, VERY LONG TIME!

... So take your favorite mug, and make yourself a nice cup of coffee/tea while you go watching your favorites movies. :smile:

Default Installation

You might see errors during the installation, just ignore them.

It will install libreoffice in /opt/libreoffice, Poco in /opt/poco and onlineOffice in /opt/cool

Your can manage your service using systemd: systemctl start|stop|restart|status coolwsd.service

Command line usage

Since v2.4 the script accept the following usage:

officeonline-install.sh [-h][-c file|variable definition][-f lo|poco|cool][-l VERSION][-o COMMIT][-p VERSION]

Configuration file

Since v2.4 the script search for an external configuration file that will override parts or all the default configuration.

The script search for the file named officeonline-install.cfg in the following places in that order:

  1. The file specified from the command line with the --config option. It can be of any name.
  2. The current working directory except when it's the script's directory.
  3. The user's home directory
  4. The /etc/coolwsd/ directory
  5. The script's directory

Only the first file found is loaded.

INFO: A fully commented configuration file is in the script's directory available as a template or an example.

Sets

Since v2.1, it is possible to choose a Set. A set is an duo of branches from both LibreOffice core and online git repositories that are known to create a smooth LO-Online experience.

By default latest version available of collabora

Versions

Its possible to pin exact version of the services used, like this:

./officeonline-install.sh -l 5.3.1.2 -c cool_src_commit=47c01440ba794d2ea953d6ac1b80f7e42769f4e -c poco_version=1.7.8p2

There is also a help:

./officeonline-install.sh -h

Idempotence

This script has been made idempotent: Only the required action will be executed if it is run several times on the same System in order to get to the expected state.

Example: when updating LibreOffice online to the latest version, LibreOffice compilation and installation steps will not be run as it is already installed.

Parameters

These parameters describes the expected state of the system regarding LibreOffice Online installation.

The installation can be tuned to your needs by changing these variables.

Global Parameters:

Affect the whole build.

Set Parameters:

Affect how the script chooses the best set of commits to use for core and online.

LibreOffice:

For Idempotence, LO's status is defined by its sources' commit id.

If more than one is defined, a choice is made:

POCO:

Poco is an opensource C++ library for network based project. It is required by LibreOffice Online.

Cool

Cool (Collabora Online) in a project to bring a opensource Office solution for web editing.

Each update of the sources by the script will trigger a cool compilation & installation

If more than one is defined, a choice is made:

Compilation options:

The following parameters are options passed to the configuration script before compilation.

Debug

Can be enabled by running sudo ./officeonline-install.sh -c cool_configure_opts='--enable-debug' -f cool

or

add --enable-debug to cool_configure_opts='' in officeonline-install.cfg before compiling. Don't forget to remove the #

Change filesystem allow="false" to "true" in /opt/cool/coolwsd.xml

Enabling debug can pose a security risk. Use it only for testing.

Nota Bene

Enjoy your free Office Online!