diff --git a/Dockerfile b/Dockerfile index 9ce6fc8..5409b3b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -22,16 +22,16 @@ FROM ubuntu:24.04 -ADD https://download.nextcloud.com/server/releases/nextcloud-30.0.15.tar.bz2 /root/nextcloud.tar.bz2 -ADD https://github.com/nextcloud-releases/richdocuments/releases/download/v8.5.10/richdocuments-v8.5.10.tar.gz /root/richdocuments.tar.gz -ADD https://github.com/ONLYOFFICE/onlyoffice-nextcloud/releases/download/v9.10.0/onlyoffice.tar.gz /root/onlyoffice.tar.gz +ADD https://download.nextcloud.com/server/releases/nextcloud-31.0.9.tar.bz2 /root/nextcloud.tar.bz2 +ADD https://github.com/nextcloud-releases/richdocuments/releases/download/v8.7.6/richdocuments-v8.7.6.tar.gz /root/richdocuments.tar.gz +ADD https://github.com/ONLYOFFICE/onlyoffice-nextcloud/releases/download/v9.11.0/onlyoffice.tar.gz /root/onlyoffice.tar.gz COPY resources/entrypoint.sh /usr/sbin/ COPY resources/60-nextcloud.ini /etc/php/8.3/apache2/conf.d/ COPY resources/60-nextcloud.ini /etc/php/8.3/cli/conf.d/ COPY resources/000-default.conf /etc/apache2/sites-enabled/ # uncomment and set to true if a patch nededs to be applied -COPY resources/55065.patch /root/nc.patch +COPY resources/55831.patch /root/nc.patch ENV NC_IS_PATCHED true RUN /bin/bash -c "export DEBIAN_FRONTEND=noninteractive" && \ @@ -111,4 +111,4 @@ RUN cd /var/www/html/ && \ EXPOSE 80 -ENTRYPOINT /usr/sbin/entrypoint.sh +ENTRYPOINT ["/usr/sbin/entrypoint.sh"] diff --git a/Makefile b/Makefile index 0d2f26c..1a841d4 100644 --- a/Makefile +++ b/Makefile @@ -18,8 +18,8 @@ # along with this program. If not, see . app_name=nextcloud -app_version=30.0.15-0 -app_upgrade_from=29.0.11-0 +app_version=31.0.9-0 +app_upgrade_from=30.0.15-0 ucs_version=5.0 diff --git a/i18n/de/README_INSTALL_DE b/i18n/de/README_INSTALL_DE index fc8f8f8..d2c575a 100644 --- a/i18n/de/README_INSTALL_DE +++ b/i18n/de/README_INSTALL_DE @@ -2,5 +2,5 @@ Nextcloud bietet die Möglichkeit, LDAP Gruppen aus UCS zu verwenden. Dies vereinfacht es zum Beispiel, Ordner für eine Gruppe von Leuten bereit zu stellen. Um eine bestimmte Gruppe einzubeziehen, können diese aus ihren erweiterten Einstellungen in UCS heraus für Nextcloud freigegeben werden. Um eine signifikant bessere Performance zu erhalten, sollte vor der Nextcloud-Installation das memberOf-Overlay aktiviert werden. In Domänen, die mindestens mit UCS Version 4.3 installiert wurden, ist das memberOf-Overlay standardmäßig aktiviert.

-Falls im Host Webserver HTTP Strict Transport Security nicht eingeschaltet sein sollte, so ist diese Einrichtung zu empfehlen. Weitere Informationen dazu befinden sich in der Dokumentation. +Falls im Host Webserver HTTP Strict Transport Security nicht eingeschaltet sein sollte, so ist diese Einrichtung zu empfehlen. Weitere Informationen dazu befinden sich in der Dokumentation.

diff --git a/i18n/de/README_POST_INSTALL_DE b/i18n/de/README_POST_INSTALL_DE index a5c6d1f..0ba1ab3 100644 --- a/i18n/de/README_POST_INSTALL_DE +++ b/i18n/de/README_POST_INSTALL_DE @@ -5,8 +5,8 @@

