From b4a3a941baeb04d20d07ea510d8b52b1037f82e5 Mon Sep 17 00:00:00 2001 From: "dave@tiredofit.ca" Date: Tue, 28 Jun 2022 09:29:08 -0700 Subject: [PATCH] Release 2.4.2 - See CHANGELOG.md --- CHANGELOG.md | 17 +++++++ Dockerfile | 4 +- README.md | 82 ++++++++++++++++++++---------- install/assets/defaults/10-coolwsd | 20 +++++++- install/etc/cont-init.d/10-coolwsd | 39 ++++++++++---- 5 files changed, 121 insertions(+), 41 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1e6ff6f..70538b7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,20 @@ +## 2.4.2 2022-06-28 + + ### Added + - Collabora Online 22.05.3.1 + - Collabora Office 22.05.3.1 + - Add support for Language Tool Grammar checking + - Add support for file quarantining + - Add support for user statistics + - Add support for document statstics + - Add support for remote JSON font loading + - Add support for Tile Caching + - Add more rules for client logging + - Add support for experimental features + - Add support to hexify embedded URLs + - Add support to enable Integrators theme + + ## 2.3.8 2022-06-20 ### Changed diff --git a/Dockerfile b/Dockerfile index 92785ef..c58edb3 100644 --- a/Dockerfile +++ b/Dockerfile @@ -14,11 +14,11 @@ ARG APP_NAME ### Environment Variables ENV COLLABORA_ONLINE_BRANCH=${COLLABORA_ONLINE_BRANCH:-"master"} \ - COLLABORA_ONLINE_VERSION=${COLLABORA_ONLINE_VERSION:-"cp-21.11.5-3"} \ + COLLABORA_ONLINE_VERSION=${COLLABORA_ONLINE_VERSION:-"cp-22.05.3-1"} \ COLLABORA_ONLINE_REPO_URL=${COLLABORA_ONLINE_REPO_URL:-"https://github.com/CollaboraOnline/online"} \ # LIBREOFFICE_BRANCH=${LIBREOFFICE_BRANCH:-"master"} \ - LIBREOFFICE_VERSION=${LIBREOFFICE_VERSION:-"cp-21.06.31-1"} \ + LIBREOFFICE_VERSION=${LIBREOFFICE_VERSION:-"cp-22.05.3-1"} \ LIBREOFFICE_REPO_URL=${LIBREOFFICE_REPO_URL:-"https://github.com/LibreOffice/core"} \ # APP_NAME=${APP_NAME:-"Document Editor"} \ diff --git a/README.md b/README.md index e67d7ab..11e166f 100644 --- a/README.md +++ b/README.md @@ -44,6 +44,8 @@ This will build a Docker image for [Collabora Online](https://www.collaboraoffic - [Spell Check](#spell-check) - [TLS Settings](#tls-settings) - [Performance and Limits](#performance-and-limits) + - [Files Quarantine](#files-quarantine) + - [Language Tool](#language-tool) - [Cleanup](#cleanup) - [Other Settings](#other-settings) - [Adding Custom Fonts](#adding-custom-fonts) @@ -149,18 +151,22 @@ Be sure to view the following repositories to understand all the customizable op #### Logging -| Parameter | Description | Default | -| -------------------- | ------------------------------------------------------------------------------------------------ | --------------- | -| `LOG_TYPE` | Write Logs to `CONSOLE` or to `FILE` | `CONSOLE` | -| `LOG_LEVEL` | Log Level - Available `none, fatal, critical, error, warning, notice, information, debug, trace` | `warning` | -| `LOG_PATH` | Log Path | `/var/log/cool` | -| `LOG_FILE` | Log File | `cool.log` | -| `LOG_ANONYMIZE` | Anonymize File+User information in Logs `TRUE` or `FALSE` | `FALSE` | -| `LOG_ANONYMIZE_SALT` | Salt for anonymizing log data | 8 char random | -| `LOG_CLIENT_CONSOLE` | Log in users browser console | `false` | -| `LOG_COLOURIZE` | Colourize the log entries in console | `true` | -| `LOG_LIBREOFFICE` | Log filter what Libreoffice entries | `-INFO-WARN` | -| `LOG_FILE_FLUSH` | Flush Entries on each line to log file | `false` | +| Parameter | Description | Default | +| -------------------------------- | ------------------------------------------------------------------------------------------------ | --------------- | +| `LOG_TYPE` | Write Logs to `CONSOLE` or to `FILE` | `CONSOLE` | +| `LOG_LEVEL` | Log Level - Available `none, fatal, critical, error, warning, notice, information, debug, trace` | `warning` | +| `LOG_PATH` | Log Path | `/var/log/cool` | +| `LOG_FILE` | Log File | `cool.log` | +| `ENABLE_DOCUMENT_STATISTICS` | Enable Collecting statistics about documents | `FALSE` | +| `ENABLE_USER_STATISTICS` | Enable collecting statistics about the user working on document | `FALSE` | +| `LOG_ANONYMIZE_SALT` | Salt for anonymizing log data | 8 char random | +| `LOG_ANONYMIZE` | Anonymize File+User information in Logs `TRUE` or `FALSE` | `FALSE` | +| `LOG_CLIENT_CONSOLE` | Log in users browser console | `false` | +| `LOG_COLOURIZE` | Colourize the log entries in console | `true` | +| `LOG_FILE_FLUSH` | Flush Entries on each line to log file | `false` | +| `LOG_LEVEL_CLIENT_LEAST_VERBOSE` | Least verbose log level to ever send to client | `FATAL` | +| `LOG_LEVEL_CLIENT_MOST_VERBOSE` | Most verbose log level to ever send to client | `NOTICE` | +| `LOG_LIBREOFFICE` | Log filter what Libreoffice entries | `-INFO-WARN` | #### Spell Check @@ -231,6 +237,7 @@ The image comes with English (US, GB, Canada variants) baked into the image, how | `AUTO_SAVE` | The number of seconds after which document, if modified, should be saved | `300` | | `BATCH_PRIORITY` | A (lower) priority for use by batch convert to processes to avoid starving interactive ones | `5` | | `CONNECTION_TIMEOUT` | Connection, Send, Receeive timeout in seconds for connections initiated by coolwsd | `30` | +| `ENABLE_TILES_CACHE` | Enable caching of tiles should document be opened up twice | `TRUE` | | `FILE_SIZE_LIMIT` | The maximum file size allowed to each document process to write | `0` (unlimited) | | `IDLE_SAVE` | The number of idle seconds after which document, if modified, should be saved | `30` | | `IDLE_UNLOAD_TIMEOUT` | The maximum number of seconds before unloading an idle documen | `3600` | @@ -246,6 +253,23 @@ The image comes with English (US, GB, Canada variants) baked into the image, how | `USER_IDLE_TIMEOUT` | The maximum number of seconds before dimming and stopping updates when the user is no longer active (even if the browser is in focus) | `900` | | `USER_OUT_OF_FOCUS_TIMEOUT` | The maximum number of seconds before dimming and stopping updates when the browser tab is no longer in focus | `60` | +#### Files Quarantine +| Parameter | Description | Default | +| --------------------------------------- | ------------------------------------------------------ | ------------ | +| `ENABLE_FILES_QUARANTINE` | Alllow file quaranting for review of crashed/bad files | `FALSE` | +| `FILES_QUARANTINE_DIRECTORY_SIZE_LIMIT` | Directory size limit in MB | `250` | +| `FILES_QUARANTINE_MAX_VERSIONS` | Hold this many versions in quarantime | `2` | +| `FILES_QUARANTINE_PATH` | Relative path for storing files | `quarantine` | +| `FILES_QUARANTINE_EXPIRY` | Files expiry in minutes | `30` | + +#### Language Tool +| Parameter | Description | Default | +| ------------------------- | -------------------------------------------------- | ------- | +| `ENABLE_LANGUAGE_TOOL` | Enable Language Tool Grammar checking integration | `FALSE` | +| `LANGUAGE_TOOL_BASE_URL` | Base URL for Language Tool | | +| `LANGUAGE_TOOL_USER_NAME` | Language Tool User Name | | +| `LANGUAGE_TOOL_API_KEY` | Language Tool provided API Key | | + #### Cleanup | Parameter | Description | Default | | ---------------------------- | ------------------------------------------------------------------------------- | ------- | @@ -257,21 +281,25 @@ The image comes with English (US, GB, Canada variants) baked into the image, how | `CLEANUP_LIMIT_CPU_PER` | Minimum CPU usage in percent for a document to be candidate for bad state | `85` | #### Other Settings -| Parameter | Description | Default | -| ----------------------- | ------------------------------------------------------- | --------------- | -| `ENABLE_CAPABILITIES` | Enable Capabilities | `TRUE` | -| `ENABLE_CONFIG_RELOAD` | Enable Reload of coolwsd if config changed in container | `TRUE` | -| `ENABLE_SECCOMP` | Enable Seccomp | `TRUE` | -| `LOLEAFLET_HTML` | Name of browser.html to use | `loleafet.html` | -| `REDLINING_AS_COMMENTS` | Show red-lines as comments | `false` | -| `DOCUMENT_SIGNING_URL` | Endpoint URL of signing server | `` | -| `NETWORK_PROTOCOL` | Network Protocol `ipv4` `ipv6` `all` | `ipv4` | -| `ENABLE_WEBDAV` | Enable WebDav Storage | `FALSE` | -| `FILE_SERVER_ROOT_PATH` | Path to directory considered as root | `browser/../` | -| `FRAME_ANCESTORS` | Hosts where interface can be hosted in Iframe | `` | -| `ENABLE_MOUNT_JAIL` | Enable mounting jails | `true` | -| `CHILD_ROOT_PATH` | Child root path | `child-roots` | -| `SYS_TEMPLATE_PATH` | System Template Path | `systemplate` | +| Parameter | Description | Default | +| ------------------------------ | ------------------------------------------------------- | --------------- | +| `CHILD_ROOT_PATH` | Child root path | `child-roots` | +| `DOCUMENT_SIGNING_URL` | Endpoint URL of signing server | `` | +| `ENABLE_CAPABILITIES` | Enable Capabilities | `TRUE` | +| `ENABLE_CONFIG_RELOAD` | Enable Reload of coolwsd if config changed in container | `TRUE` | +| `ENABLE_EXPERIMENTAL_FEATURES` | Enable experimental features | `FALSE` | +| `ENABLE_MOUNT_JAIL` | Enable mounting jails | `true` | +| `ENABLE_SECCOMP` | Enable Seccomp | `TRUE` | +| `ENABLE_WEBDAV` | Enable WebDav Storage | `FALSE` | +| `FILE_SERVER_ROOT_PATH` | Path to directory considered as root | `browser/../` | +| `FRAME_ANCESTORS` | Hosts where interface can be hosted in Iframe | `` | +| `HEXIFY_EMBEDDED_URLS` | Hexify Embedded URLS (useful for Azure deployments) | `FALSE` | +| `LOLEAFLET_HTML` | Name of browser.html to use | `loleafet.html` | +| `NETWORK_PROTOCOL` | Network Protocol `ipv4` `ipv6` `all` | `ipv4` | +| `REDLINING_AS_COMMENTS` | Show red-lines as comments | `false` | +| `REMOTE_FONT_URL` | URL to json font lists to load | | +| `SYS_TEMPLATE_PATH` | System Template Path | `systemplate` | +| `USE_INTEGRATOR_THEME` | Use the remote integrators theme | `TRUE` | #### Adding Custom Fonts diff --git a/install/assets/defaults/10-coolwsd b/install/assets/defaults/10-coolwsd index 338f36f..aa43797 100755 --- a/install/assets/defaults/10-coolwsd +++ b/install/assets/defaults/10-coolwsd @@ -15,20 +15,34 @@ ENABLE_ADMIN_CONSOLE=${ENABLE_ADMIN_CONSOLE:-"TRUE"} ENABLE_CAPABILITIES=${ENABLE_CAPABILITIES:-"true"} ENABLE_CLEANUP=${ENABLE_CLEANUP:-"false"} ENABLE_CONFIG_RELOAD=${ENABLE_CONFIG_RELOAD:-"TRUE"} +ENABLE_DOCUMENT_STATISTICS=${ENABLE_DOCUMENT_STATISTICS:-"FALSE"} +ENABLE_EXPERIMENTAL_FEATURES=${ENABLE_EXPERIMENTAL_FEATURES:-"false"} +ENABLE_FILES_QUARANTINE=${ENABLE_FILES_QUARANTINE:-"FALSE"} +ENABLE_LANGUAGE_TOOL=${ENABLE_LANGUAGE_TOOL:-"FALSE"} ENABLE_MACROS=${ENABLE_MACROS:-"FALSE"} ENABLE_METRICS_UNAUTHENTICATED=${ENABLE_METRICS_UNAUTHENTICATED:-"FALSE"} ENABLE_MOUNT_JAIL=${ENABLE_MOUNT_JAIL:-"true"} ENABLE_SECCOMP=${ENABLE_SECCOMP:-"true"} +ENABLE_TILES_CACHE=${ENABLE_TILES_CACHE:-"TRUE"} ENABLE_TLS=${ENABLE_TLS:-"FALSE"} ENABLE_TLS_CERT_GENERATE=${ENABLE_TLS_CERT_GENERATE:-"TRUE"} ENABLE_TLS_REVERSE_PROXY=${ENABLE_TLS_REVERSE_PROXY:-"TRUE"} +ENABLE_USER_STATISTICS=${ENABLE_USER_STATISTICS:-"FALSE"} ENABLE_WEBDAV=${ENABLE_WEBDAV:-"FALSE"} +FILES_QUARANTINE_DIRECTORY_SIZE_LIMIT=${FILES_QUARANTINE_DIRECTORY_SIZE_LIMIT:-"250"} +FILES_QUARANTINE_EXPIRY=${FILES_QUARANTINE_EXPIRY:-"30"} +FILES_QUARANTINE_MAX_VERSIONS=${FILES_QUARANTINE_MAX_VERSIONS:-"2"} +FILES_QUARANTINE_PATH=${FILES_QUARANTINE_PATH:-"quarantine"} FILE_SERVER_ROOT_PATH=${FILE_SERVER_ROOT_PATH:-"browser/../"} FILE_SIZE_LIMIT=${FILE_SIZE_LIMIT:-0} +HEXIFY_EMBEDDED_URLS=${HEXIFY_EMBEDDED_URLS:-"FALSE"} IDLE_SAVE=${IDLE_SAVE:-30} IDLE_UNLOAD_TIMEOUT=${IDLE_UNLOAD_TIMEOUT:-3600} INTERFACE=${INTERFACE:-"classic"} LANGUAGE=${LANGUAGE:-'en_GB en_US'} +LANGUAGE_TOOL_API_KEY=${LANGUAGE_TOOL_API_KEY:-""} +LANGUAGE_TOOL_BASE_URL=${LANGUAGE_TOOL_BASE_URL:-""} +LANGUAGE_TOOL_USER_NAME=${LANGUAGE_TOOL_USER_NAME:-""} LOG_ANONYMIZE=${LOG_ANONYMIZE:-"FALSE"} LOG_ANONYMIZE_SALT=${LOG_ANONYMIZE_SALT:-"$(date +%s%N | cut -b12-19)"} LOG_CLIENT_CONSOLE=${LOG_CLIENT_CONSOLE:-"false"} @@ -36,6 +50,8 @@ LOG_COLOURIZE=${LOG_COLOURIZE:-"true"} LOG_FILE=${LOG_FILE:-"cool.log"} LOG_FILE_FLUSH=${LOG_FILE_FLUSH:-"false"} LOG_LEVEL=${LOG_LEVEL:-"warning"} +LOG_LEVEL_CLIENT_LEAST_VERBOSE=${LOG_LEVEL_CLIENT_LEAST_VERBOSE:-"FATAL"} +LOG_LEVEL_CLIENT_MOST_VERBOSE=${LOG_LEVEL_CLIENT_MOST_VERBOSE:-"NOTICE"} LOG_LIBREOFFICE=${LOG_LIBREOFFICE:-"-INFO-WARN"} LOG_PATH=${LOG_PATH:-"/logs/"} LOG_TYPE=${LOG_TYPE:-"CONSOLE"} @@ -53,6 +69,7 @@ NETWORK_PROTOCOL=${NETWORK_PROTOCOL:-"ipv4"} PATH_PREFIX=${PATH_PREFIX:-"/opt/cool/"} PRESPAWN_CHILD_PROCESSES=${PRESPAWN_CHILD_PROCESSES:-1} REDLINING_AS_COMMENTS=${REDLINING_AS_COMMENTS:-"false"} +REMOTE_FONT_URL=${REMOTE_FONT_URL:-""} SETUP_TYPE=${SETUP_TYPE:-"AUTO"} SYS_TEMPLATE_PATH=${SYS_TEMPLATE_PATH:-"systemplate"} TLS_CA_FILENAME=${TLS_CA_FILENAME:-"ca-chain.cert.pem"} @@ -61,4 +78,5 @@ TLS_CERT_PATH=${TLS_CERT_PATH:-"/etc/coolwsd/certs"} TLS_KEY_FILENAME=${TLS_KEY_FILENAME:-"key.pem"} USER_IDLE_TIMEOUT=${USER_IDLE_TIMEOUT:-3600} USER_OUT_OF_FOCUS_TIMEOUT=${USER_OUT_OF_FOCUS_TIMEOUT:-60} -WATERMARK_OPACITY=${WATERMARK_OPACITY:-"0.2"} +USE_INTEGRATOR_THEME=${USE_INTEGRATOR_THEME:-"TRUE"} +WATERMARK_OPACITY=${WATERMARK_OPACITY:-"0.2"} \ No newline at end of file diff --git a/install/etc/cont-init.d/10-coolwsd b/install/etc/cont-init.d/10-coolwsd index 8d786a3..538af55 100755 --- a/install/etc/cont-init.d/10-coolwsd +++ b/install/etc/cont-init.d/10-coolwsd @@ -11,7 +11,7 @@ print_debug "Creating directories and setting up logging" mkdir -p "${LOG_PATH}" touch "${LOG_PATH}"/"${LOG_FILE}" chown -R cool "${LOG_PATH}" -create_logrotate cool ${LOG_PATH}/${LOG_FILE} none cool cool + print_debug "Setting up DNS Resolution" rm /opt/cool/systemplate/etc/resolv.conf @@ -133,7 +133,7 @@ if [ "${SETUP_TYPE,,}" = "auto" ]; then sed -i -e "s|.*|${LANGUAGE}|g" /etc/coolwsd/coolwsd.xml sed -i -e "s|.*|${SYS_TEMPLATE_PATH}|g" /etc/coolwsd/coolwsd.xml sed -i -e "s|.*|${CHILD_ROOT_PATH}|g" /etc/coolwsd/coolwsd.xml - sed -i -e "s|.*|${ENABLE_MOUNT_JAIL}|g" /etc/coolwsd/coolwsd.xml + sed -i -e "s|.*|${ENABLE_MOUNT_JAIL,,}|g" /etc/coolwsd/coolwsd.xml sed -i -e "s|.*|${HOSTNAME}|g" /etc/coolwsd/coolwsd.xml sed -i -e "s|.*|${FILE_SERVER_ROOT_PATH}|g" /etc/coolwsd/coolwsd.xml sed -i -e "s|.*|${MEMORY_USAGE_MAX}|g" /etc/coolwsd/coolwsd.xml @@ -152,7 +152,7 @@ if [ "${SETUP_TYPE,,}" = "auto" ]; then sed -i -e "s|.*<\/limit_num_open_files>|${MAX_OPEN_FILES}<\/limit_num_open_files>|" /etc/coolwsd/coolwsd.xml sed -i -e "s|.*<\/limit_load_secs>|${MAX_FILE_LOAD_LIMIT}<\/limit_load_secs>|" /etc/coolwsd/coolwsd.xml sed -i -e "s|.*<\/limit_convert_secs>|${MAX_CONVERT_LIMIT}<\/limit_convert_secs>|" /etc/coolwsd/coolwsd.xml - sed -i -e "s|.*>|${ENABLE_CLEANUP}>|" /etc/coolwsd/coolwsd.xml + sed -i -e "s|.*>|${ENABLE_CLEANUP},,>|" /etc/coolwsd/coolwsd.xml sed -i -e "s|.*<\/cleanup_interval_ms>|${CLEANUP_INTERVAL}<\/cleanup_interval_ms>|" /etc/coolwsd/coolwsd.xml sed -i -e "s|.*<\/bad_behavior_period_secs>|${CLEANUP_BAD_BEHAVIOUR_TIME}<\/bad_behavior_period_secs>|" /etc/coolwsd/coolwsd.xml sed -i -e "s|.*<\/|<${CLEANUP_IDLE_TIME}<\/|" /etc/coolwsd/coolwsd.xml @@ -162,7 +162,7 @@ if [ "${SETUP_TYPE,,}" = "auto" ]; then sed -i -e "s|.*<\/idle_timeout_secs>|${USER_IDLE_TIMEOUT}<\/idle_timeout_secs>|" /etc/coolwsd/coolwsd.xml sed -i -e "s|.*<\/browser_html>|${LOLEAFLET_HTML}<\/browser_html>|" /etc/coolwsd/coolwsd.xml sed -i -e "s|.*<\/color>|${LOG_COLOURIZE}<\/color>|" /etc/coolwsd/coolwsd.xml - sed -i -e "s|.*<\/level>|${LOG_LEVEL}<\/level>|" /etc/coolwsd/coolwsd.xml + sed -i -e "s|.*<\/level>|${LOG_LEVEL,,}<\/level>|" /etc/coolwsd/coolwsd.xml sed -i -e "s|.*<\/protocol>|${LOG_CLIENT_CONSOLE}<\/protocol>|" /etc/coolwsd/coolwsd.xml sed -i -e "s|.*<\/lokit_sal_log>|${LOG_LIBREOFFICE}<\/lokit_sal_log>|" /etc/coolwsd/coolwsd.xml sed -i -e "s|.*<\/browser_logging>|${LOG_CLIENT_CONSOLE}<\/browser_logging>|" /etc/coolwsd/coolwsd.xml @@ -172,20 +172,38 @@ if [ "${SETUP_TYPE,,}" = "auto" ]; then sed -i -e "s|.*<\/ca_file_path>|${TLS_CERT_PATH}/${TLS_CA_FILENAME}<\/ca_file_path>|" /etc/coolwsd/coolwsd.xml sed -i -e "s|.*<\/cert_file_path>|${TLS_CERT_PATH}/${TLS_CERT_FILENAME}<\/cert_file_path>|" /etc/coolwsd/coolwsd.xml sed -i -e "s|.*<\/key_file_path>|${TLS_CERT_PATH}/${TLS_KEY_FILENAME}<\/key_file_path>|" /etc/coolwsd/coolwsd.xml - sed -i -e "s|.*<\/seccomp>|${ENABLE_SECCOMP}<\/seccomp>|" /etc/coolwsd/coolwsd.xml - sed -i -e "s|.*<\/capabilities>|${ENABLE_CAPABILITIES}<\/capabilities>|" /etc/coolwsd/coolwsd.xml + sed -i -e "s|.*<\/seccomp>|${ENABLE_SECCOMP,,}<\/seccomp>|" /etc/coolwsd/coolwsd.xml + sed -i -e "s|.*<\/capabilities>|${ENABLE_CAPABILITIES,,}<\/capabilities>|" /etc/coolwsd/coolwsd.xml sed -i -e "s|.*<\/jwt_expiry_secs>|${ADMIN_JWT_EXPIRY}<\/jwt_expiry_secs>|" /etc/coolwsd/coolwsd.xml - sed -i -e "s|.*<\/enable_macros_execution>|${ENABLE_MACROS}<\/enable_macros_execution>|" /etc/coolwsd/coolwsd.xml + sed -i -e "s|.*<\/enable_macros_execution>|${ENABLE_MACROS,,}<\/enable_macros_execution>|" /etc/coolwsd/coolwsd.xml sed -i -e "s|.*<\/macro_security_level>|${MACRO_SECURITY_LEVEL}<\/macro_security_level>|" /etc/coolwsd/coolwsd.xml sed -i -e "s|.*<\/enable_metrics_unauthenticated>|${ENABLE_METRICS_UNAUTHENTICATED}<\/enable_metrics_unauthenticated>|" /etc/coolwsd/coolwsd.xml sed -i -e "s|.*<\/opacity>|${WATERMARK_OPACITY}<\/opacity>|" /etc/coolwsd/coolwsd.xml sed -i -e "s|.*<\/text>|${WATERMARK_TEXT}<\/text>|" /etc/coolwsd/coolwsd.xml sed -i -e "s|.*<\/mode>|${INTERFACE}<\/mode>|" /etc/coolwsd/coolwsd.xml - sed -i -e "s|||" /etc/coolwsd/coolwsd.xml - sed -i -e "s|.*<\/enable>|${ENABLE_ADMIN_CONSOLE}<\/enable>|" /etc/coolwsd/coolwsd.xml + sed -i -e "s|||" /etc/coolwsd/coolwsd.xml + sed -i -e "s|.*<\/enable>|${ENABLE_ADMIN_CONSOLE,,}<\/enable>|" /etc/coolwsd/coolwsd.xml sed -i -e "s|.*<\/username>|${ADMIN_USER}<\/username>|" /etc/coolwsd/coolwsd.xml sed -i -e "s|.*<\/password>|${ADMIN_PASS}<\/password>|" /etc/coolwsd/coolwsd.xml sed -i -e "s|.*<\/limit_data_mem_kb>|${MEMORY_DATA_LIMIT}<\/limit_data_mem_kb>|" /etc/coolwsd/coolwsd.xml + sed -i -e "s|.*<\/enable>|${ENABLE_LANGUAGE_TOOL,,}<\/enable>|" /etc/coolwsd/coolwsd.xml + sed -i -e "s|.*<\/base_url>|${LANGUAGE_TOOL_BASE_URL}<\/base_url>|" /etc/coolwsd/coolwsd.xml + sed -i -e "s|.*<\/user_name>|${LANGUAGE_TOOL_USER_NAME}<\/user_name>|" /etc/coolwsd/coolwsd.xml + sed -i -e "s|.*<\/api_key>|${LANGUAGE_TOOL_API_KEY}<\/api_key>|" /etc/coolwsd/coolwsd.xml + sed -i -e "s|.*<\/hexify_embedded_urls>|${HEXIFY_EMBEDDED_URLS,,}<\/hexify_embedded_urls>|" /etc/coolwsd/coolwsd.xml + sed -i -e "s|.*<\/experimental_features>|${ENABLE_EXPERIMENTAL_FEATURES,,}<\/experimental_features>|" /etc/coolwsd/coolwsd.xml + sed -i -e "s|.*<\/docstats>|${ENABLE_DOCUMENT_STATISTICS,,}<\/docstats>|" /etc/coolwsd/coolwsd.xml + sed -i -e "s|.*<\/userstats>|${ENABLE_USER_STATISTICS,,}<\/userstats>|" /etc/coolwsd/coolwsd.xml + sed -i -e "s|.*<\/most_verbose_level_settable_from_client>|${LOG_LEVEL_CLIENT_MOST_VERBOSE}<\/most_verbose_level_settable_from_client>|" /etc/coolwsd/coolwsd.xml + sed -i -e "s|.*<\/least_verbose_level_settable_from_client>|${LOG_LEVEL_CLIENT_LEAST_VERBOSE}<\/least_verbose_level_settable_from_client>|" /etc/coolwsd/coolwsd.xml + sed -i -e "s|.*<\/use_integration_theme>|${USE_INTEGRATOR_THEME,,}<\/use_integration_theme>|" /etc/coolwsd/coolwsd.xml + sed -i -e "s|.*<\/url>|${REMOTE_FONT_URL}<\/url>|" /etc/coolwsd/coolwsd.xml + sed -i -e "s|.*<\/tile_cache_persistent>|${ENABLE_TILES_CACHE,,}<\/tile_cache_persistent>|" /etc/coolwsd/coolwsd.xml + sed -i -e "s|| enable=\"${ENABLE_FILES_QUARANTINE,,}\">|" /etc/coolwsd/coolwsd.xml + sed -i -e "s|.*<\/limit_dir_size_mb>|${FILES_QUARANTINE_DIRECTORY_SIZE_LIMIT}<\/limit_dir_size_mb>|" /etc/coolwsd/coolwsd.xml + sed -i -e "s|.*<\/max_versions_to_maintain>|${FILES_QUARANTINE_MAX_VERSIONS}<\/max_versions_to_maintain>|" /etc/coolwsd/coolwsd.xml + sed -i -e "s|.*<\/expiry_min>|${FILES_QUARANTINE_EXPIRY}<\/expiry_min>|" /etc/coolwsd/coolwsd.xml + sed -i -e "s|.*<\/path>|${FILES_QUARANTINE_PATH}<\/path>|" /etc/coolwsd/coolwsd.xml if var_false "${ENABLE_TLS}" ; then sed -i -E "s|.*<\/enable>|false<\/enable>|" /etc/coolwsd/coolwsd.xml @@ -207,10 +225,9 @@ if [ "${SETUP_TYPE,,}" = "auto" ]; then sed -i -e "s|.*<\/property>|${LOG_PATH}/${LOG_FILE}<\/property>|" /etc/coolwsd/coolwsd.xml sed -i -e "s|.*<\/property>|${LOG_FILE_FLUSH}<\/property>|" /etc/coolwsd/coolwsd.xml sed -i -e "s|.*<\/property>|false<\/property>|" /etc/coolwsd/coolwsd.xml - sed -i "s||${LOG_PATH}|g" /etc/logrotate.d/coolwsd + create_logrotate cool "${LOG_PATH}"/"${LOG_FILE}" none cool cool else print_debug "Log: Console" - rm -rf /etc/logrotate.d/coolwsd fi ### Allowed Hosts