Difference between revisions of "Collabora"

From SME Server
Jump to navigationJump to search
(Created page with "{{Languages}} <!-- here we define the contrib name variable --> <!-- we get the page title, remove suffix for translated version; if needed you can define there with the value...")
 
 
(29 intermediate revisions by 4 users not shown)
Line 6: Line 6:
 
<!-- we define the language -->
 
<!-- we define the language -->
 
{{#vardefine:lang| {{lc:  {{#titleparts:    {{PAGENAME}} | | -1}}  }} |en }}
 
{{#vardefine:lang| {{lc:  {{#titleparts:    {{PAGENAME}} | | -1}}  }} |en }}
 +
 
{{Infobox contribs
 
{{Infobox contribs
 
|name={{#var:contribname}}
 
|name={{#var:contribname}}
|image={{#var:contribname}}.jpg
+
|image=Collabora_Online_primary_logo.svg
 
|description_image= {{#var:contribname}} logo
 
|description_image= {{#var:contribname}} logo
|maintainer= maintainer
+
|maintainer= Unnilennium
 
|licence=  
 
|licence=  
|url= https://wiki.koozali.org
+
|url= https://www.collaboraoffice.com/code/
|category= Category you want
+
|category= Cloud
|tags=File,this,with,a,list,of,tags
+
|tags=Nextcloud,Online Office,Document editor,Cloud
 
}}
 
}}
  
 
===Maintainer===
 
===Maintainer===
<!-- here you need to file your username and name -->
+
 
[[User:YOURUSERNAME|YOURNAME]]  
+
[[User:Unnilennium|Jean-Philippe Pialasse]]
  
 
=== Version ===
 
=== Version ===
<!-- keep this first element as is, you can add some if needed -->
+
 
 
{{#smeversion: {{#var:smecontribname}} }}
 
{{#smeversion: {{#var:smecontribname}} }}
{{#smeversion: {{#var:contribname}} }}
+
=== Description ===
 +
Collabora Online is a powerful LibreOffice-based online office that supports all major document, spreadsheet and presentation file formats, which you can integrate into your own infrastructure.
 +
 
 +
Key features are collaborative editing and excellent office file format support.
 +
 
 +
 
 +
This package offers a configuration of the open source development edition https://www.collaboraoffice.com/code/
  
=== Description ===
+
A VirtualHost property is to be filled with a domain name so the daemon will be reversed proxy through your apache httpd server. Do not forget to also define this Virtualdomain to your list of domains, enable it for let's encrypt if you use it, and also define this domain to point to your server at your DNS provider.
<!-- add a description here -->
 
  
 +
Collabora Online requires a dedicated virtual host and it’s only accessible from HTTPS with a valid certificate.
  
 
=== Installation ===
 
=== Installation ===
<tabs container><tab name="For SME 10">
+
<tabs container=""><tab name="For SME 10">
  yum --enablerepo=smecontribs install {{#var:smecontribname}}
+
yum install smeserver-extrarepositories-collaboraoffice
</tab><tab name="For SME 9">
+
  yum --enablerepo=smecontribs install {{#var:smecontribname}} collaboraofficebasis-en-US collaboraoffice-dict-en
  yum --enablerepo=smecontribs install {{#var:smecontribname}}
+
 
  signal-event post-upgrade
+
then you will need to configure let's say domain collabora.mydomain.com
  signal-event reboot
+
 
</tab><tab name="For SME 8">
+
configuration part for domain + let's encrypt and nextcloud on the same server, please just change the content of the variable $MYDOMAIN
yum --enablerepo=smecontribs install {{#var:smecontribname}}
+
MYDOMAIN="collabora.mydomain.com"
  signal-event post-upgrade
+
  config setprop coolwsd VirtualHost $MYDOMAIN
  signal-event reboot
+
db domains set $MYDOMAIN domain Content Primary Description collabora Nameservers localhost  letsencryptSSLcert enabled TemplatePath Collabora
</tab></tabs>
+
signal-event domain-create $MYDOMAIN
 +
  expand-template /etc/dehydrated/domains.txt
 +
dehydrated -c
 +
  signal-event smeserver-collabora-update
 +
 
 +
then all is configured in nextcloud installed on the same server
 +
 
 +
Reminder configure your domain DNS to point to your server!
 +
 
 +
We assume you also already have configured correctly [[Letsencrypt]] and [[Nextcloud]] contribs BEFORE.
 +
</tab>
 +
 
 +
</tabs>
 +
 
 +
You can also add to the yum install line the dictionary you need, or add one later
 +
  yum install collaboraoffice-dict-fr collaboraofficebasis-fr
 +
 
 +
=== Tweaking ===
 +
 
 +
==== language available ====
 +
Available languages are: ar, bg, br, ca, cs, da, de, el, es, et, fr, gd, gl, gu, he, hi, hr, hu, id, is, it, ko, lt, lv, nl, no, oc, pl, pt-BR, pt-PT, ro, ru, sk, sl, sr, sv, te, tr, uk, vi
 +
 
 +
In order to use new dictionaries, you may have to change the "allowed_languages" setting in /etc/coolwsd/coolwsd.xml . In the example below the Danish dictionary is added as an "allowed language":
 +
  $ diff coolwsd.xml.bak coolwsd.xml
 +
10c10
 +
<      <allowed_languages default="de_DE en_GB en_US es_ES fr_FR it nl pt_BR pt_PT ru" desc="List of supported languages of Writing Aids (spell checker, grammar checker, thesaurus, hyphenation) on this instance. Allowing too many has negative effect on startup performance.">de_DE en_GB en_US es_ES fr_FR it nl pt_BR pt_PT ru</allowed_languages>
 +
---
 +
  >      <allowed_languages default="de_DE en_GB en_US es_ES fr_FR it nl pt_BR pt_PT ru" desc="List of supported languages of Writing Aids (spell checker, grammar checker, thesaurus, hyphenation) on this instance. Allowing too many has negative effect on startup performance.">da en_GB en_US</allowed_languages>
 +
 
 +
==== menu display ====
 +
 
 +
 
 +
To modify look on the toolbar for Compact Biew (as opposed to Tabbed View) in nextcloud config , OR change this to compact :
 +
 
 +
/etc/coolwsd/<mark>coolwsd.xml</mark>
 +
    <code>182 <user_interface>
 +
    183 <mode default="default" desc="Controls the user interface style. The 'default' means: Take the value from ui_defaults, or decide for one of compact or tabbed (default|compact|tabbed)" type="string">compact</mode>
 +
    184 <use_integration_theme default="true" desc="Use theme from the integrator" type="bool">true</use_integration_theme>
 +
    185 </user_interface></code>
  
 
=== Configuration ===
 
=== Configuration ===
 
you can list the available configuration with the following command :
 
you can list the available configuration with the following command :
  config show {{#var:contribname}}
+
  config show coolwsd
  
 
Some of the properties are not shown, but are defaulted in a template or a script. Here a more comprehensive list with default and expected values :
 
Some of the properties are not shown, but are defaulted in a template or a script. Here a more comprehensive list with default and expected values :
Line 54: Line 99:
 
!
 
!
 
|-
 
|-
|DbName
+
|VirtualHost
|nextcloud
+
|
|string
+
|domain
|for mysql db
+
|you need one domain configured to allow it to work with nextcloud
 
|-
 
|-
|DbPassword
+
|AllowWopiHost
|GENERATED
+
|
|string
+
|comma separated list of ip or domains
|for mysql db
+
|list of domains allowed to access collabora, by default empty.  the server itself and nextcloud defined Virtualhost are added to this list
 
|-
 
|-
|DbUser
+
|access
|nextcloud
+
|
|string
+
|private, public,local
|for mysql db
+
|not defined for localhost use only; please leave it as it
 
|-
 
|-
|access
+
|TCPPort
|private
 
|private, public
 
 
|
 
|
 +
|port number
 +
|default is listening on localhost:9980,  but please no SSL configuration keep it this way, and rather use http proxy with VirtualHost property
 
|-
 
|-
 
|status
 
|status
Line 79: Line 124:
 
|}
 
|}
  
 +
=== Uninstall ===
 +
yum remove {{#var:smecontribname}}  CODE-brand collaboraoffice collaboraoffice-* collaboraofficebasis-* coolwsd
  
 
+
=== Sources ===
=== Uninstall ===
+
# https://help.nextcloud.com/t/start-to-finish-nextcloud-collabora-step-by-step-guide/10602
yum remove {{#var:smecontribname}}  {{#var:contribname}}
+
# https://help.nextcloud.com/t/collabora-connection-refused/5024
  
 
=== Bugs ===
 
=== Bugs ===
Line 101: Line 148:
 
<!-- Please keep there the template revision  number as is -->
 
<!-- Please keep there the template revision  number as is -->
 
[[contribtemplate::2| ]]
 
[[contribtemplate::2| ]]
[[contriblang:: {{#var:lang}} | ]]
 

Latest revision as of 17:51, 9 April 2024





collabora
Collabora Online primary logo.svg
collabora logo
MaintainerUnnilennium
Urlhttps://www.collaboraoffice.com/code/
Category

Cloud

Tags NextcloudOnline OfficeDocument editorCloud


Maintainer

Jean-Philippe Pialasse

Version

Contrib 10:
smeserver-collabora
The latest version of smeserver-collabora is available in the SME repository, click on the version number(s) for more information.


Description

Collabora Online is a powerful LibreOffice-based online office that supports all major document, spreadsheet and presentation file formats, which you can integrate into your own infrastructure.

Key features are collaborative editing and excellent office file format support.


This package offers a configuration of the open source development edition https://www.collaboraoffice.com/code/

A VirtualHost property is to be filled with a domain name so the daemon will be reversed proxy through your apache httpd server. Do not forget to also define this Virtualdomain to your list of domains, enable it for let's encrypt if you use it, and also define this domain to point to your server at your DNS provider.

Collabora Online requires a dedicated virtual host and it’s only accessible from HTTPS with a valid certificate.

Installation

yum install smeserver-extrarepositories-collaboraoffice
yum --enablerepo=smecontribs install smeserver-collabora collaboraofficebasis-en-US collaboraoffice-dict-en

then you will need to configure let's say domain collabora.mydomain.com

configuration part for domain + let's encrypt and nextcloud on the same server, please just change the content of the variable $MYDOMAIN

MYDOMAIN="collabora.mydomain.com"
config setprop coolwsd VirtualHost $MYDOMAIN
db domains set $MYDOMAIN domain Content Primary Description collabora Nameservers localhost  letsencryptSSLcert enabled TemplatePath Collabora
signal-event domain-create $MYDOMAIN
expand-template /etc/dehydrated/domains.txt
dehydrated -c
signal-event smeserver-collabora-update

then all is configured in nextcloud installed on the same server

Reminder configure your domain DNS to point to your server!

We assume you also already have configured correctly Letsencrypt and Nextcloud contribs BEFORE.

You can also add to the yum install line the dictionary you need, or add one later

 yum install collaboraoffice-dict-fr collaboraofficebasis-fr

Tweaking

language available

Available languages are: ar, bg, br, ca, cs, da, de, el, es, et, fr, gd, gl, gu, he, hi, hr, hu, id, is, it, ko, lt, lv, nl, no, oc, pl, pt-BR, pt-PT, ro, ru, sk, sl, sr, sv, te, tr, uk, vi

In order to use new dictionaries, you may have to change the "allowed_languages" setting in /etc/coolwsd/coolwsd.xml . In the example below the Danish dictionary is added as an "allowed language":

$ diff coolwsd.xml.bak coolwsd.xml
10c10
<       <allowed_languages default="de_DE en_GB en_US es_ES fr_FR it nl pt_BR pt_PT ru" desc="List of supported languages of Writing Aids (spell checker, grammar checker, thesaurus, hyphenation) on this instance. Allowing too many has negative effect on startup performance.">de_DE en_GB en_US es_ES fr_FR it nl pt_BR pt_PT ru</allowed_languages>
---
>       <allowed_languages default="de_DE en_GB en_US es_ES fr_FR it nl pt_BR pt_PT ru" desc="List of supported languages of Writing Aids (spell checker, grammar checker, thesaurus, hyphenation) on this instance. Allowing too many has negative effect on startup performance.">da en_GB en_US</allowed_languages>

menu display

To modify look on the toolbar for Compact Biew (as opposed to Tabbed View) in nextcloud config , OR change this to compact :

/etc/coolwsd/coolwsd.xml

   182		<user_interface>
   183			<mode default="default" desc="Controls the user interface style. The 'default' means: Take the value from ui_defaults, or decide for one of compact or tabbed (default|compact|tabbed)" type="string">compact</mode>
   184			<use_integration_theme default="true" desc="Use theme from the integrator" type="bool">true</use_integration_theme>
   185		</user_interface>

Configuration

you can list the available configuration with the following command :

config show coolwsd

Some of the properties are not shown, but are defaulted in a template or a script. Here a more comprehensive list with default and expected values :

property default values
VirtualHost domain you need one domain configured to allow it to work with nextcloud
AllowWopiHost comma separated list of ip or domains list of domains allowed to access collabora, by default empty. the server itself and nextcloud defined Virtualhost are added to this list
access private, public,local not defined for localhost use only; please leave it as it
TCPPort port number default is listening on localhost:9980, but please no SSL configuration keep it this way, and rather use http proxy with VirtualHost property
status enabled enabled,disabled

Uninstall

yum remove smeserver-collabora  CODE-brand collaboraoffice collaboraoffice-* collaboraofficebasis-* coolwsd

Sources

  1. https://help.nextcloud.com/t/start-to-finish-nextcloud-collabora-step-by-step-guide/10602
  2. https://help.nextcloud.com/t/collabora-connection-refused/5024

Bugs

Please raise bugs under the SME-Contribs section in bugzilla

and select the smeserver-collabora component or use this link


Below is an overview of the current issues for this contrib:

IDProductVersionStatusSummary (4 tasks)
12505SME Contribs10.0UNCONFIRMEDservices2adjust refers to service httpd instead of httpd-e-smith
12413SME Contribs10.0CONFIRMEDNFR add /apps/richdocuments/settings/fonts.json url to coolwsd.xml
12309SME Contribs10.0CONFIRMED`WRN Util::stringVectorToMap => record is misformed: #------------------------------------------------------------| common/Util.cpp:1003`
12247SME Contribs10.0CONFIRMEDWRN convert-to: Requesting address is denied

Changelog

Only released version in smecontrib are listed here.

smeserver-collabora Changelog: SME 10 (smecontribs)

2023/08/14 Jean-Philippe Pialasse 0.1.6-7.sme
- workaround coolwsd not restarted after its rpm update [SME: 12372]

this will also ensure all is configured properly and not overwritten
2023/02/06 Jean-Philippe Pialasse 0.1.6-6.sme
- dedicated log [SME: 12248]

2022/03/22 Jean-Philippe Pialasse 0.1.6-5.sme
- make Collabo use a subfolder for its Virtualdomain [SME: 11895]

- and ability to have multiple collabora domains
2022/03/11 Jean-Philippe Pialasse 0.1.6-3.sme
- fix httpd template path [SME: 11895]
2022/03/10 Jean-Philippe Pialasse 0.1.6-2.sme
- fix missing systemd configuration [SME: 11893]