Im Bereich der Sicherheits- & Einrichtungswarnungen werden wahrscheinlich einige Hinweise angezeigt, mit der die Nextcloud-Installation verbessert werden kann. Diese Punkt können nicht im Rahmen der Nextcloud Integration für UCS erfolgen, stattdessen entscheidet der Administrator gegebenenfalls Schritte durchzuführen.

"Strict-Transport-Security" HTTP header

Um den Dienst gegen Man-in-the-Middle Attacken zu härten, kann dieser Mechanismus aktiviert werden. Die SSL Terminierung erfolgt auf dem Reverse Proxy, typischer ein Apache2 Webserver auf dem Host. Die Konfiguration für die Domain(s) unter denen Nextcloud betrieben wird, muss dafür um einen HTTP Header ergänzt werden. Wenn diese Änderungen durchgeführt werden, wirken sie sich auf alle Dienste unterhalb der Domain aus.

-

This Dokumentation erklärt wie HSTS eingerichtet wird. Der includeSubDomains-Schalter ist notwendig.

+

This Dokumentation erklärt wie HSTS eingerichtet wird. Der includeSubDomains-Schalter ist notwendig.

Auflösung von "/.well-known/caldav|carddav" scheitert

Das Auffinden von Adressbuch- und Kalenderdiensten kann für entsprechende Klienten vereinfacht werden, in dem solche well-known URLs verfügbar gemacht werden, die letztlich auf den tatsächlichen Dienst verweisen. Die anschlagende Überprüfung tested, ob unterhalb der Hauptdomain diese URLs vorhanden sind. Um diese bereit zu stellen muss auch hier der Webserver des Hosts anhand dieser Dokumentation angefasst werden. +

Das Auffinden von Adressbuch- und Kalenderdiensten kann für entsprechende Klienten vereinfacht werden, in dem solche well-known URLs verfügbar gemacht werden, die letztlich auf den tatsächlichen Dienst verweisen. Die anschlagende Überprüfung tested, ob unterhalb der Hauptdomain diese URLs vorhanden sind. Um diese bereit zu stellen muss auch hier der Webserver des Hosts anhand dieser Dokumentation angefasst werden.

Es kann nur jeweils ein Dienst pro Domain verknüpft werden. Das Vorhandensein der URLs ist nicht kritisch für das Funktionieren der Nextcloud, erhöht aber den Komfort für einige Endnutzer.

Diese Überprüfung ist während der Nextcloud 13 Serie eingeführt worden. In früheren Versionen wurde der Hinweis folglich nicht gezeigt.

diff --git a/i18n/de/README_POST_UPDATE_DE b/i18n/de/README_POST_UPDATE_DE index 610f117..4a9868a 100644 --- a/i18n/de/README_POST_UPDATE_DE +++ b/i18n/de/README_POST_UPDATE_DE @@ -2,9 +2,9 @@

Im Bereich der Sicherheits- & Einrichtungswarnungen werden wahrscheinlich einige Hinweise angezeigt, mit der die Nextcloud-Installation verbessert werden kann. Diese Punkt können nicht im Rahmen der Nextcloud Integration für UCS erfolgen, stattdessen entscheidet der Administrator gegebenenfalls Schritte durchzuführen.

"Strict-Transport-Security" HTTP header

Um den Dienst gegen Man-in-the-Middle Attacken zu härten, kann dieser Mechanismus aktiviert werden. Die SSL Terminierung erfolgt auf dem Reverse Proxy, typischer ein Apache2 Webserver auf dem Host. Die Konfiguration für die Domain(s) unter denen Nextcloud betrieben wird, muss dafür um einen HTTP Header ergänzt werden. Wenn diese Änderungen durchgeführt werden, wirken sie sich auf alle Dienste unterhalb der Domain aus.

-

