From b7f7023ec6a79deed7863071f9aba566923c3df0 Mon Sep 17 00:00:00 2001 From: Anna Larch Date: Sun, 26 Apr 2026 23:38:45 +0200 Subject: [PATCH 01/16] fix(admin): use dedicated database user in occ install example Using 'root' as the database user is a security antipattern. AI-Assisted-By: claude-sonnet-4-6 Signed-off-by: Anna Larch --- admin_manual/installation/command_line_installation.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/admin_manual/installation/command_line_installation.rst b/admin_manual/installation/command_line_installation.rst index b6bc76c6ee3..a1b89ad6f2e 100644 --- a/admin_manual/installation/command_line_installation.rst +++ b/admin_manual/installation/command_line_installation.rst @@ -21,7 +21,7 @@ of running the graphical Installation Wizard:: $ cd /var/www/nextcloud/ $ sudo -E -u www-data php occ maintenance:install \ --database 'mysql' --database-name 'nextcloud' \ - --database-user 'root' --database-pass 'password' \ + --database-user 'nextcloud' --database-pass 'password' \ --admin-user 'admin' --admin-pass 'password' Note that you must change to the root Nextcloud directory, as in the example From 1bf522112458fc7ccbe5cd4ccf41573d0f204b78 Mon Sep 17 00:00:00 2001 From: Anna Larch Date: Sun, 26 Apr 2026 23:38:49 +0200 Subject: [PATCH 02/16] fix(admin): mention config files as required for restore in restore.rst The original note omitted config files, which are also required. AI-Assisted-By: claude-sonnet-4-6 Signed-off-by: Anna Larch --- admin_manual/maintenance/restore.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/admin_manual/maintenance/restore.rst b/admin_manual/maintenance/restore.rst index 9290f146bfc..92f763df4e6 100644 --- a/admin_manual/maintenance/restore.rst +++ b/admin_manual/maintenance/restore.rst @@ -10,8 +10,8 @@ restore: #. The database #. The theme directory -.. note:: You must have both the database and data directory. You cannot - complete restoration unless you have both of these. +.. note:: You must have the database, data directory, and configuration files. + You cannot complete restoration without all three. Restore folders --------------- From b9672b28a06e3b82aa19f0fac578f32153971040 Mon Sep 17 00:00:00 2001 From: Anna Larch Date: Sun, 26 Apr 2026 23:38:51 +0200 Subject: [PATCH 03/16] fix(admin): clarify two backup approaches in backup.rst The previous sentence mixed two options into a confusing parenthetical. AI-Assisted-By: claude-sonnet-4-6 Signed-off-by: Anna Larch --- admin_manual/maintenance/backup.rst | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/admin_manual/maintenance/backup.rst b/admin_manual/maintenance/backup.rst index 68878a448d9..8ed8e960812 100644 --- a/admin_manual/maintenance/backup.rst +++ b/admin_manual/maintenance/backup.rst @@ -31,8 +31,7 @@ Don't forget to change it back to ``false`` when you are finished. Backup folders -------------- -Simply copy your config, data and theme folders (or even your whole Nextcloud install and data folder) to a place outside of -your Nextcloud environment. You could use this command:: +Copy your config, data, and theme directories to a location outside your Nextcloud environment. Alternatively, copy your entire Nextcloud installation directory (including the data directory). You could use this command:: rsync -Aavx nextcloud/ nextcloud-dirbkp_`date +"%Y%m%d"`/ From ba9f6c64cd91ae4b15021d3a2733e8b83e23f3e1 Mon Sep 17 00:00:00 2001 From: Anna Larch Date: Sun, 26 Apr 2026 23:39:04 +0200 Subject: [PATCH 04/16] fix(admin): fix word order in oauth2.rst confidential clients note AI-Assisted-By: claude-sonnet-4-6 Signed-off-by: Anna Larch --- admin_manual/configuration_server/oauth2.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/admin_manual/configuration_server/oauth2.rst b/admin_manual/configuration_server/oauth2.rst index d88b2abe5b4..ca63b75ad46 100644 --- a/admin_manual/configuration_server/oauth2.rst +++ b/admin_manual/configuration_server/oauth2.rst @@ -6,7 +6,7 @@ Nextcloud allows connecting external services (for example Moodle) to your Nextc This is done via ``OAuth2``. See `RFC6749 `_ for the OAuth2 specification. -.. note:: Nextcloud does only support confidential clients. +.. note:: Nextcloud supports only confidential clients. Add an OAuth2 Application ------------------------- From 895edeceba816de259dd0acf64ae1b1004d75ace Mon Sep 17 00:00:00 2001 From: Anna Larch Date: Sun, 26 Apr 2026 23:39:07 +0200 Subject: [PATCH 05/16] fix(admin): standardise to "log entries" in logging_configuration.rst AI-Assisted-By: claude-sonnet-4-6 Signed-off-by: Anna Larch --- admin_manual/configuration_server/logging_configuration.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/admin_manual/configuration_server/logging_configuration.rst b/admin_manual/configuration_server/logging_configuration.rst index f5473f2eafc..40161f28933 100644 --- a/admin_manual/configuration_server/logging_configuration.rst +++ b/admin_manual/configuration_server/logging_configuration.rst @@ -35,7 +35,7 @@ All log information will be sent to PHP ``error_log()``. "log_type" => "errorlog", -.. warning:: Until version Nextcloud 25 log entries were prefixed with ``[owncloud]``. From 26 onwards messages start with ``[nextcloud]``. +.. warning:: Until Nextcloud 25, log entries were prefixed with ``[owncloud]``. From 26 onwards, log entries start with ``[nextcloud]``. file ~~~~ From 9625ea1a8aad00cf9eccc038c04cfce9eda45f1f Mon Sep 17 00:00:00 2001 From: Anna Larch Date: Sun, 26 Apr 2026 23:39:30 +0200 Subject: [PATCH 06/16] fix(admin): clarify per-user file locking note in auth_mechanisms.rst The original sentence implied files are duplicated per user, which is misleading. Rewritten to accurately describe the locking limitation. AI-Assisted-By: claude-sonnet-4-6 Signed-off-by: Anna Larch --- .../configuration_files/external_storage/auth_mechanisms.rst | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/admin_manual/configuration_files/external_storage/auth_mechanisms.rst b/admin_manual/configuration_files/external_storage/auth_mechanisms.rst index e0600383ce8..2f6f476c688 100644 --- a/admin_manual/configuration_files/external_storage/auth_mechanisms.rst +++ b/admin_manual/configuration_files/external_storage/auth_mechanisms.rst @@ -83,8 +83,7 @@ Considerations for shared storage --------------------------------- Every external storage, which is using user specific authentication, is connected individually. -Even if several users connect to the same folder, the files are regarded as separate files per user. -Nextcloud can not recognize if two users access the very same file if they follow individual connections. +Nextcloud cannot recognise shared file locks across individual connections, even when accessing the same file. This has an influence on e.g. file locking as a locked individual file is not shown as locked to other users or users cannot collaboratively edit documents. From 52d5c16dd46006e116b4bd129e6903fc5df02acc Mon Sep 17 00:00:00 2001 From: Anna Larch Date: Sun, 26 Apr 2026 23:39:34 +0200 Subject: [PATCH 07/16] fix(admin): fix missing "to" in amazons3.rst S3 access field AI-Assisted-By: claude-sonnet-4-6 Signed-off-by: Anna Larch --- admin_manual/configuration_files/external_storage/amazons3.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/admin_manual/configuration_files/external_storage/amazons3.rst b/admin_manual/configuration_files/external_storage/amazons3.rst index eb4afb0cd71..bd0b81e7245 100644 --- a/admin_manual/configuration_files/external_storage/amazons3.rst +++ b/admin_manual/configuration_files/external_storage/amazons3.rst @@ -39,7 +39,7 @@ Setting :code:`Enable Path Style` to true configures the S3 client to make reque enable it if your in-house object store or service provider requires it over the default (v4) authentication. In the **Available for** field enter the users or groups who you want to give -access your S3 mount. +give access to your S3 mount. The ``Enable SSL`` checkbox enables HTTPS connections and generally preferred. It is the default unless you disable it here. From 8785182fdb57a5062f3af7b0f9c28f0e9e7c6cdc Mon Sep 17 00:00:00 2001 From: Anna Larch Date: Sun, 26 Apr 2026 23:41:04 +0200 Subject: [PATCH 08/16] fix(admin): fix two typos in user_configuration.rst MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit "have the the option" → "have the option" "will not longer be able" → "will no longer be able" AI-Assisted-By: claude-sonnet-4-6 Signed-off-by: Anna Larch --- admin_manual/configuration_user/user_configuration.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/admin_manual/configuration_user/user_configuration.rst b/admin_manual/configuration_user/user_configuration.rst index e9bf1fb3da8..6894c4ba75b 100644 --- a/admin_manual/configuration_user/user_configuration.rst +++ b/admin_manual/configuration_user/user_configuration.rst @@ -68,7 +68,7 @@ User accounts have the following properties: *Quota* The maximum disk space assigned to each user. Any user that exceeds the quota - cannot upload or sync data. You have the the option to include external + cannot upload or sync data. You have the option to include external storage in user quotas. *Manager* @@ -211,7 +211,7 @@ settings and files. The user can be activated any time again, without data-loss. Hover your cursor over their name on the **Users** page until the "..."-menu icon appears at the far right. After clicking on it, you will see the **Disable** option. -The user will not longer be able to access their Nextcloud until you enable them again. +The user will no longer be able to access their Nextcloud until you enable them again. Also all external shares, via public link or email, will not be accessible. Internal shares will still be working, so that other users on Nextcloud can continue working. From a8a10863497d80f6944608b7baca9a4287e6efec Mon Sep 17 00:00:00 2001 From: Anna Larch Date: Sun, 26 Apr 2026 23:41:07 +0200 Subject: [PATCH 09/16] fix(admin): fix three prose errors in user_auth_ldap.rst MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ".e.g" → "e.g.", "according data" → "corresponding data", invalid regex notation [\a-\zA-\Z0-\9_.@-] → [a-zA-Z0-9_.@-] AI-Assisted-By: claude-sonnet-4-6 Signed-off-by: Anna Larch --- admin_manual/configuration_user/user_auth_ldap.rst | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/admin_manual/configuration_user/user_auth_ldap.rst b/admin_manual/configuration_user/user_auth_ldap.rst index bb42a0169c5..db2701bdad7 100644 --- a/admin_manual/configuration_user/user_auth_ldap.rst +++ b/admin_manual/configuration_user/user_auth_ldap.rst @@ -463,7 +463,7 @@ Email Field: User Home Folder Naming Rule: By default, the Nextcloud server creates the user directory in your Nextcloud - data directory and gives it the Nextcloud username, .e.g ``/var/www/nextcloud/data/alice``. You may want to override this setting and name it after an LDAP + data directory and gives it the Nextcloud username, e.g. ``/var/www/nextcloud/data/alice``. You may want to override this setting and name it after an LDAP attribute value. The attribute can also return an absolute path, e.g. ``/mnt/storage43/alice``. Leave it empty for default behavior. @@ -483,7 +483,7 @@ User Profile attributes .. figure:: ../images/ldap-advanced-4-attributes.png :alt: User Profile Attributes. -After configuring those attributes, the User Profile data will be overwritten with the according data from LDAP. The checksum of data from LDAP will be stored in user settings ``user_ldap``, ``lastProfileChecksum`` and profile update is skipped as long as data from LDAP doesn't change. If ``memcache.distributed`` is enabled in ``config.php`` the checksum will be cached and the checking will be skipped, as long as the cached value exists (expires after ``ldapCacheTTL`` seconds). +After configuring those attributes, the User Profile data will be overwritten with the corresponding data from LDAP. The checksum of data from LDAP will be stored in user settings ``user_ldap``, ``lastProfileChecksum`` and profile update is skipped as long as data from LDAP doesn't change. If ``memcache.distributed`` is enabled in ``config.php`` the checksum will be cached and the checking will be skipped, as long as the cached value exists (expires after ``ldapCacheTTL`` seconds). Please be aware: - The user can change the data in profile, but it will get overwritten if changed in LDAP @@ -570,7 +570,7 @@ Internal Username: The internal username is the identifier in Nextcloud for LDAP users. By default it will be created from the UUID attribute. The UUID attribute ensures that the username is unique, and that characters do not need to be converted. Only - these characters are allowed: [\a-\zA-\Z0-\9_.@-]. Other characters are + these characters are allowed: ``[a-zA-Z0-9_.@-]``. Other characters are replaced with their ASCII equivalents, or are simply omitted. The LDAP backend ensures that there are no duplicate internal usernames in From d9934bd772998e896f478415218d769b4224126d Mon Sep 17 00:00:00 2001 From: Anna Larch Date: Sun, 26 Apr 2026 23:41:57 +0200 Subject: [PATCH 10/16] fix(admin): clarify language model caveat in app_context_agent.rst AI-Assisted-By: claude-sonnet-4-6 Signed-off-by: Anna Larch --- admin_manual/ai/app_context_agent.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/admin_manual/ai/app_context_agent.rst b/admin_manual/ai/app_context_agent.rst index 68f22167d6a..eceff42db48 100644 --- a/admin_manual/ai/app_context_agent.rst +++ b/admin_manual/ai/app_context_agent.rst @@ -441,7 +441,7 @@ Nextcloud customers should file bugs directly with our Support system. Known Limitations ----------------- * Make sure to test the language model you are using in concert with this app for whether they meet the use-case's quality requirements -* Most models have difficulties with languages other than English. Some sometimes answer in another language than used by the user. +* Most models have difficulties with languages other than English. Some models sometimes answer in a different language than the one used by the user. * Customer support is available upon request, however we can't solve false or problematic output, most performance issues, or other problems caused by the underlying model. Support is thus limited only to bugs directly caused by the implementation of the app (connectors, API, front-end, AppAPI). We still try to optimize this as far as possible, so if you encounter any false or problematic output, you can report it `in a dedicated Github issue `_ to help us improve this app. * When multiple MCP services are configured that have tools with the same name undefined behavior will occur. From 9199570856f9154f24f3c056adfdf9d65c188863 Mon Sep 17 00:00:00 2001 From: Anna Larch Date: Sun, 26 Apr 2026 23:41:57 +0200 Subject: [PATCH 11/16] fix(admin): fix "IBMwatsonX" capitalisation in eu_ai_act.rst AI-Assisted-By: claude-sonnet-4-6 Signed-off-by: Anna Larch --- admin_manual/ai/eu_ai_act.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/admin_manual/ai/eu_ai_act.rst b/admin_manual/ai/eu_ai_act.rst index 3a7ee6f7e65..21ea2e68b04 100644 --- a/admin_manual/ai/eu_ai_act.rst +++ b/admin_manual/ai/eu_ai_act.rst @@ -35,7 +35,7 @@ This section describes the measures that ensure the software is interoperable. - We provide our AI features via an open API with publicly accessible `OpenAPI specs `_ which allows developers to build on top of our features. - As our software is fully open-source, anyone can adjust the software to meet their needs. For example, anyone can adjust the core code, adjust the code of existing applications, or develop a custom application for Nextcloud. -- We implement integrations for the major model hosting providers and their protocols upon request of customers. We are interoperable with OpenAI and IBMwatsonX. As Nextcloud is an open app ecosystem, anyone can develop an integration with a model hosting provider on their own. +- We implement integrations for the major model hosting providers and their protocols upon request of customers. We are interoperable with OpenAI and IBM watsonx. As Nextcloud is an open app ecosystem, anyone can develop an integration with a model hosting provider on their own. - We implement the agent interoperability protocol MCP both as a client and as a server to allow users to connect the AI Agent software to existing services and connect existing AI Agents to our software. - We implement a local model hosting mechanism that can be used to host GGUF models (most open weight models can be converted using an Open Source tool called llama.cpp). From 8cc0258ce12e16c0ad67a8784c33ddef8a3cbd1e Mon Sep 17 00:00:00 2001 From: Anna Larch Date: Sun, 26 Apr 2026 23:42:43 +0200 Subject: [PATCH 12/16] fix(admin): fix malformed RST link and missing verb in windmill_workflows/index.rst AI-Assisted-By: claude-sonnet-4-6 Signed-off-by: Anna Larch --- admin_manual/windmill_workflows/index.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/admin_manual/windmill_workflows/index.rst b/admin_manual/windmill_workflows/index.rst index bc32d91eab5..ce15bb35257 100644 --- a/admin_manual/windmill_workflows/index.rst +++ b/admin_manual/windmill_workflows/index.rst @@ -2,7 +2,7 @@ Windmill Workflows ================== -Nextcloud integrates the `Windmill workflow engine ` to allow advanced custom workflows interacting with your Nextcloud instance. +Nextcloud integrates the `Windmill workflow engine `_ to allow advanced custom workflows interacting with your Nextcloud instance. Installation ------------ @@ -133,7 +133,7 @@ The :code:`data` variable receives the response of the HTTP request, so any data Authentication ~~~~~~~~~~~~~~ -All the scripts we provide one input parameter in common: *nextcloud* needs to be an object of the type "Nextcloud" and contain what is necessary to authenticate against Nextcloud: +All the scripts we provide have one input parameter in common: *nextcloud* needs to be an object of the type "Nextcloud" and contain what is necessary to authenticate against Nextcloud: * baseUrl: the URL your instance is reachable at, e.g. :code:`https://example.cloud` * userId: the user id of the user the script should authenticate with From 4a9d18a8642ae1842b245fc55b29d6728a68e6fb Mon Sep 17 00:00:00 2001 From: Anna Larch Date: Sun, 26 Apr 2026 23:42:48 +0200 Subject: [PATCH 13/16] =?UTF-8?q?fix(admin):=20fix=20"or=20has=20exposed"?= =?UTF-8?q?=20=E2=86=92=20"or=20that=20has=20exposed"=20in=20ManagingDeplo?= =?UTF-8?q?yDaemons.rst?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit AI-Assisted-By: claude-sonnet-4-6 Signed-off-by: Anna Larch --- admin_manual/exapps_management/ManagingDeployDaemons.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/admin_manual/exapps_management/ManagingDeployDaemons.rst b/admin_manual/exapps_management/ManagingDeployDaemons.rst index a6fc6b4b560..7cef19e55ad 100644 --- a/admin_manual/exapps_management/ManagingDeployDaemons.rst +++ b/admin_manual/exapps_management/ManagingDeployDaemons.rst @@ -51,7 +51,7 @@ Usage Examples occ app_api:daemon:register harp_proxy_docker "Harp Proxy (Docker)" "docker-install" "http" "appapi-harp:8780" "http://nextcloud.local" --net nextcloud --harp --harp_frp_address "appapi-harp:8782" --harp_shared_key "some_very_secure_password" --set-default --compute_device=cuda -* Register a HaRP deploy daemon with the ``localhost`` as the host and the ``localhost:8782`` as the FRP server address. This can be paired with a HaRP container running in the host network mode or has exposed the ports ``8780`` and ``8782`` to the host. +* Register a HaRP deploy daemon with the ``localhost`` as the host and the ``localhost:8782`` as the FRP server address. This can be paired with a HaRP container running in the host network mode or that has exposed the ports ``8780`` and ``8782`` to the host. .. code-block:: bash From d20b7cdeb4bfbc6586843d214d682a60c9849cf8 Mon Sep 17 00:00:00 2001 From: Anna Larch Date: Sun, 26 Apr 2026 23:42:48 +0200 Subject: [PATCH 14/16] fix(admin): remove duplicate "see" in office/installation.rst AI-Assisted-By: claude-sonnet-4-6 Signed-off-by: Anna Larch --- admin_manual/office/installation.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/admin_manual/office/installation.rst b/admin_manual/office/installation.rst index 65dc3c38dc9..01b40c5b01c 100644 --- a/admin_manual/office/installation.rst +++ b/admin_manual/office/installation.rst @@ -9,7 +9,7 @@ Nextcloud Office is built on Collabora Online which requires a dedicated service For manual installations there are multiple options to get Nextcloud Office deployed: - **Installation through distribution packages** - There are packages for all major Linux distributions available which allow deploying a Collabora Online server through installing it through the regular package management. For an example installation guide on Ubuntu, see see: :doc:`example-ubuntu` + There are packages for all major Linux distributions available which allow deploying a Collabora Online server through installing it through the regular package management. For an example installation guide on Ubuntu, see: :doc:`example-ubuntu` .. seealso:: https://www.collaboraoffice.com/code/linux-packages/ From 6dcbde7a9cf9fdaa833e2d9ffbee2345857db48e Mon Sep 17 00:00:00 2001 From: Anna Larch Date: Sun, 26 Apr 2026 23:42:48 +0200 Subject: [PATCH 15/16] fix(admin): fix "For security reason" in office/example-docker.rst fix(admin): fix "For security reason" in office/example-docker.rst AI-Assisted-By: claude-sonnet-4-6 Signed-off-by: Anna Larch [skip ci] --- admin_manual/office/example-docker.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/admin_manual/office/example-docker.rst b/admin_manual/office/example-docker.rst index 88987831759..6f0a829e50a 100644 --- a/admin_manual/office/example-docker.rst +++ b/admin_manual/office/example-docker.rst @@ -40,7 +40,7 @@ On a recent Ubuntu or Debian this should be possible using: apt-get install apache2 a2enmod proxy proxy_wstunnel proxy_http ssl -Afterward, configure one VirtualHost properly to proxy the traffic. For security reason we recommend to use a subdomain such as office.example.com instead of running on the same domain. An example config can be found below:: +Afterward, configure one VirtualHost properly to proxy the traffic. For security reasons, we recommend using a subdomain such as office.example.com instead of running on the same domain. An example config can be found below:: ######################################## # Reverse proxy for Collabora Online From 4887928216ce3395a49de70b09d18b5df0a190f0 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Mon, 27 Apr 2026 06:12:56 +0000 Subject: [PATCH 16/16] fix(admin): fix "Used to cleaning up" in occ_command.rst ldap:show-remnants Signed-off-by: Anna Larch Co-authored-by: miaulalala <7427347+miaulalala@users.noreply.github.com> --- admin_manual/occ_command.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/admin_manual/occ_command.rst b/admin_manual/occ_command.rst index 236375c17b4..321be5e56a4 100644 --- a/admin_manual/occ_command.rst +++ b/admin_manual/occ_command.rst @@ -1417,7 +1417,7 @@ Tests user-related LDAP settings:: ldap\:show-remnants ^^^^^^^^^^^^^^^^^^^ -Used to cleaning up the LDAP mappings table, and is +Used to clean up the LDAP mappings table, and is documented in :doc:`../configuration_user/user_auth_ldap_cleanup`. .. _logging_commands_label: