From 16e24bea6aa3567a6616c8daa9a6e418eb760574 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?R=C3=A9mi=20B=C3=A9dard-Couture?= <remi.bc@outlook.com>
Date: Mon, 2 Sep 2024 17:08:23 -0400
Subject: [PATCH 1/5] Add scripts for Collabora Online

---
 ct/collabora.sh              | 70 ++++++++++++++++++++++++++++++++++++
 install/collabora-install.sh | 48 +++++++++++++++++++++++++
 2 files changed, 118 insertions(+)
 create mode 100644 ct/collabora.sh
 create mode 100644 install/collabora-install.sh

diff --git a/ct/collabora.sh b/ct/collabora.sh
new file mode 100644
index 00000000..04bd297b
--- /dev/null
+++ b/ct/collabora.sh
@@ -0,0 +1,70 @@
+#!/usr/bin/env bash
+source <(curl -s https://raw.githubusercontent.com/remz1337/Proxmox/remz/misc/build.func)
+# Copyright (c) 2021-2024 tteck
+# Author: tteck (tteckster)
+# Co-Author: remz1337
+# License: MIT
+# https://github.com/tteck/Proxmox/raw/main/LICENSE
+
+function header_info {
+clear
+cat <<"EOF"
+   ______      ____      __                    
+  / ____/___  / / /___ _/ /_  ____  _________ _
+ / /   / __ \/ / / __ `/ __ \/ __ \/ ___/ __ `/
+/ /___/ /_/ / / / /_/ / /_/ / /_/ / /  / /_/ / 
+\____/\____/_/_/\__,_/_.___/\____/_/   \__,_/  
+                                               
+EOF
+}
+header_info
+echo -e "Loading..."
+APP="Collabora"
+var_disk="12"
+var_cpu="1"
+var_ram="1024"
+var_os="debian"
+var_version="12"
+variables
+color
+catch_errors
+
+function default_settings() {
+  CT_TYPE="1"
+  PW=""
+  CT_ID=$NEXTID
+  HN=$NSAPP
+  DISK_SIZE="$var_disk"
+  CORE_COUNT="$var_cpu"
+  RAM_SIZE="$var_ram"
+  BRG="vmbr0"
+  NET="dhcp"
+  GATE=""
+  APT_CACHER=""
+  APT_CACHER_IP=""
+  DISABLEIP6="no"
+  MTU=""
+  SD=""
+  NS=""
+  MAC=""
+  VLAN=""
+  SSH="no"
+  VERB="no"
+  echo_default
+}
+
+function update_script() {
+  header_info
+  if [[ ! -f /etc/systemd/system/coolwsd.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
+  msg_info "Updating ${APP} LXC"
+  apt-get update &>/dev/null
+  apt-get -y upgrade &>/dev/null
+  msg_ok "Updated ${APP} LXC"
+  exit
+}
+
+start
+build_container
+description
+
+msg_ok "Completed Successfully!\n"
\ No newline at end of file
diff --git a/install/collabora-install.sh b/install/collabora-install.sh
new file mode 100644
index 00000000..c45bc9e4
--- /dev/null
+++ b/install/collabora-install.sh
@@ -0,0 +1,48 @@
+#!/usr/bin/env bash
+
+# Copyright (c) 2021-2024 tteck
+# Author: tteck (tteckster)
+# Co-Author: remz1337
+# License: MIT
+# https://github.com/tteck/Proxmox/raw/main/LICENSE
+
+source /dev/stdin <<< "$FUNCTIONS_FILE_PATH"
+color
+verb_ip6
+catch_errors
+setting_up_container
+network_check
+update_os
+
+msg_info "Installing Dependencies"
+$STD apt-get install -y curl
+$STD apt-get install -y sudo
+$STD apt-get install -y mc
+msg_ok "Installed Dependencies"
+
+msg_info "Installing Collabora Online"
+cd /usr/share/keyrings
+$STD wget -q https://collaboraoffice.com/downloads/gpg/collaboraonline-release-keyring.gpg
+cd ~
+cat <<EOF >/etc/apt/sources.list.d/collaboraonline.sources
+Types: deb
+URIs: https://www.collaboraoffice.com/repos/CollaboraOnline/CODE-deb
+Suites: ./
+Signed-By: /usr/share/keyrings/collaboraonline-release-keyring.gpg
+EOF
+$STD apt update 
+$STD apt install -y coolwsd code-brand collaboraoffice*
+sed -i 's|<enable type="bool" desc="Controls whether SSL encryption between coolwsd and the network is enabled (do not disable for production deployment). If default is false, must first be compiled with SSL support to enable." default="true">true</enable>|<enable type="bool" desc="Controls whether SSL encryption between coolwsd and the network is enabled (do not disable for production deployment). If default is false, must first be compiled with SSL support to enable." default="true">false</enable>|g' /etc/coolwsd/coolwsd.xml
+sed -i 's|<termination desc="Connection via proxy where coolwsd acts as working via https, but actually uses http." type="bool" default="true">false</termination>|<termination desc="Connection via proxy where coolwsd acts as working via https, but actually uses http." type="bool" default="true">true</termination>|g' /etc/coolwsd/coolwsd.xml
+systemctl restart coolwsd
+msg_ok "Installed Collabora Online"
+
+motd_ssh
+customize
+
+msg_info "Cleaning up"
+$STD apt-get autoremove
+$STD apt-get autoclean
+msg_ok "Cleaned"
+
+echo -e "Don't forget to setup reverse proxy. See ${BL}https://sdk.collaboraonline.com/docs/installation/Proxy_settings.html#reverse-proxy-settings-in-nginx-config-ssl-termination${CL}"

From d8ce57184295696b6f79d814011be54465198d5c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?R=C3=A9mi=20B=C3=A9dard-Couture?= <remi.bc@outlook.com>
Date: Mon, 2 Sep 2024 18:02:08 -0400
Subject: [PATCH 2/5] Fix service path in update script

---
 ct/collabora.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/ct/collabora.sh b/ct/collabora.sh
index 04bd297b..06479a78 100644
--- a/ct/collabora.sh
+++ b/ct/collabora.sh
@@ -55,7 +55,7 @@ function default_settings() {
 
 function update_script() {
   header_info
-  if [[ ! -f /etc/systemd/system/coolwsd.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
+  if [[ ! -f /lib/systemd/system/coolwsd.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
   msg_info "Updating ${APP} LXC"
   apt-get update &>/dev/null
   apt-get -y upgrade &>/dev/null

From bf7aa01d76521f47bbb5b58d8abb0ace72fbe2f3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?R=C3=A9mi=20B=C3=A9dard-Couture?= <remi.bc@outlook.com>
Date: Tue, 3 Sep 2024 08:50:45 -0400
Subject: [PATCH 3/5] Point build.func script source to original repo (tteck)

---
 ct/collabora.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/ct/collabora.sh b/ct/collabora.sh
index 06479a78..c5cb0f9e 100644
--- a/ct/collabora.sh
+++ b/ct/collabora.sh
@@ -1,5 +1,5 @@
 #!/usr/bin/env bash
-source <(curl -s https://raw.githubusercontent.com/remz1337/Proxmox/remz/misc/build.func)
+source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
 # Copyright (c) 2021-2024 tteck
 # Author: tteck (tteckster)
 # Co-Author: remz1337

From 0eb6e0decc1755f42b62990d7731db4785ad6b1a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?R=C3=A9mi=20B=C3=A9dard-Couture?= <remi.bc@outlook.com>
Date: Tue, 3 Sep 2024 08:54:11 -0400
Subject: [PATCH 4/5] Pass -y argument to apt-get cleanup commands

---
 install/collabora-install.sh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/install/collabora-install.sh b/install/collabora-install.sh
index c45bc9e4..df32d660 100644
--- a/install/collabora-install.sh
+++ b/install/collabora-install.sh
@@ -41,8 +41,8 @@ motd_ssh
 customize
 
 msg_info "Cleaning up"
-$STD apt-get autoremove
-$STD apt-get autoclean
+$STD apt-get -y autoremove
+$STD apt-get -y autoclean
 msg_ok "Cleaned"
 
 echo -e "Don't forget to setup reverse proxy. See ${BL}https://sdk.collaboraonline.com/docs/installation/Proxy_settings.html#reverse-proxy-settings-in-nginx-config-ssl-termination${CL}"

From 5b93531fcbab05632acf91ca1586cad4ad98203d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?R=C3=A9mi=20B=C3=A9dard-Couture?= <remi.bc@outlook.com>
Date: Tue, 3 Sep 2024 08:55:02 -0400
Subject: [PATCH 5/5] Move configuration notice to main script

---
 ct/collabora.sh              | 3 ++-
 install/collabora-install.sh | 2 --
 2 files changed, 2 insertions(+), 3 deletions(-)

diff --git a/ct/collabora.sh b/ct/collabora.sh
index c5cb0f9e..3d776b33 100644
--- a/ct/collabora.sh
+++ b/ct/collabora.sh
@@ -67,4 +67,5 @@ start
 build_container
 description
 
-msg_ok "Completed Successfully!\n"
\ No newline at end of file
+msg_ok "Completed Successfully!\n"
+echo -e "Don't forget to setup reverse proxy. See ${BL}https://sdk.collaboraonline.com/docs/installation/Proxy_settings.html#reverse-proxy-settings-in-nginx-config-ssl-termination${CL}"
\ No newline at end of file
diff --git a/install/collabora-install.sh b/install/collabora-install.sh
index df32d660..b79f35e5 100644
--- a/install/collabora-install.sh
+++ b/install/collabora-install.sh
@@ -44,5 +44,3 @@ msg_info "Cleaning up"
 $STD apt-get -y autoremove
 $STD apt-get -y autoclean
 msg_ok "Cleaned"
-
-echo -e "Don't forget to setup reverse proxy. See ${BL}https://sdk.collaboraonline.com/docs/installation/Proxy_settings.html#reverse-proxy-settings-in-nginx-config-ssl-termination${CL}"