This Dokumentation erklärt wie HSTS eingerichtet wird. Der includeSubDomains-Schalter ist notwendig.

+

This Dokumentation erklärt wie HSTS eingerichtet wird. Der includeSubDomains-Schalter ist notwendig.

Auflösung von "/.well-known/caldav|carddav" scheitert

Das Auffinden von Adressbuch- und Kalenderdiensten kann für entsprechende Klienten vereinfacht werden, in dem solche well-known URLs verfügbar gemacht werden, die letztlich auf den tatsächlichen Dienst verweisen. Die anschlagende Überprüfung tested, ob unterhalb der Hauptdomain diese URLs vorhanden sind. Um diese bereit zu stellen muss auch hier der Webserver des Hosts anhand dieser Dokumentation angefasst werden. +

Das Auffinden von Adressbuch- und Kalenderdiensten kann für entsprechende Klienten vereinfacht werden, in dem solche well-known URLs verfügbar gemacht werden, die letztlich auf den tatsächlichen Dienst verweisen. Die anschlagende Überprüfung tested, ob unterhalb der Hauptdomain diese URLs vorhanden sind. Um diese bereit zu stellen muss auch hier der Webserver des Hosts anhand dieser Dokumentation angefasst werden.

Es kann nur jeweils ein Dienst pro Domain verknüpft werden. Das Vorhandensein der URLs ist nicht kritisch für das Funktionieren der Nextcloud, erhöht aber den Komfort für einige Endnutzer.

Diese Überprüfung ist während der Nextcloud 13 Serie eingeführt worden. In früheren Versionen wurde der Hinweis folglich nicht gezeigt.

Fehlende Datenbank-Indizes

diff --git a/i18n/en/README_INSTALL_EN b/i18n/en/README_INSTALL_EN index 969f504..59a44ba 100644 --- a/i18n/en/README_INSTALL_EN +++ b/i18n/en/README_INSTALL_EN @@ -1,4 +1,4 @@ Nextcloud offers the possibility of using LDAP groups from UCS. This make it easier to share a folder to a range of people, for instance. To include a specific group they can be enabled from within their extended settings in UCS. For a significantly better performance, please make sure that the memberOf overlay is activated. In domains that were installed with at least UCS 4.3 it is activated by default.

-Also, if the host webserver does not have HTTP Strict Transport Security enabled, it is recommend to configure it. More information can be found in our documentation. +Also, if the host webserver does not have HTTP Strict Transport Security enabled, it is recommend to configure it. More information can be found in our documentation. diff --git a/i18n/en/README_POST_INSTALL_EN b/i18n/en/README_POST_INSTALL_EN index 8af8b4f..d30aa01 100644 --- a/i18n/en/README_POST_INSTALL_EN +++ b/i18n/en/README_POST_INSTALL_EN @@ -5,8 +5,8 @@

In the Security & setup warnings section it is likely that some messages are shown, on how to improve the setup. The items mentioned cannot be done by the Nextcloud integration for UCS, instead the admin needs to decide whether actions should be taken.

"Strict-Transport-Security" HTTP header

To harden the service against man-in-the-middle attacks, this mechanism can be enabled. The SSL termination happens on the reverse proxy, which typically is an Apache2 web server on the host. The configuration for the domain(s) Nextcloud is running on would need to be extended with an HTTP header. Applying the changes affects all services running within this domain.

-

This documentation page explains how to configure HSTS. The includeSubDomains is necessary.

+

This documentation page explains how to configure HSTS. The includeSubDomains is necessary.

Not able to resolve "/.well-known/caldav|carddav"

-

Discovery of addressbook and calendar services can be made easier for such clients, by providing well-known URLs that redirect to the actual location of that service. This check tests whether the top-level domain has the given URLs present. Again, to resolve this, the web server configuration of the host needs to be adjusted, according to this documentation.

+

