diff --git a/.codespellignore b/.codespellignore new file mode 100644 index 00000000000..ac835229665 --- /dev/null +++ b/.codespellignore @@ -0,0 +1,3 @@ +SME +te +jus diff --git a/.codespellrc b/.codespellrc new file mode 100644 index 00000000000..903bfe4a1bb --- /dev/null +++ b/.codespellrc @@ -0,0 +1,4 @@ +[codespell] +skip = ./build/*,**/_build/*,*.pot,conf.py,./static/*,./admin_manual/configuration_server/config_sample_php_parameters.rst,./_shared_assets/*,./COPYING +ignore-words = .codespellignore +check-filenames = true diff --git a/.github/workflows/codespell.yml b/.github/workflows/codespell.yml new file mode 100644 index 00000000000..37a9b0d3ad2 --- /dev/null +++ b/.github/workflows/codespell.yml @@ -0,0 +1,17 @@ +name: 'Codespell' + +on: + pull_request: + push: + branches: + - master + +jobs: + codespell: + name: Check spelling + runs-on: self-hosted + steps: + - name: Check out code + uses: actions/checkout@v4 + - name: Check spelling + uses: codespell-project/actions-codespell@v2 diff --git a/README.rst b/README.rst index 266cd41b223..33d85ed94e6 100644 --- a/README.rst +++ b/README.rst @@ -170,7 +170,7 @@ Using the VSCode DevContainer This repository contains a full-featured `VSCode DevContainer `_. You can use it in your local development environment or via `GitHub Codespaces `_. Just open the container an use one of the commands from above to build the project. For example ``make`` to build the full -documentaion, ``make html`` to build the HTML documentaion or ``make pdf`` to build the PDF documentation. You can also use +documentation, ``make html`` to build the HTML documentation or ``make pdf`` to build the PDF documentation. You can also use ``make SPHINXBUILD=sphinx-autobuild html`` in combination with `port forwarding `_ to watch file changes and automatically reload the html preview. diff --git a/admin_manual/ai/app_llm2.rst b/admin_manual/ai/app_llm2.rst index 87b5fe1084b..ccce85ddcde 100644 --- a/admin_manual/ai/app_llm2.rst +++ b/admin_manual/ai/app_llm2.rst @@ -107,6 +107,6 @@ Known Limitations * Language models can be bad at reasoning tasks * Language models are likely to generate false information and should thus only be used in situations that are not critical. It's recommended to only use AI at the beginning of a creation process and not at the end, so that outputs of AI serve as a draft for example and not as final product. Always check the output of language models before using it. * Make sure to test the language model you are using it for whether it meets the use-case's quality requirements -* Language models notoriously have a high energy consumption, if you want to reduce load on your server you can choose smaller models or quantized models in excahnge for lower accuracy +* Language models notoriously have a high energy consumption, if you want to reduce load on your server you can choose smaller models or quantized models in exchange for lower accuracy * 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) * Due to technical limitations that we are in the process of mitigating, each task currently incurs a time cost of between 0 and 5 minutes in addition to the actual processing time diff --git a/admin_manual/ai/app_stt_whisper2.rst b/admin_manual/ai/app_stt_whisper2.rst index e2ceba32eec..d2444facf65 100644 --- a/admin_manual/ai/app_stt_whisper2.rst +++ b/admin_manual/ai/app_stt_whisper2.rst @@ -68,6 +68,6 @@ Known Limitations * The whisper models perform unevenly across languages, and may show lower accuracy on low-resource and/or low-discoverability languages or languages where there was less training data available. The models also exhibit disparate performance on different accents and dialects of particular languages, which may include higher word error rate across speakers of different genders, races, ages, or other demographic criteria. * Language models are likely to generate false information and should thus only be used in situations that are not critical. It's recommended to only use AI at the beginning of a creation process and not at the end, so that outputs of AI serve as a draft for example and not as final product. Always check the output of language models before using it. * Make sure to test the language model you are using it for whether it meets the use-case's quality requirements -* Language models notoriously have a high energy consumption, if you want to reduce load on your server you can choose smaller models or quantized models in excahnge for lower accuracy +* Language models notoriously have a high energy consumption, if you want to reduce load on your server you can choose smaller models or quantized models in exchange for lower accuracy * 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) * Due to technical limitations that we are in the process of mitigating, each task currently incurs a time cost of between 0 and 5 minutes in addition to the actual processing time diff --git a/admin_manual/configuration_database/db_conversion.rst b/admin_manual/configuration_database/db_conversion.rst index 6df0b2c0f98..ae99771707a 100644 --- a/admin_manual/configuration_database/db_conversion.rst +++ b/admin_manual/configuration_database/db_conversion.rst @@ -37,7 +37,7 @@ The ``occ db:convert-type`` command handles all the tasks of the conversion. The php occ db:convert-type [options] type username hostname database ``type`` should be the target database type. The same values are available here as for the ``config.php`` ``dbtype`` parameter. It should be one of: ``mysql`` for MariaDB/MySQL, -``pgsql`` for PostgresSQL, or ``oci`` for Oracle. +``pgsql`` for PostgreSQL, or ``oci`` for Oracle. The options: diff --git a/admin_manual/configuration_database/linux_database_configuration.rst b/admin_manual/configuration_database/linux_database_configuration.rst index 3879f8d6edc..0cef1e0441b 100644 --- a/admin_manual/configuration_database/linux_database_configuration.rst +++ b/admin_manual/configuration_database/linux_database_configuration.rst @@ -18,7 +18,7 @@ Requirements * Decide whether you wish to use MySQL / MariaDB, PostgreSQL, or Oracle as your database * Pick a recommendeded version of your database by checking the Nextcloud :doc:`System Requirements <../installation/system_requirements>` -* Install and set up the chosen database server software (and preferrred version) before deploying Nextcloud Server +* Install and set up the chosen database server software (and preferred version) before deploying Nextcloud Server .. note:: The steps for configuring a third party database are beyond the scope of this document. Please refer to the documentation for your specific @@ -208,7 +208,7 @@ like this: extension=pdo_pgsql.so extension=pgsql.so - [PostgresSQL] + [PostgreSQL] pgsql.allow_persistent = On pgsql.auto_reset_persistent = Off pgsql.max_persistent = -1 diff --git a/admin_manual/configuration_files/encryption_details.rst b/admin_manual/configuration_files/encryption_details.rst index 267cc4b3458..7475ec37cbb 100644 --- a/admin_manual/configuration_files/encryption_details.rst +++ b/admin_manual/configuration_files/encryption_details.rst @@ -347,7 +347,7 @@ Sources - `nextcloud-tools repository on GitHub `_ - `Nextcloud Encryption Configuration documentation `_ -- `Nextcloud Help response concering the usage of version information `_ +- `Nextcloud Help response concerning the usage of version information `_ - `Sourcecode: Creation of the Message Authentication Code `_ - `Sourcecode: Derivation of the Encryption Key `_ - `Sourcecode: Encryption of the File `_ diff --git a/admin_manual/configuration_files/external_storage_configuration_gui.rst b/admin_manual/configuration_files/external_storage_configuration_gui.rst index 246acc22dca..5c6909c38e3 100644 --- a/admin_manual/configuration_files/external_storage_configuration_gui.rst +++ b/admin_manual/configuration_files/external_storage_configuration_gui.rst @@ -93,7 +93,7 @@ individually with the following options: * Previews * Enable Sharing * Filesystem check frequency (Never, Once per direct access) -* Mac NFD Compatability +* Mac NFD Compatibility * Read Only The **Encryption** checkbox is visible only when the Encryption app is enabled. Note that server-side diff --git a/admin_manual/configuration_server/caching_configuration.rst b/admin_manual/configuration_server/caching_configuration.rst index 7cd14580c8c..07f05246a36 100644 --- a/admin_manual/configuration_server/caching_configuration.rst +++ b/admin_manual/configuration_server/caching_configuration.rst @@ -206,7 +206,7 @@ The following options are available to configure when using a redis cluster (all 'dbindex' => 0, ], -.. note:: The port is required as part of the server URL. However, it is not necesarry to list all servers: for example, if all servers are load balanced via the same DNS name, only that server name is required. +.. note:: The port is required as part of the server URL. However, it is not necessary to list all servers: for example, if all servers are load balanced via the same DNS name, only that server name is required. Connecting to single Redis server over TCP ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ diff --git a/admin_manual/configuration_server/occ_command.rst b/admin_manual/configuration_server/occ_command.rst index ccd967e1679..9aa56254f32 100644 --- a/admin_manual/configuration_server/occ_command.rst +++ b/admin_manual/configuration_server/occ_command.rst @@ -179,7 +179,7 @@ Enabling autocompletion ----------------------- .. note:: Command autocompletion currently only works if the user you use to execute the occ commands has a profile. - ``www-data`` in most cases is ``nologon`` and therefor **cannot** use this feature. + ``www-data`` in most cases is ``nologon`` and therefore **cannot** use this feature. Autocompletion is available for bash (and bash based consoles). To enable it, you have to run **one** of the following commands:: @@ -1168,7 +1168,7 @@ mimetype, run ``maintenance:mimetype:update-db --repair-filecache`` to apply the change to existing files. Run the ``maintenance:theme:update`` command if the icons of your custom theme are not -updated correctly. This updates the mimetypelist.js and cleares the image cache. +updated correctly. This updates the mimetypelist.js and clears the image cache. .. _security_commands_label: @@ -1748,7 +1748,7 @@ check for that user via the occ command:: .. note:: This is not supported by all providers. -To re-enable two-factor auth again use the following commmand:: +To re-enable two-factor auth again use the following command:: sudo -u www-data php occ twofactorauth:enable diff --git a/admin_manual/configuration_server/security_setup_warnings.rst b/admin_manual/configuration_server/security_setup_warnings.rst index a624648a9fa..d0d95e7f660 100644 --- a/admin_manual/configuration_server/security_setup_warnings.rst +++ b/admin_manual/configuration_server/security_setup_warnings.rst @@ -123,10 +123,10 @@ Some files have not passed the integrity check Please refer to the :ref:`code_signing_fix_warning_label` documentation how to debug this issue. -Your database does not run with "READ COMMITED" transaction isolation level ---------------------------------------------------------------------------- +Your database does not run with "READ COMMITTED" transaction isolation level +---------------------------------------------------------------------------- -"Your database does not run with "READ COMMITED" transaction isolation level. +"Your database does not run with "READ COMMITTED" transaction isolation level. This can cause problems when multiple actions are executed in parallel." Please refer to :ref:`db-transaction-label` how to configure your database for this requirement. diff --git a/admin_manual/configuration_user/user_auth_ldap.rst b/admin_manual/configuration_user/user_auth_ldap.rst index a8995afb71a..944d17963d5 100644 --- a/admin_manual/configuration_user/user_auth_ldap.rst +++ b/admin_manual/configuration_user/user_auth_ldap.rst @@ -709,7 +709,7 @@ Example usage:: It is also possible to set the admin group mapping using ``occ ldap:set-config $configId ldapAdminGroup $groupId``, but as the Nextcloud -group ID might not be known (yet) it is recommended (especially for automatized +group ID might not be known (yet) it is recommended (especially for automated setups) to use the `promote-group` command, that would also pull in the group and determine the group ID. diff --git a/admin_manual/file_workflows/access_control.rst b/admin_manual/file_workflows/access_control.rst index 16149c1499d..dddc6614f6e 100644 --- a/admin_manual/file_workflows/access_control.rst +++ b/admin_manual/file_workflows/access_control.rst @@ -43,7 +43,7 @@ assigned. So you just need to assign the tag to the folder or file, and then block the tag with a rule group. The check is independent of the user's permissions for -the tag. Therefor restricted and invisible tags are recommended, otherwise a +the tag. Therefore restricted and invisible tags are recommended, otherwise a user could remove and reassign the tag. This example blocks access to any folder with the tag ``Confidential``. @@ -75,7 +75,7 @@ Blocking user groups When trying to deny access to a group of users, make sure that sharing does not allow them to create a way back in. When users are able to create a public link, the users can log themselves out and visit their own public link to access the -files. Since at this point they are no user and therefor no member of the +files. Since at this point they are no user and therefore no member of the blocked group, they will be able to read and change the file. The recommended work around is to create the same rule again, and deny access @@ -87,7 +87,7 @@ External storage While access to files in external storages is not possible via Nextcloud, users that have direct access to the external storage, can of course change files -there directly. Therefor it is recommended to disable the ``Allow users to mount +there directly. Therefore it is recommended to disable the ``Allow users to mount external storage`` option, when trying to to completely lock out users. .. _available-rules-label: diff --git a/admin_manual/file_workflows/automated_tagging.rst b/admin_manual/file_workflows/automated_tagging.rst index ecbb2698f87..9ab2356c693 100644 --- a/admin_manual/file_workflows/automated_tagging.rst +++ b/admin_manual/file_workflows/automated_tagging.rst @@ -27,7 +27,7 @@ navigate to the configuration and locate the Workflow settings. In the example you can see a simple rule with only one condition. It will tag all files with the restricted tag ``Protected file`` that are uploaded into a folder that is tagged with ``Protect content``. No user can -remove the tag ``Protected file`` and therefor access control and retention +remove the tag ``Protected file`` and therefore access control and retention both work fine without users being able to work around them. In this case folder will be also tagged with tag ``Protected file``, to avoid diff --git a/admin_manual/groupware/calendar.rst b/admin_manual/groupware/calendar.rst index be7493abea0..c3aa572aac3 100644 --- a/admin_manual/groupware/calendar.rst +++ b/admin_manual/groupware/calendar.rst @@ -34,7 +34,7 @@ Reminder notifications ---------------------- Nextcloud handles sending notifications for events. -Nextcloud currently handles two types of reminder notifications: Build-in Nextcloud notifications and +Nextcloud currently handles two types of reminder notifications: Built-in Nextcloud notifications and email notifications. For the emails to be send, you'll need a configured email server. See :doc:`../configuration_server/email_configuration`. diff --git a/admin_manual/groupware/contacts.rst b/admin_manual/groupware/contacts.rst index af8dc150ed7..ab378a999f1 100644 --- a/admin_manual/groupware/contacts.rst +++ b/admin_manual/groupware/contacts.rst @@ -20,7 +20,7 @@ You can disable access to the system address book by using the app config value Run ``occ config:app:set dav system_addressbook_exposed --value="no"`` to disable access to the system address book for all users. Please note that this does not influence :ref:`Federated sharing`. -.. warning:: If clients have already connected to the CalDAV endpoint, the clients might experience sync issues after system address book access was disabled. This can often be remedied by chosing a different default address book on the client and forcing a resync. +.. warning:: If clients have already connected to the CalDAV endpoint, the clients might experience sync issues after system address book access was disabled. This can often be remedied by choosing a different default address book on the client and forcing a resync. Privacy and User Property Scopes ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ diff --git a/admin_manual/installation/example_centos.rst b/admin_manual/installation/example_centos.rst index 664ed2084d6..16f987a17c8 100644 --- a/admin_manual/installation/example_centos.rst +++ b/admin_manual/installation/example_centos.rst @@ -91,7 +91,7 @@ You have to enable the module stream for 8.2: Installing PHP and the required modules ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -Next, install the PHP modules needed for this install. Remember, because this is a limited basic install, we only install the neccessary modules, not all of them. If you are making a more complete install, please refer to PHP module list in the source installation documentation, :doc:`../installation/source_installation`:: +Next, install the PHP modules needed for this install. Remember, because this is a limited basic install, we only install the necessary modules, not all of them. If you are making a more complete install, please refer to PHP module list in the source installation documentation, :doc:`../installation/source_installation`:: dnf install -y php php-cli php-gd php-mbstring php-intl php-pecl-apcu\ php-mysqlnd php-opcache php-json php-zip diff --git a/admin_manual/installation/example_openbsd.rst b/admin_manual/installation/example_openbsd.rst index ef7bdd525e6..47bcfb96357 100644 --- a/admin_manual/installation/example_openbsd.rst +++ b/admin_manual/installation/example_openbsd.rst @@ -208,7 +208,7 @@ Since in OpenBSD httpd(8) works with a chroot(8) by default, we need to be sure Nextcloud final steps --------------------- -Now that we have all in place, you should go to your browser with your URL (I am asuming you have an SSL already installed):: +Now that we have all in place, you should go to your browser with your URL (I am assuming you have an SSL already installed):: https://domain.tld diff --git a/admin_manual/installation/harden_server.rst b/admin_manual/installation/harden_server.rst index e46930da3ac..a019868c359 100644 --- a/admin_manual/installation/harden_server.rst +++ b/admin_manual/installation/harden_server.rst @@ -236,7 +236,7 @@ security headers are shipped. Connections to remote servers ----------------------------- -Some functionalites require the Nextcloud server to be able to connect remote systems via https/443. +Some functionalities require the Nextcloud server to be able to connect remote systems via https/443. This pragraph also includes the data which is being transmitted to the Nextcloud GmbH. Depending on your server setup, these are the possible connections: diff --git a/admin_manual/installation/server_tuning.rst b/admin_manual/installation/server_tuning.rst index ea7128b3f1f..cc8d2ecf182 100644 --- a/admin_manual/installation/server_tuning.rst +++ b/admin_manual/installation/server_tuning.rst @@ -39,7 +39,7 @@ Debug Mode Verify that ``debug`` is ``false`` in your ``config.php``. The default is ``false`` in new installations (or when not specified). While similar to the DEBUG logging level, this option -also disables various optimizations (to faciliate easier debugging) and generates additional +also disables various optimizations (to facilitate easier debugging) and generates additional debug output both at the browser level and server-side. It should not be enabled in production environments outside of isolated troubleshooting situations. diff --git a/admin_manual/installation/source_installation.rst b/admin_manual/installation/source_installation.rst index 398d3c1df1d..ab562b0b059 100644 --- a/admin_manual/installation/source_installation.rst +++ b/admin_manual/installation/source_installation.rst @@ -259,7 +259,7 @@ value is often ``5``. This greatly limits simultaneously connections to your Nextcloud instance and, unless you are severely resource constraints, will underutilize your hardware. Check the :doc:`../installation/server_tuning` chapter for some guidance and resources for coming up with appropriate values, -as well as other related paramaters. +as well as other related parameters. System environment variables ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -268,7 +268,7 @@ When you are using ``php-fpm``, system environment variables like PATH, TMP or others are not automatically populated in the same way as when using ``php-cli``. A PHP call like ``getenv('PATH');`` can therefore return an empty result. So you may need to manually configure environment -variables in the appropropriate ``php-fpm`` ini/config file. +variables in the appropriate ``php-fpm`` ini/config file. Here are some example root paths for these ini/config files: diff --git a/admin_manual/maintenance/manual_upgrade.rst b/admin_manual/maintenance/manual_upgrade.rst index 88313f979b9..4a99bca44b3 100644 --- a/admin_manual/maintenance/manual_upgrade.rst +++ b/admin_manual/maintenance/manual_upgrade.rst @@ -19,7 +19,7 @@ like a lot, but detailed instructions are below. .. important:: Before upgrading, especially between major versions (e.g. v27.y.z -> v28.y.z) please review :ref:`critical changes` first. These are highlights of changes that may be required - in your environment to accomodate changes in Nextcloud Server. These notes are periodically revised as + in your environment to accommodate changes in Nextcloud Server. These notes are periodically revised as needed so it is a good idea to revisit them even when proceeding with minor and maintenance upgrades just in case. diff --git a/admin_manual/maintenance/restore.rst b/admin_manual/maintenance/restore.rst index df3a56c8b4e..f924e27d390 100644 --- a/admin_manual/maintenance/restore.rst +++ b/admin_manual/maintenance/restore.rst @@ -82,7 +82,7 @@ PostgreSQL Synchronising with clients after data recovery ---------------------------------------------- -By default the Nextcloud server is considered the authorative source for the data. +By default the Nextcloud server is considered the authoritative source for the data. If the data on the server and the client differs clients will default to fetching the data from the server. diff --git a/admin_manual/maintenance/update.rst b/admin_manual/maintenance/update.rst index 70f3a7d857b..570fb243840 100644 --- a/admin_manual/maintenance/update.rst +++ b/admin_manual/maintenance/update.rst @@ -174,7 +174,7 @@ The steps are basically the same as for the web based updater: a new update available. Go to the admin settings page and scroll to the section "Version". This section has a button to open the updater. This section as well as the update notification is only available if the update - notication app is enabled in the apps management. + notification app is enabled in the apps management. .. image:: images/updater-1-update-available.png @@ -224,7 +224,7 @@ It is possible to run the command line based updater in a non-interactive mode. The updater then doesn't ask any interactive questions. It is assumed that if an update is available it should be installed and the ``occ upgrade`` command is executed as well. After finishing the maintenance mode will be turned off -except an error occured during the ``occ upgrade`` or the replacement of the +except an error occurred during the ``occ upgrade`` or the replacement of the code. To execute this, run the command with the ``--no-interaction`` option. (i.e. diff --git a/admin_manual/maintenance/upgrade.rst b/admin_manual/maintenance/upgrade.rst index 786c5716a1c..c632ede5c6c 100644 --- a/admin_manual/maintenance/upgrade.rst +++ b/admin_manual/maintenance/upgrade.rst @@ -22,7 +22,7 @@ However some environments require the manual approach. Both approaches are cover .. important:: Before upgrading, especially between major versions (e.g. v27.y.z -> v28.y.z) please review :ref:`critical changes` first. These are highlights of changes that may be required - in your environment to accomodate changes in Nextcloud Server. These notes are periodically revised as + in your environment to accommodate changes in Nextcloud Server. These notes are periodically revised as needed so it is also a good idea to revisit them periodically, such as when proceeding with maintenance upgrades. @@ -106,7 +106,7 @@ upgrades, or for performing troubleshooting or maintenance. Please see the maintenance mode (``maintenance:mode``) or execute repair commands (``maintenance:repair``) with the ``occ`` command. -The :doc:`build-in Updater ` does this for you before replacing the +The :doc:`built-in Updater ` does this for you before replacing the existing Nextcloud code with the code of the new Nextcloud version. ``maintenance:mode`` locks the sessions of logged-in users and prevents new diff --git a/admin_manual/release_schedule.rst b/admin_manual/release_schedule.rst index d34adacfdec..5dd68ecb454 100644 --- a/admin_manual/release_schedule.rst +++ b/admin_manual/release_schedule.rst @@ -7,7 +7,7 @@ Overview Nextcloud releases multiple major versions *throughout* the year, but maintains support for *each* major version for one full year each through "lighter" maintenance updates (and regularly `backporting `_ applicable security and bug fixes). This permits a high velocity development cadence, while still giving administrators flexibility when planning deployments, upgrades, and maintenance activities. -A detailed `schedule for upcoming major and maintenance releases `_ (as well as end-of-life projections) is regularly updated to faciliate planning deployment, testing, and upgrade planning. +A detailed `schedule for upcoming major and maintenance releases `_ (as well as end-of-life projections) is regularly updated to facilitate planning deployment, testing, and upgrade planning. Whether you want the latest features and optimizations, want to help with testing, or just want to wait until everything is perfectly ready to go, you've got options with regards to which version of Nextcloud Server to initially deploy as well as how frequently to do major upgrades. diff --git a/developer_manual/app_publishing_maintenance/app_upgrade_guide/upgrade_to_20.rst b/developer_manual/app_publishing_maintenance/app_upgrade_guide/upgrade_to_20.rst index 53f67c2f0c2..f44a964e4bb 100644 --- a/developer_manual/app_publishing_maintenance/app_upgrade_guide/upgrade_to_20.rst +++ b/developer_manual/app_publishing_maintenance/app_upgrade_guide/upgrade_to_20.rst @@ -51,7 +51,7 @@ The code that initializes an app or anything that should run for every request a PSR-3 integration ^^^^^^^^^^^^^^^^^ -Nextcloud 20 is the first major release of Nextcloud that brings full compatibility with :ref:`psr3`. From this point on it is highly recommended to use this interface mainly as the old ``\OCP\ILogger`` got deprecated with the last remaining changes. The majority of methods are identical between the Nextcloud-specific interface and the PSR one. Pay attention to usages of ``\OCP\ILogger::logException`` as that method does not exist on the PSR logger. However, you can specifcy an ``exception`` key in the ``$context`` argument of any ``\Psr\Log\LoggerInterface`` method and Nextcloud will format it like it did with the old ``logException``. +Nextcloud 20 is the first major release of Nextcloud that brings full compatibility with :ref:`psr3`. From this point on it is highly recommended to use this interface mainly as the old ``\OCP\ILogger`` got deprecated with the last remaining changes. The majority of methods are identical between the Nextcloud-specific interface and the PSR one. Pay attention to usages of ``\OCP\ILogger::logException`` as that method does not exist on the PSR logger. However, you can specify an ``exception`` key in the ``$context`` argument of any ``\Psr\Log\LoggerInterface`` method and Nextcloud will format it like it did with the old ``logException``. .. _upgrade-psr11: diff --git a/developer_manual/app_publishing_maintenance/app_upgrade_guide/upgrade_to_21.rst b/developer_manual/app_publishing_maintenance/app_upgrade_guide/upgrade_to_21.rst index 93ab9f1e287..21b40ea2f5f 100644 --- a/developer_manual/app_publishing_maintenance/app_upgrade_guide/upgrade_to_21.rst +++ b/developer_manual/app_publishing_maintenance/app_upgrade_guide/upgrade_to_21.rst @@ -80,5 +80,5 @@ Nextcloud 21 is the last major release that supports an app's ``appinfo/database Replaced well-known handler API ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -There was an old, unused and inofficial mechanism to hook into well-known discovery via config settings. This includes ``host-meta``, ``host-meta.json``, ``nodeinfo`` and ``webfinger``. A :ref:`new public API replaces this mechanism` in Nextcloud 21. +There was an old, unused and unofficial mechanism to hook into well-known discovery via config settings. This includes ``host-meta``, ``host-meta.json``, ``nodeinfo`` and ``webfinger``. A :ref:`new public API replaces this mechanism` in Nextcloud 21. diff --git a/developer_manual/app_publishing_maintenance/app_upgrade_guide/upgrade_to_27.rst b/developer_manual/app_publishing_maintenance/app_upgrade_guide/upgrade_to_27.rst index 42607155906..16e0e089abd 100644 --- a/developer_manual/app_publishing_maintenance/app_upgrade_guide/upgrade_to_27.rst +++ b/developer_manual/app_publishing_maintenance/app_upgrade_guide/upgrade_to_27.rst @@ -25,12 +25,12 @@ Front-end changes General ^^^^^^^ -* With Nextcloud 27 you can also provide module javascript files with the ``.mjs`` file extension. For backwards compatibilty you can provide files with the same name but the ``.js`` file extension which will be loaded for Nextcloud versions before 27. +* With Nextcloud 27 you can also provide module javascript files with the ``.mjs`` file extension. For backwards compatibility you can provide files with the same name but the ``.js`` file extension which will be loaded for Nextcloud versions before 27. Added APIs ^^^^^^^^^^ -* A new Files Router API allows you to control the files router service and update views, querys or param without page reload. See :ref:`FilesAPI` +* A new Files Router API allows you to control the files router service and update views, queries or param without page reload. See :ref:`FilesAPI` Back-end changes ---------------- diff --git a/developer_manual/app_publishing_maintenance/app_upgrade_guide/upgrade_to_30.rst b/developer_manual/app_publishing_maintenance/app_upgrade_guide/upgrade_to_30.rst index 6f27f73c767..bb9220119df 100644 --- a/developer_manual/app_publishing_maintenance/app_upgrade_guide/upgrade_to_30.rst +++ b/developer_manual/app_publishing_maintenance/app_upgrade_guide/upgrade_to_30.rst @@ -26,7 +26,7 @@ Capabilities - ``blacklist_files_regex`` is deprecated now use ``forbidden_filenames`` instead - ``forbidden_filename_characters`` was added to provide a list of characters not allowed within filenames -- ``forbidden_filename_extensions`` was added to provide a list of extensions (suffixes) not allwed for filenames +- ``forbidden_filename_extensions`` was added to provide a list of extensions (suffixes) not allowed for filenames Front-end changes ----------------- diff --git a/developer_manual/app_publishing_maintenance/release_automation.rst b/developer_manual/app_publishing_maintenance/release_automation.rst index ecfe0c56ba6..908c682a6c1 100644 --- a/developer_manual/app_publishing_maintenance/release_automation.rst +++ b/developer_manual/app_publishing_maintenance/release_automation.rst @@ -106,8 +106,8 @@ If your repository lives within the nextcloud organization you need to use an en environment: release runs-on: ubuntu-latest -In this example we use the "release" environment, open the settings of your repository and open the "Envionments" tab, add a new environment with the name "release", make sure to activate "Required reviewers" only add the people you trust, they will be able to approve a release. -Save your rules and at the bottom add the following envionment secrets. +In this example we use the "release" environment, open the settings of your repository and open the "Environments" tab, add a new environment with the name "release", make sure to activate "Required reviewers" only add the people you trust, they will be able to approve a release. +Save your rules and at the bottom add the following environment secrets. * ``APP_PRIVATE_KEY`` your apps private key * ``APP_PUBLIC_CRT`` your apps certificate, this one could be public but for easy usage we add it as a secret @@ -127,7 +127,7 @@ Also make sure to remove ``environment: release`` . Makefile changes for code signing ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -As your certificate and your private key now are stored in environment variables you need somehow covert them to a file. +As your certificate and your private key now are stored in environment variables you need somehow convert them to a file. One example you may use is provided by the news app. .. code-block:: php diff --git a/developer_manual/app_publishing_maintenance/release_process.rst b/developer_manual/app_publishing_maintenance/release_process.rst index c13dc9e0096..74cb7a376be 100644 --- a/developer_manual/app_publishing_maintenance/release_process.rst +++ b/developer_manual/app_publishing_maintenance/release_process.rst @@ -91,7 +91,7 @@ The release process is identical to the one of a final release, only the version The updater channel defines if pre-releases are installed by the server. This setting can be found in the admin setting or in the ``config/config.php`` file. The server will install pre-releases if its update channel is set ``beta``, ``daily``, or ``git``. For all other settings, pre-releases will not be installed. -.. tip:: Don't publish the pre-releases as nightly version on the app store or Nextcloud installations won't be able to update. Releasing with any (alpha-numeric) suffix is sufficient to mark the release as not production ready and instances are still able to update to it. +.. tip:: Don't publish the pre-releases as nightly version on the app store or Nextcloud installations won't be able to update. Releasing with any (alphanumeric) suffix is sufficient to mark the release as not production ready and instances are still able to update to it. Nightly releases ~~~~~~~~~~~~~~~~ diff --git a/developer_manual/basics/events.rst b/developer_manual/basics/events.rst index 4b1f7b21138..1aa8748c9ed 100644 --- a/developer_manual/basics/events.rst +++ b/developer_manual/basics/events.rst @@ -4,7 +4,7 @@ Events ====== -Events are used to communicate between different aspects of the Nextcloud eco system. They are used in the Nextcloud server internally, for server-to-apps communcation as well as inter-app communication. +Events are used to communicate between different aspects of the Nextcloud eco system. They are used in the Nextcloud server internally, for server-to-apps communication as well as inter-app communication. Overview diff --git a/developer_manual/basics/front-end/js.rst b/developer_manual/basics/front-end/js.rst index 103f366b5e4..491b28d6fdb 100644 --- a/developer_manual/basics/front-end/js.rst +++ b/developer_manual/basics/front-end/js.rst @@ -39,7 +39,7 @@ in the appropriate controller. There is two methods to inject your JavaScript fi you will have to register a Listener in your app ``Appinfo/Application.php``. Here is an example for the Files app (which emits the ``LoadAdditionalScriptsEvent``). -For more informations about app bootstrapping, see the :ref:`application-php` section. +For more information about app bootstrapping, see the :ref:`application-php` section. .. code-block:: php diff --git a/developer_manual/basics/storage/database.rst b/developer_manual/basics/storage/database.rst index 8582031646e..4fd3f03c3f3 100644 --- a/developer_manual/basics/storage/database.rst +++ b/developer_manual/basics/storage/database.rst @@ -401,7 +401,7 @@ It makes sense to apply some general tips from the beginning, so you don't have Querying the database provider ------------------------------ -If you would like to find out which database your app is runnning on, use the ``IDBConnection::getDatabaseProvider`` method. +If you would like to find out which database your app is running on, use the ``IDBConnection::getDatabaseProvider`` method. This can be helpful in cases where specific databases have their own requirements, such as Oracle limiting ``IN``- queries to 1000 expressions. @@ -431,7 +431,7 @@ When Oracle (``oci``) is supported (also when you don't list any databases), Nex * String columns can not have a length longer than 4.000 characters, use text instead * Boolean columns can not be NotNull -Additionally we assume that Oracle support means you are interested in scaling and therefor check additional restrictions of other databases in clustered setups: +Additionally we assume that Oracle support means you are interested in scaling and therefore check additional restrictions of other databases in clustered setups: * Galera Cluster: All tables must have a primary key diff --git a/developer_manual/client_apis/RemoteWipe/index.rst b/developer_manual/client_apis/RemoteWipe/index.rst index 99d93508624..afa5b0d09bc 100644 --- a/developer_manual/client_apis/RemoteWipe/index.rst +++ b/developer_manual/client_apis/RemoteWipe/index.rst @@ -13,7 +13,7 @@ Note that wiping only works when clients use the login flow so that a dedicated Obtaining wipe status --------------------- -Once a client recieves a 401 or 403 status response it will do a fetch to :code:`/index.php/core/wipe/check` and set the +Once a client receives a 401 or 403 status response it will do a fetch to :code:`/index.php/core/wipe/check` and set the token parameter to the apptoken. .. code-block:: bash diff --git a/developer_manual/client_apis/WebDAV/basic.rst b/developer_manual/client_apis/WebDAV/basic.rst index ca5c89589cb..a57d9831cca 100644 --- a/developer_manual/client_apis/WebDAV/basic.rst +++ b/developer_manual/client_apis/WebDAV/basic.rst @@ -282,7 +282,7 @@ Supported properties +-------------------------------+-------------------------------------------------+--------------------------------------------------------------------------------------+ | | Whether ACL is enabled for this group folder. | ``1`` or ``0`` | +-------------------------------+-------------------------------------------------+--------------------------------------------------------------------------------------+ -| | Wether the current user can manager ACL. | ``1`` or ``0`` | +| | Whether the current user can manager ACL. | ``1`` or ``0`` | +-------------------------------+-------------------------------------------------+--------------------------------------------------------------------------------------+ | | Array of ACL rules. | | ```` | | | | | ``group`` | @@ -296,7 +296,7 @@ Supported properties +-------------------------------+-------------------------------------------------+--------------------------------------------------------------------------------------+ | | Numerical id of that group folder. | ``1`` | +-------------------------------+-------------------------------------------------+--------------------------------------------------------------------------------------+ -| | Wether the file is locked. | ``1`` or ``0`` | +| | Whether the file is locked. | ``1`` or ``0`` | +-------------------------------+-------------------------------------------------+--------------------------------------------------------------------------------------+ | | Type of the owner of the lock. | ``0`` = User | | | | ``1`` = Office or Text | @@ -320,7 +320,7 @@ Supported properties +-------------------------------+-------------------------------------------------+--------------------------------------------------------------------------------------+ | | The user-set label for a file. | | +-------------------------------+-------------------------------------------------+--------------------------------------------------------------------------------------+ -| | The author's id of a specified file verson. | ``admin``, ``jane``, ``thisAuthorsID`` | +| | The author's id of a specified file version. | ``admin``, ``jane``, ``thisAuthorsID`` | +-------------------------------+-------------------------------------------------+--------------------------------------------------------------------------------------+ Listing folders (rfc4918_) diff --git a/developer_manual/digging_deeper/deadlock.rst b/developer_manual/digging_deeper/deadlock.rst index 696777b822a..c9090e08a63 100644 --- a/developer_manual/digging_deeper/deadlock.rst +++ b/developer_manual/digging_deeper/deadlock.rst @@ -62,7 +62,7 @@ Retrying deadlocks ^^^^^^^^^^^^^^^^^^ In other cases it might be feasible to just retry the specific database -transactions. In this case the exception needs to be catched and the +transactions. In this case the exception needs to be caught and the transaction needs to be re-issued. It is recommended to limit the amount if retries in case the deadlock occurring regularly. In this case you may follow the next section. diff --git a/developer_manual/digging_deeper/groupware/calendar.rst b/developer_manual/digging_deeper/groupware/calendar.rst index aa5de97064f..f6ccad87e3e 100644 --- a/developer_manual/digging_deeper/groupware/calendar.rst +++ b/developer_manual/digging_deeper/groupware/calendar.rst @@ -108,7 +108,7 @@ Calendar providers ------------------- The Nextcloud groupware integration provides access to internal calendars. -It is, however, for third party apps possible to provide individual calenders. +It is, however, for third party apps possible to provide individual calendars. The section :ref:`Integration of custom calendar providers` describes on how to implement a provider within the Nextcloud server. Resources diff --git a/developer_manual/digging_deeper/javascript-apis.rst b/developer_manual/digging_deeper/javascript-apis.rst index e7e3b308a3d..f0d7ecd8e42 100644 --- a/developer_manual/digging_deeper/javascript-apis.rst +++ b/developer_manual/digging_deeper/javascript-apis.rst @@ -115,7 +115,7 @@ Events Network state changes ^^^^^^^^^^^^^^^^^^^^^ -Your app can react to lost network connectivity, e.g. to gracefully handle this state where no server interaction is possible. Since the communication with the server mostly requires a valid CSRF token, you might not want to send any request before the token was udpated. Nextcloud can notify you when this has happened. Use the ``@nextcloud/event-bus`` to listen for the ``networkOnline`` and ``networkOffline`` events: +Your app can react to lost network connectivity, e.g. to gracefully handle this state where no server interaction is possible. Since the communication with the server mostly requires a valid CSRF token, you might not want to send any request before the token was updated. Nextcloud can notify you when this has happened. Use the ``@nextcloud/event-bus`` to listen for the ``networkOnline`` and ``networkOffline`` events: .. code-block:: js diff --git a/developer_manual/digging_deeper/reference.rst b/developer_manual/digging_deeper/reference.rst index 1bd230e5cbf..52aae051508 100644 --- a/developer_manual/digging_deeper/reference.rst +++ b/developer_manual/digging_deeper/reference.rst @@ -816,7 +816,7 @@ Extending ``ADiscoverableReferenceProvider`` implies defining those methods: * ``getId``: returns an ID which will be used by the Smart Picker to identify this provider * ``getTitle``: returns a (ideally translated) provider title visible in the Smart Picker provider list -* ``getOrder``: returns an integer to help sorting the providers. The sort order is later superseeded by last usage timestamp +* ``getOrder``: returns an integer to help sorting the providers. The sort order is later superseded by last usage timestamp * ``getIconUrl``: returns the URL of the provider icon, same as the title, the icon will be visible in the provider list Declare supported Unified Search providers diff --git a/developer_manual/digging_deeper/search.rst b/developer_manual/digging_deeper/search.rst index 2cadc9d6e9f..b28ee7d469a 100644 --- a/developer_manual/digging_deeper/search.rst +++ b/developer_manual/digging_deeper/search.rst @@ -423,7 +423,7 @@ For **offset-based pagination** you return ``$query->getLimit()`` results and sp So the first call will get a cursor of ``null`` and a limit of, say, 20. So the first 20 rows are fetched. The next call will have a cursor of 20, so the 20st to 39th rows are fetched. -The downside of a offset-based pagination is that when the underlying data changes (new entries are inserted into or deleted from the database, files change), the offset might be out of sync from on request to its successor. Therefor, if possible, a true cursor-based pagination is preferable. +The downside of a offset-based pagination is that when the underlying data changes (new entries are inserted into or deleted from the database, files change), the offset might be out of sync from on request to its successor. Therefore, if possible, a true cursor-based pagination is preferable. For a **cursor-based pagination** a app-specific property is used to know a reference to the last element of the previous search request. The presumption of this algorithm is that the result set is sorted by an attribute and this attribute is an ``int`` or ``string``. The attribute value of the last element in the result page determines the cursor for the next search request. Again, a small example shall demonstrate how this works. diff --git a/developer_manual/digging_deeper/settings.rst b/developer_manual/digging_deeper/settings.rst index 53180f3a5aa..319f606fa2f 100644 --- a/developer_manual/digging_deeper/settings.rst +++ b/developer_manual/digging_deeper/settings.rst @@ -26,7 +26,7 @@ For the settings to show up, three things are necessary: 2. A template 3. The implementing class specified in the app's info.xml -Below is an example of an implementor of the ISettings interface. It is based +Below is an example of an implementer of the ISettings interface. It is based on the survey_client solution. .. code-block:: php @@ -200,7 +200,7 @@ Then, the implementing class should be added to the info.xml. Settings will be registered upon installation and update. When settings are added to an existing, installed, and enabled app, it should be made sure that the version is increased so Nextcloud can register the class. It is only possible to register -one ISettings implementor. +one ISettings implementer. For a more complex example using embedded templates have a look at the implementation of the **user_ldap** app. diff --git a/developer_manual/digging_deeper/task_processing.rst b/developer_manual/digging_deeper/task_processing.rst index e9a60799d92..f6518cc375a 100644 --- a/developer_manual/digging_deeper/task_processing.rst +++ b/developer_manual/digging_deeper/task_processing.rst @@ -6,7 +6,7 @@ Task Processing .. versionadded:: 30.0.0 -Nextcloud offers a **Task Processing** API which replaces the previously introduced :ref:`Text Processing`, :ref:`TextToImage` and :ref:`Speech-To-Text` APIs. The overall idea is that there is a central OCP API that apps can use to schedule all kinds of tasks (mainly inteded for AI tasks). To be technology agnostic any other app can provide this task functionality by registering Task Processing providers for specific Task types. +Nextcloud offers a **Task Processing** API which replaces the previously introduced :ref:`Text Processing`, :ref:`TextToImage` and :ref:`Speech-To-Text` APIs. The overall idea is that there is a central OCP API that apps can use to schedule all kinds of tasks (mainly intended for AI tasks). To be technology agnostic any other app can provide this task functionality by registering Task Processing providers for specific Task types. Consuming the Task Processing API --------------------------------- @@ -110,7 +110,7 @@ For example the TextToImage type defines its input shape as follows: The task input and output are always represented by an associative array. In this case, the task input for TextToImage must have an array key named ``'input'`` which must contain a text and an array key named ``'numberOfImages'`` which must contain a number. -If you want to simply use a task type, you can look up it's input and output shapes above or, if it is not built-in, in the documentation or implementation of the app introducing the task type. If you would like to use task types dynamically without knowing their shapes in advance, you can get their shape information from the ``IManager#getAvailableTaskTypes()`` menthod. The ShapeDescriptor class allows accessing the type data as well as human readable name and description using the ``getName()``, ``getDescription()`` and ``getShapeType()`` methods. +If you want to simply use a task type, you can look up it's input and output shapes above or, if it is not built-in, in the documentation or implementation of the app introducing the task type. If you would like to use task types dynamically without knowing their shapes in advance, you can get their shape information from the ``IManager#getAvailableTaskTypes()`` method. The ShapeDescriptor class allows accessing the type data as well as human readable name and description using the ``getName()``, ``getDescription()`` and ``getShapeType()`` methods. Shape types ~~~~~~~~~~~ diff --git a/developer_manual/digging_deeper/translation.rst b/developer_manual/digging_deeper/translation.rst index ae85de54eb5..f7690fa0348 100644 --- a/developer_manual/digging_deeper/translation.rst +++ b/developer_manual/digging_deeper/translation.rst @@ -14,7 +14,7 @@ Consuming the Translation API To consume the Translation API, you will need to :ref:`inject` ``\OCP\Translation\ITranslationManager``. This manager offers the following methods: * ``hasProviders()`` This method returns a boolean which indicates if any providers have been registered. If this is false you cannot use the Translation feature. - * ``getLanguages()`` This method returns a list of ``OCP\Translation\LanguageTuple`` Objects which indicate which langauge pairs are currently supported for translation. + * ``getLanguages()`` This method returns a list of ``OCP\Translation\LanguageTuple`` Objects which indicate which language pairs are currently supported for translation. * ``translate(string $text, ?string $fromLanguage, string $toLanguage)`` This method provides the actual translation functionality. Note that, depending on the length of the text you want to translate, this may take longer than the HTTP request timeout or the PHP execution time limit. * ``canDetectLanguage()`` This method returns a boolean indicating whether language auto-detection is possible. If this is true, you can pass ``null`` as a ``$fromLanguage`` parameter to ``translate`` and it will automatically figure out the source language. diff --git a/developer_manual/getting_started/codingguidelines.rst b/developer_manual/getting_started/codingguidelines.rst index 7cf588db5a1..b453463a00a 100644 --- a/developer_manual/getting_started/codingguidelines.rst +++ b/developer_manual/getting_started/codingguidelines.rst @@ -85,7 +85,7 @@ In order to do so there are two options: * If no generic header is present, you can add yourself with a copyright line as described above. As a rule of thumb, this is the case if you contributed more than seven lines of code. An example of a generic license header where adding yourself to the AUTHORS.md -file is prefered please see the example below +file is preferred please see the example below .. code-block:: php diff --git a/user_manual/groupware/contacts.rst b/user_manual/groupware/contacts.rst index e6493ef9578..599e6992038 100644 --- a/user_manual/groupware/contacts.rst +++ b/user_manual/groupware/contacts.rst @@ -131,7 +131,7 @@ with iOS, macOS, Thunderbird and other CardDAV clients. Circles ------- -Informal collaboration takes place within organizations: an event to organize for a few weeks, a short ideation session between members from differents entities, workshops, a place to joke around and support team building, or simply in very organic organizations where formal structure is kept to a minimum. +Informal collaboration takes place within organizations: an event to organize for a few weeks, a short ideation session between members from different entities, workshops, a place to joke around and support team building, or simply in very organic organizations where formal structure is kept to a minimum. For all these reasons, Nextcloud supports Circles, a feature embedded in the Contacts app, where every user is able to create its own circle, a user-defined aggregate of accounts. Circles can be used later on to share files and folders, added to Talk conversations, like a regular group. diff --git a/user_manual/groupware/mail.rst b/user_manual/groupware/mail.rst index e46cf0f1678..eebbffe4742 100644 --- a/user_manual/groupware/mail.rst +++ b/user_manual/groupware/mail.rst @@ -104,7 +104,7 @@ To enable it: .. warning:: If you want to also enable it for unified mailboxes you have to do so in Mail settings -By enabling it the main search box will now search in both subjects and mail bodies, and a sperate *Body* option +By enabling it the main search box will now search in both subjects and mail bodies, and a separate *Body* option will appear in advanced search. Account delegation @@ -161,7 +161,7 @@ Outbox When a message has been composed and the "Send" button was clicked, the message is added to the outbox which can be found in the bottom left corner of the left sidebar. -You can also set the date and time for the send operation to a point in the future (see :ref:`Scheduled messages `)- the message will be kept in the outbox until your choosen date and time arrives, then it will be sent automatically. +You can also set the date and time for the send operation to a point in the future (see :ref:`Scheduled messages `)- the message will be kept in the outbox until your chosen date and time arrives, then it will be sent automatically. The outbox is only visible when there is a message waiting to be handled by the outbox. diff --git a/user_manual/groupware/sync_android.rst b/user_manual/groupware/sync_android.rst index 509d4758fb6..1a9282fa4df 100644 --- a/user_manual/groupware/sync_android.rst +++ b/user_manual/groupware/sync_android.rst @@ -69,11 +69,11 @@ steps are required: .. note:: Enter your email address as DAVx⁵ account name (mandatory if you want to be able to send calendar invitation). If your email address is registered in your Nextcloud preferences and you have set up your - account using the Nextcloud mobile app, this all should be aready the case. + account using the Nextcloud mobile app, this all should be already the case. .. note:: Using user name and password will not work if 2-Factor-Authentication - is enabed and will throw a generic "Unknown resource" error. + is enabled and will throw a generic "Unknown resource" error. Use a dedicated App password instead. diff --git a/user_manual/groupware/sync_gnome.rst b/user_manual/groupware/sync_gnome.rst index 38c92eb83b3..3070b5dd380 100644 --- a/user_manual/groupware/sync_gnome.rst +++ b/user_manual/groupware/sync_gnome.rst @@ -13,7 +13,7 @@ This can be done by following these steps: .. image:: ../images/gnome-online-accounts.png #. Enter your server URL, username, and password. - If you have enabled two-factor authentification (2FA), you need to generate an application password/token, because GNOME Online Accounts + If you have enabled two-factor authentication (2FA), you need to generate an application password/token, because GNOME Online Accounts `doesn't support Nextcloud's WebFlow login yet `_ (`Learn more `_): diff --git a/user_manual/groupware/sync_kde.rst b/user_manual/groupware/sync_kde.rst index 4ea0ffb4700..a3b42eb4fb1 100644 --- a/user_manual/groupware/sync_kde.rst +++ b/user_manual/groupware/sync_kde.rst @@ -38,7 +38,7 @@ In KOrganizer and Kalendar: .. image:: ../images/KOrganizer_groupware_server.png -5. Enter your Nextcloud server URL and, if needed, installation path (anything that comes after the first /, for example ``mynextcloud`` in ``https://exampe.com/mynextcloud``). Then click next: +5. Enter your Nextcloud server URL and, if needed, installation path (anything that comes after the first /, for example ``mynextcloud`` in ``https://example.com/mynextcloud``). Then click next: .. image:: ../images/KOrganizer_server_address.png diff --git a/user_manual/userpreferences.rst b/user_manual/userpreferences.rst index e37a4176db4..cfe7b2aa52c 100644 --- a/user_manual/userpreferences.rst +++ b/user_manual/userpreferences.rst @@ -61,7 +61,7 @@ next to each entry: If you set your data to **Private**, nobody but you will be able to see it. -If you set your data to **Local**, all logged in users within your Nextcloud instance will be able to see the information, but noone outside of it. +If you set your data to **Local**, all logged in users within your Nextcloud instance will be able to see the information, but no one outside of it. If you set your data to **Federated**, the trusted server(s) which are added by your administrator will be able to see this data, in addition to all logged in users.