diff --git a/conf/extra_php-fpm.conf b/conf/extra_php-fpm.conf index feee90b..fd92447 100644 --- a/conf/extra_php-fpm.conf +++ b/conf/extra_php-fpm.conf @@ -14,7 +14,7 @@ php_value[opcache.interned_strings_buffer]=32 php_value[opcache.max_accelerated_files]=10000 php_value[opcache.memory_consumption]=128 php_value[opcache.save_comments]=1 -php_value[opcache.revalidate_freq]=1 +php_value[opcache.revalidate_freq]=60 ; https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/caching_configuration.html#id1 php_value[apc.enabled]=1 php_value[apc.enable_cli]=1 diff --git a/conf/nginx.conf b/conf/nginx.conf index d09ac20..1750d6a 100644 --- a/conf/nginx.conf +++ b/conf/nginx.conf @@ -9,7 +9,7 @@ location ^~ /.well-known { location = /.well-known/carddav { return 301 __PATH__/remote.php/dav/; } location = /.well-known/caldav { return 301 __PATH__/remote.php/dav/; } - location = /.well-known/webfinger { return 301 __PATH__/index.php$uri; } + location = /.well-known/webfinger { return 301 __PATH__/index.php$request_uri; } location = /.well-known/nodeinfo { return 301 __PATH__/index.php$uri; } # Let Nextcloud's API for `/.well-known` URIs handle all other diff --git a/doc/ADMIN.md b/doc/ADMIN.md index ef43357..0f1d6a1 100644 --- a/doc/ADMIN.md +++ b/doc/ADMIN.md @@ -6,16 +6,14 @@ or use `sudo yunohost app shell __APP__` then run `php occ ...` ### Configure ONLYOFFICE integration -#### With Nextcloud App (no ARM support, lower performance) +#### With YunoHost App (ARM64 support, better performance) + +For better performance and ARM64 support (Raspberry Pi, OLinuXino...), install ONLYOFFICE YunoHost App and connect it to Nextcloud, see the tutorial in the [doc of onlyoffice_ynh package](https://github.com/YunoHost-Apps/onlyoffice_ynh/blob/master/README_fr.md#configuration-de-onlyoffice-server) + +#### Alternative: With Nextcloud App (no ARM support, lower performance) Nextcloud features a direct integration of ONLYOFFICE (an online rich text document editor) through a Nextcloud app. To install and configure it: - Install *Community Document Server* application in your Nextcloud. That's the part that runs ONLYOFFICE server. - Install *ONLYOFFICE* application. That's the client part that will connect to an ONLYOFFICE server. - Then in Settings -> ONLYOFFICE (`https://__DOMAIN____PATH__/settings/admin/onlyoffice`), if you want to configure which file formats should be opened by ONLYOFFICE. - -*NB: ONLYOFFICE Nextcloud App is only available for x86 architecture - for **ARM** architecture (Raspberry Pi, OLinuXino...), consider the YunoHost App below* - -#### With YunoHost App (ARM64 support, better performance) - -For better performance and ARM64 support, install ONLYOFFICE YunoHost App and connect it to Nextcloud, see the tutorial in the [doc of onlyoffice_ynh package](https://github.com/YunoHost-Apps/onlyoffice_ynh/blob/master/README_fr.md#configuration-de-onlyoffice-server) diff --git a/doc/ADMIN_fr.md b/doc/ADMIN_fr.md index c617ce3..3a691ba 100644 --- a/doc/ADMIN_fr.md +++ b/doc/ADMIN_fr.md @@ -6,7 +6,11 @@ ou utilisez `sudo yunohost app shell __APP__` puis `php occ ...` ### Configurer l'intégration d'ONLYOFFICE -#### Avec l'application Nextcloud (pas de support ARM, performances limitées) +#### Avec l'application YunoHost (support ARM64, meilleures performances) + +Pour de meilleures performances et le support de ARM64 (Raspberry Pi, OLinuXino...), installez l'app YunoHost ONLYOFFICE, voir le tutoriel dans la [doc du paquet onlyoffice_ynh](https://github.com/YunoHost-Apps/onlyoffice_ynh/blob/master/README_fr.md#configuration-de-onlyoffice-server) + +#### Alternative: Avec l'application Nextcloud (pas de support ARM, performances limitées) Nextcloud inclut une intégration directe de ONLYOFFICE (un éditeur de texte enrichi en ligne) via une application Nextcloud. Pour l'installer et la configurer : @@ -14,8 +18,4 @@ Pour l'installer et la configurer : - Installez l'application *ONLYOFFICE*. C'est la partie cliente qui va se connecter au serveur ONLYOFFICE. - Ensuite dans les Paramètres -> ONLYOFFICE (`https://__DOMAIN____PATH__/settings/admin/onlyoffice`), si vous voulez configurer quels formats de fichier s'ouvrent avec ONLYOFFICE. -*NB : l'app Nextcloud ONLYOFFICE Community Document Server n'est disponible que sous architecture x86 - Pour un support de l'architecture **ARM** (Raspberry Pi, OLinuXino...), installez plutôt l'App YunoHost, voir ci-dessous* - -#### Avec l'application YunoHost (support ARM64, meilleures performances) - -Pour de meilleures performances et le support de ARM64, installez l'app YunoHost ONLYOFFICE, voir le tutoriel dans la [doc du paquet onlyoffice_ynh](https://github.com/YunoHost-Apps/onlyoffice_ynh/blob/master/README_fr.md#configuration-de-onlyoffice-server) +*NB : l'app Nextcloud ONLYOFFICE Community Document Server n'est disponible que sous architecture x86 diff --git a/doc/POST_UPGRADE.md b/doc/POST_UPGRADE.md index 7da1480..b0a56e5 100644 --- a/doc/POST_UPGRADE.md +++ b/doc/POST_UPGRADE.md @@ -1 +1 @@ -Note that if you've installed some third-parties Nextcloud applications, they are probably disabled and you'll have to manually enable them again. \ No newline at end of file +Note that if you've installed any third-party Nextcloud applications, they have probably been disabled. If so, you'll need to manually enable them again. diff --git a/scripts/change_url b/scripts/change_url index 0d8a142..6da4c8d 100644 --- a/scripts/change_url +++ b/scripts/change_url @@ -33,7 +33,7 @@ then exec_occ config:system:set trusted_domains 1 --value=$new_domain # Change hostname for activity notifications - exec_occ config:system:set overwrite.cli.url --value="https://${new_domain}" + exec_occ config:system:set overwrite.cli.url --value="https://${new_domain}${new_path}" fi if [ $change_domain -eq 1 ] @@ -49,6 +49,14 @@ then fi fi +#================================================= +# SETUP SSOWAT +#================================================= +ynh_script_progression --message="Configuring permissions..." + +# Temporary fix for the API permission +ynh_permission_url --permission="api" --url="re:$new_domain\/.well-known\/.*" --auth_header="false" --clear_urls + #================================================= # END OF SCRIPT #================================================= diff --git a/scripts/install b/scripts/install index 7c9933d..a281fa9 100755 --- a/scripts/install +++ b/scripts/install @@ -160,10 +160,10 @@ exec_occ ldap:test-config '' \ # Define a function to add an external storage # Create the external storage for the given folders and enable sharing create_external_storage() { - local datadir="$1" + local mount_dir="$1" local mount_name="$2" local mount_id=`exec_occ files_external:create --output=json \ - "$mount_name" 'local' 'null::null' -c "datadir=$data_dir/data" || true` + "$mount_name" 'local' 'null::null' -c "datadir=$mount_dir" || true` ! [[ $mount_id =~ ^[0-9]+$ ]] \ && ynh_print_warn --message="Unable to create external storage" \ || exec_occ files_external:option "$mount_id" enable_sharing true @@ -199,7 +199,7 @@ exec_occ config:system:get logout_url >/dev/null 2>&1 \ # CHANGE HOSTNAME FOR ACTIVITY NOTIFICATIONS #================================================= -exec_occ config:system:set overwrite.cli.url --value="https://${domain}" +exec_occ config:system:set overwrite.cli.url --value="https://${domain}${path}" #================================================= # REMOVE THE TEMPORARY ADMIN AND SET THE TRUE ONE diff --git a/scripts/upgrade b/scripts/upgrade index 0caf004..15e6f04 100755 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -119,8 +119,8 @@ exec_occ() { fi if ! timeout 1 php$NEXTCLOUD_PHP_VERSION &>/dev/null; then local pkg_dependencies="$(dpkg-query --show --showformat='${Depends}' ${app}-ynh-deps)" - pkg_dependencies="${pkg_dependencies/$phpversion/$NEXTCLOUD_PHP_VERSION}" - ynh_install_app_dependencies "$pkg_dependencies" > /dev/null + pkg_dependencies="${pkg_dependencies//$phpversion/$NEXTCLOUD_PHP_VERSION}" + ynh_install_app_dependencies "$pkg_dependencies" fi (cd "$install_dir" && ynh_exec_as "$app" \ php$NEXTCLOUD_PHP_VERSION --define apc.enable_cli=1 occ --no-interaction --no-ansi "$@") @@ -129,10 +129,10 @@ exec_occ() { # Define a function to add an external storage # Create the external storage for the given folders and enable sharing create_external_storage() { -local datadir="$1" +local mount_dir="$1" local mount_name="$2" local mount_id=$(exec_occ files_external:create --output=json \ - "$mount_name" 'local' 'null::null' -c "datadir=$data_dir/data" || true) + "$mount_name" 'local' 'null::null' -c "datadir=$mount_dir" || true) ! [[ $mount_id =~ ^[0-9]+$ ]] \ && ynh_print_warn --message="Unable to create external storage" \ || exec_occ files_external:option "$mount_id" enable_sharing true @@ -317,7 +317,7 @@ EOF # CHANGE HOSTNAME FOR ACTIVITY NOTIFICATIONS #================================================= - exec_occ config:system:set overwrite.cli.url --value="https://${domain}" + exec_occ config:system:set overwrite.cli.url --value="https://${domain}${path}" #================================================= # MOUNT HOME FOLDERS AS EXTERNAL STORAGE