Discovery of addressbook and calendar services can be made easier for such clients, by providing well-known URLs that redirect to the actual location of that service. This check tests whether the top-level domain has the given URLs present. Again, to resolve this, the web server configuration of the host needs to be adjusted, according to this documentation.

It is only possible to link to one service provider on a domain. Having the URLs present is not crucial for a working Nextcloud setup, but improves the convenience for some end users.

The check was introduced within the Nextcloud 13 series. Thus in the earlier version the hint was not shown.

diff --git a/i18n/en/README_POST_UPDATE_EN b/i18n/en/README_POST_UPDATE_EN index d778e46..904494b 100644 --- a/i18n/en/README_POST_UPDATE_EN +++ b/i18n/en/README_POST_UPDATE_EN @@ -2,9 +2,9 @@

In the Security & setup warnings section it is likely that some messages are shown, on how to improve the setup. The items mentioned cannot be done by the Nextcloud integration for UCS, instead the admin needs to decide whether actions should be taken.

"Strict-Transport-Security" HTTP header

To harden the service against man-in-the-middle attacks, this mechanism can be enabled. The SSL termination happens on the reverse proxy, which typically is an Apache2 web server on the host. The configuration for the domain(s) Nextcloud is running on would need to be extended with an HTTP header. Applying the changes affects all services running within this domain.

-

This documentation page explains how to configure HSTS. The includeSubDomains is necessary.

+

This documentation page explains how to configure HSTS. The includeSubDomains is necessary.

Not able to resolve "/.well-known/caldav|carddav"

-

Discovery of addressbook and calendar services can be made easier for such clients, by providing well-known URLs that redirect to the actual location of that service. This check tests whether the top-level domain has the given URLs present. Again, to resolve this, the web server configuration of the host needs to be adjusted, according to this documentation.

+

Discovery of addressbook and calendar services can be made easier for such clients, by providing well-known URLs that redirect to the actual location of that service. This check tests whether the top-level domain has the given URLs present. Again, to resolve this, the web server configuration of the host needs to be adjusted, according to this documentation.

It is only possible to link to one service provider on a domain. Having the URLs present is not crucial for a working Nextcloud setup, but improves the convenience for some end users.

The check was introduced within the Nextcloud 13 series. Thus in the earlier version the hint was not shown.

Missing database indices

diff --git a/resources/55065.patch b/resources/55831.patch similarity index 50% rename from resources/55065.patch rename to resources/55831.patch index af4350c..2ac631e 100644 --- a/resources/55065.patch +++ b/resources/55831.patch @@ -1,20 +1,5 @@ -From ac6653ec5b9746c6695fc46dcee81379af048220 Mon Sep 17 00:00:00 2001 -From: Arthur Schiwon -Date: Fri, 12 Sep 2025 11:48:28 +0200 -Subject: [PATCH] fix(Apps): fix install command check on existing apps - -- AppManager::isInstalled() is misleading, as it checks only whether it is - enabled. But an app might not be present in some edge cases. -- AppManager::getAppPath() does however only check whether an app dir is - present, independent of the enabled-state. - -Signed-off-by: Arthur Schiwon ---- - core/Command/App/Install.php | 5 ++++- - 1 file changed, 4 insertions(+), 1 deletion(-) - diff --git a/core/Command/App/Install.php b/core/Command/App/Install.php -index aa263a8f3bfc9..f7fa92208eaaa 100644 +index 4e9c846cbd4b2..eab0a294cc367 100644 --- a/core/Command/App/Install.php +++ b/core/Command/App/Install.php @@ -9,6 +9,7 @@ @@ -27,7 +12,7 @@ index aa263a8f3bfc9..f7fa92208eaaa 100644 use Symfony\Component\Console\Input\InputArgument; @@ -58,9 +59,11 @@ protected function execute(InputInterface $input, OutputInterface $output): int $appId = $input->getArgument('app-id'); - $forceEnable = (bool) $input->getOption('force'); + $forceEnable = (bool)$input->getOption('force'); - if ($this->appManager->isInstalled($appId)) { + try {