diff --git a/apk/nextcloud/APKBUILD b/apk/nextcloud/APKBUILD index e934137..675586d 100644 --- a/apk/nextcloud/APKBUILD +++ b/apk/nextcloud/APKBUILD @@ -1,8 +1,8 @@ # Maintainer: Leonardo Arena # Contributor: Jakub Jirutka pkgname=nextcloud -pkgver=14.0.12 -pkgrel=0 +pkgver=14.0.14 +pkgrel=1 pkgdesc="A safe home for all your data" url="http://nextcloud.com" arch="noarch" @@ -226,8 +226,7 @@ _package_app() { mv "$pkgdir"/$_appsdir/$appname "$subpkgdir"/$_appsdir/ } -sha512sums=" -4b9cb1202939ea2f7fa6d31bdcf4c2fdc1dc4606f9cea0fe791be130909d5b7e9c4e102b86ca14d3c928f26bdae9615fca57104e07bda66d2f916e1e67759416 nextcloud-14.0.12.zip +sha512sums="e288a65dfad30ac8bd36c96de2b2b9a823c7019655467b2246e953c06079eea3b43b6d969915ba11d1aa313025610cc94fb0216368235257195312ffdd7c7f78 nextcloud-14.0.14.zip 63690b8d8ffe6d4896c5b666aa9d493b501aa3e171c6557e7a003599049f0d36f266a2a257a9535dea055bca1e84208b219c6cd5e4ecd70dd064e1dd1007203a nextcloud14-dont-chmod.patch aef3c92497d738d6968e0f0b0d415b4953500db24ae14af41ef972665cf7eff00cb6c53dc953845fdbb389c3c965a75b8b14b9247513c05cf4130fe1cfc61731 dont-update-htaccess.patch d2100a837fef1eeae5f706650ab4c985d9e00f61efa5526ef76c7c1f5811c3906eb6c3c13c151eff9677a0c303faab64411a5a84d6792728bc520d2c618d7d5b disable-integrity-check-as-default.patch diff --git a/apk/nextcloud/app-encryption-info-add-mcrypt.patch b/apk/nextcloud/app-encryption-info-add-mcrypt.patch deleted file mode 100644 index 025dee9..0000000 --- a/apk/nextcloud/app-encryption-info-add-mcrypt.patch +++ /dev/null @@ -1,14 +0,0 @@ -mcrypt is not required, but it's recommended to increase file encryption -performance. We're adding it to info.xml just to simplify abuild (all app -dependencies can be read in info.xml). - ---- a/apps/encryption/appinfo/info.xml -+++ b/apps/encryption/appinfo/info.xml -@@ -31,6 +31,7 @@ - - - openssl -+ mcrypt - - - diff --git a/apk/nextcloud/disable-integrity-check-as-default.patch b/apk/nextcloud/disable-integrity-check-as-default.patch deleted file mode 100644 index 54ea7a5..0000000 --- a/apk/nextcloud/disable-integrity-check-as-default.patch +++ /dev/null @@ -1,15 +0,0 @@ -We patch some files and Nextcloud's integrity check doesn't like it... -APK ensures integrity of all installed files, so this Nextcloud's integrity -check doesn't add any value. - ---- a/lib/private/IntegrityCheck/Checker.php -+++ b/lib/private/IntegrityCheck/Checker.php -@@ -111,7 +111,7 @@ - */ - $isIntegrityCheckDisabled = false; - if ($this->config !== null) { -- $isIntegrityCheckDisabled = $this->config->getSystemValue('integrity.check.disabled', false); -+ $isIntegrityCheckDisabled = $this->config->getSystemValue('integrity.check.disabled', true); - } - if ($isIntegrityCheckDisabled === true) { - return false; diff --git a/apk/nextcloud/dont-update-htaccess.patch b/apk/nextcloud/dont-update-htaccess.patch deleted file mode 100644 index aecaebc..0000000 --- a/apk/nextcloud/dont-update-htaccess.patch +++ /dev/null @@ -1,32 +0,0 @@ -Don't mess with .htaccess files. - -Patch ported from https://src.fedoraproject.org/cgit/rpms/nextcloud.git/tree/nextcloud-9.1.0-dont_update_htacess.patch - ---- a/core/register_command.php -+++ b/core/register_command.php -@@ -135,7 +135,6 @@ - $application->add(new OC\Core\Command\Maintenance\Mimetype\UpdateDB(\OC::$server->getMimeTypeDetector(), \OC::$server->getMimeTypeLoader())); - $application->add(new OC\Core\Command\Maintenance\Mimetype\UpdateJS(\OC::$server->getMimeTypeDetector())); - $application->add(new OC\Core\Command\Maintenance\Mode(\OC::$server->getConfig())); -- $application->add(new OC\Core\Command\Maintenance\UpdateHtaccess()); - $application->add(new OC\Core\Command\Maintenance\UpdateTheme(\OC::$server->getMimeTypeDetector(), \OC::$server->getMemCacheFactory())); - - $application->add(new OC\Core\Command\Upgrade(\OC::$server->getConfig(), \OC::$server->getLogger(), \OC::$server->query(\OC\Installer::class))); - ---- a/lib/private/Updater.php -+++ b/lib/private/Updater.php -@@ -233,14 +233,6 @@ - throw new \Exception('Updates between multiple major versions and downgrades are unsupported.'); - } - -- // Update .htaccess files -- try { -- Setup::updateHtaccess(); -- Setup::protectDataDirectory(); -- } catch (\Exception $e) { -- throw new \Exception($e->getMessage()); -- } -- - // create empty file in data dir, so we can later find - // out that this is indeed an ownCloud data directory - // (in case it didn't exist before) diff --git a/apk/nextcloud/fpm-pool.conf b/apk/nextcloud/fpm-pool.conf deleted file mode 100644 index 69fef6e..0000000 --- a/apk/nextcloud/fpm-pool.conf +++ /dev/null @@ -1,197 +0,0 @@ -[global] -; Error log file -; Default Value: log/php-fpm.log -error_log = /var/log/nextcloud/php-fpm.log - -; Log level -; Possible Values: alert, error, warning, notice, debug -; Default Value: notice -log_level = warning - -; If this number of child processes exit with SIGSEGV or SIGBUS within the time -; interval set by emergency_restart_interval then FPM will restart. A value -; of '0' means 'Off'. -; Default Value: 0 -emergency_restart_threshold = 10 - -; Interval of time used by emergency_restart_interval to determine when -; a graceful restart will be initiated. This can be useful to work around -; accidental corruptions in an accelerator's shared memory. -; Available Units: s(econds), m(inutes), h(ours), or d(ays) -; Default Unit: seconds -; Default Value: 0 -emergency_restart_interval = 1m - -; Time limit for child processes to wait for a reaction on signals from master. -; Available units: s(econds), m(inutes), h(ours), or d(ays) -; Default Unit: seconds -; Default Value: 0 -process_control_timeout = 10s - - -[nextcloud] -; The address on which to accept FastCGI requests. -; Valid syntaxes are: -; 'ip.add.re.ss:port' - to listen on a TCP socket to a specific address on -; a specific port; -; 'port' - to listen on a TCP socket to all addresses on a -; specific port; -; '/path/to/unix/socket' - to listen on a unix socket (the path is *not* -; relative to chroot!) -; Note: This value is mandatory. -listen = /run/nextcloud/fastcgi.sock - -; Set permissions for unix socket, if one is used. In Linux, read/write -; permissions must be set in order to allow connections from a web server. Many -; BSD-derived systems allow connections regardless of permissions. -; Default Values: user and group are set as the running user -; mode is set to 0666 -listen.mode = 0660 - -; Choose how the process manager will control the number of child processes. -; Possible Values: -; static ... a fixed number of child processes. -; dynamic ... the number of child processes are set dynamically. -; ondemand ... no children are created at startup; children will be forked -; when new requests will connect. -; Note: This value is mandatory. -pm = ondemand - -; The number of child processes to be created when pm is set to 'static' and the -; maximum number of child processes when pm is set to 'dynamic' or 'ondemand'. -; This value sets the limit on the number of simultaneous requests that will be -; served. -; Note: Used when pm is set to 'static', 'dynamic' or 'ondemand' -; Note: This value is mandatory. -pm.max_children = 10 - -; The number of seconds after which an idle process will be killed. -; Note: Used only when pm is set to 'ondemand' -; Default Value: 10s -pm.process_idle_timeout = 120s - -; The number of requests each child process should execute before respawning. -; This can be useful to work around memory leaks in 3rd party libraries. For -; endless request processing specify '0'. Equivalent to PHP_FCGI_MAX_REQUESTS. -; Default Value: 0 -pm.max_requests = 500 - -; The URI to view the FPM status page. If this value is not set, no URI will be -; recognized as a status page. -; Note: The value must start with a leading slash (/). The value can be -; anything, but it may not be a good idea to use the .php extension or it -; may conflict with a real PHP file. -; Default Value: not set -pm.status_path = - -; The ping URI to call the monitoring page of FPM. If this value is not set, no -; URI will be recognized as a ping page. This could be used to test from outside -; that FPM is alive and responding, or to -; - create a graph of FPM availability (rrd or such); -; - remove a server from a group if it is not responding (load balancing); -; - trigger alerts for the operating team (24/7). -; Note: The value must start with a leading slash (/). The value can be -; anything, but it may not be a good idea to use the .php extension or it -; may conflict with a real PHP file. -; Default Value: not set -ping.path = /ping - -; The timeout for serving a single request after which the worker process will -; be killed. This option should be used when the 'max_execution_time' ini option -; does not stop script execution for some reason. A value of '0' means 'off'. -; Available units: s(econds)(default), m(inutes), h(ours), or d(ays) -; Default Value: 0 -;request_terminate_timeout = 0 - -; The timeout for serving a single request after which a PHP backtrace will be -; dumped to the 'slowlog' file. A value of '0s' means 'off'. -; Available units: s(econds)(default), m(inutes), h(ours), or d(ays) -; Default Value: 0 -;request_slowlog_timeout = 0 - -; The log file for slow requests -; Default Value: not set -; Note: slowlog is mandatory if request_slowlog_timeout is set -; Note: the path is *not* relative to chroot. -;slowlog = /var/log/nextcloud/php-fpm.slow.log - -; Redirect worker stdout and stderr into main error log. If not set, stdout and -; stderr will be redirected to /dev/null according to FastCGI specs. -; Note: on highloaded environement, this can cause some delay in the page -; process time (several ms). -; Default Value: no -;catch_workers_output = yes - -; Pass environment variables like LD_LIBRARY_PATH. All $VARIABLEs are taken from -; the current environment. -; Default Value: clean env -env[PATH] = /usr/local/bin:/usr/bin:/bin -env[TMP] = /tmp -env[TMPDIR] = /tmp -env[TEMP] = /tmp - -; Additional php.ini defines, specific to this pool of workers. These settings -; overwrite the values previously defined in the php.ini. The directives are the -; same as the PHP SAPI: -; php_value/php_flag - you can set classic ini defines which can -; be overwritten from PHP call 'ini_set'. -; php_admin_value/php_admin_flag - these directives won't be overwritten by -; PHP call 'ini_set' -; For php_*flag, valid values are on, off, 1, 0, true, false, yes or no. -; -; Defining 'extension' will load the corresponding shared extension from -; extension_dir. Defining 'disable_functions' or 'disable_classes' will not -; overwrite previously defined php.ini values, but will append the new value -; instead. -; -; Note: path INI options can be relative and will be expanded with the prefix -; (pool, global or /usr/lib/php7.x) - -; Allow HTTP file uploads. -php_admin_flag[file_uploads] = true - -; Maximal size of a file that can be uploaded via web interface. -php_admin_value[memory_limit] = 512M -php_admin_value[post_max_size] = 513M -php_admin_value[upload_max_filesize] = 513M - -; Where to store temporary files. -php_admin_value[session.save_path] = /var/tmp/nextcloud -php_admin_value[sys_temp_dir] = /var/tmp/nextcloud -php_admin_value[upload_tmp_dir] = /var/tmp/nextcloud - -; Log errors to specified file. -php_admin_flag[log_errors] = on -php_admin_value[error_log] = /var/log/nextcloud/php.error.log - -; OPcache error_log file name. Empty string assumes "stderr" -php_admin_value[opcache.error_log] = /var/log/nextcloud/php.error.log - -; Output buffering is a mechanism for controlling how much output data -; (excluding headers and cookies) PHP should keep internally before pushing that -; data to the client. If your application's output exceeds this setting, PHP -; will send that data in chunks of roughly the size you specify. -; This must be disabled for ownCloud. -php_admin_flag[output_buffering] = false - -; Overload(replace) single byte functions by mbstring functions. -; This must be disabled for ownCloud. -php_admin_flag[mbstring.func_overload] = false - -; Never populate the $HTTP_RAW_POST_DATA variable. -; http://php.net/always-populate-raw-post-data -php_admin_value[always_populate_raw_post_data] = -1 - -; Disable certain functions for security reasons. -; http://php.net/disable-functions -php_admin_value[disable_functions] = exec,passthru,shell_exec,system,proc_open,curl_multi_exec,show_source - -; Set recommended settings for OpCache. -; https://docs.nextcloud.com/server/13/admin_manual/configuration_server/server_tuning.html#enable-php-opcache -php_admin_flag[opcache.enable] = true -php_admin_flag[opcache.enable_cli] = true -php_admin_flag[opcache.save_comments] = true -php_admin_value[opcache.interned_strings_buffer] = 8 -php_admin_value[opcache.max_accelerated_files] = 10000 -php_admin_value[opcache.memory_consumption] = 128 -php_admin_value[opcache.revalidate_freq] = 1 diff --git a/apk/nextcloud/iconv-ascii-translit-not-supported.patch b/apk/nextcloud/iconv-ascii-translit-not-supported.patch deleted file mode 100644 index bb13a95..0000000 --- a/apk/nextcloud/iconv-ascii-translit-not-supported.patch +++ /dev/null @@ -1,13 +0,0 @@ -iconv on Alpine does not support conversion to ASCII//TRANSLIT - ---- a/apps/user_ldap/lib/Access.php -+++ b/apps/user_ldap/lib/Access.php -@@ -1318,7 +1318,7 @@ - } - - // Transliteration to ASCII -- $transliterated = @iconv('UTF-8', 'ASCII//TRANSLIT', $name); -+ $transliterated = @iconv('UTF-8', 'ASCII', $name); - if($transliterated !== false) { - // depending on system config iconv can work or not - $name = $transliterated; diff --git a/apk/nextcloud/nextcloud-config.php b/apk/nextcloud/nextcloud-config.php deleted file mode 100644 index 035fb79..0000000 --- a/apk/nextcloud/nextcloud-config.php +++ /dev/null @@ -1,37 +0,0 @@ - '/var/lib/nextcloud/data', - 'logfile' => '/var/log/nextcloud/nextcloud.log', - 'apps_paths' => array ( - // Read-only location for apps shipped with Nextcloud and installed by apk. - 0 => array ( - 'path' => '/usr/share/webapps/nextcloud/apps', - 'url' => '/apps', - 'writable' => false, - ), - // Writable location for apps installed from AppStore. - 1 => array ( - 'path' => '/var/lib/nextcloud/apps', - 'url' => '/apps-appstore', - 'writable' => true, - ), - ), - 'updatechecker' => false, - 'check_for_working_htaccess' => false, - - // Uncomment to enable Zend OPcache. - //'memcache.local' => '\OC\Memcache\APCu', - - // Uncomment this and add user nextcloud to the redis group to enable Redis - // cache for file locking. This is highly recommended, see - // https://github.com/nextcloud/server/issues/9305. - //'memcache.locking' => '\OC\Memcache\Redis', - //'redis' => array( - // 'host' => '/run/redis/redis.sock', - // 'port' => 0, - // 'dbindex' => 0, - // 'timeout' => 1.5, - //), - - 'installed' => false, -); diff --git a/apk/nextcloud/nextcloud-initscript.post-install b/apk/nextcloud/nextcloud-initscript.post-install deleted file mode 100644 index 7759e65..0000000 --- a/apk/nextcloud/nextcloud-initscript.post-install +++ /dev/null @@ -1,24 +0,0 @@ -#!/bin/sh - -# It's not needed to be writable for www-data group when running with php-fpm. -for dir in /etc/nextcloud \ - /etc/nextcloud/config.php \ - /var/lib/nextcloud/data \ - /var/lib/nextcloud/apps -do - chmod g-w $dir -done -chgrp root /etc/nextcloud/config.php - -# This must be writable (only) by nextcloud user. -chmod 750 /var/log/nextcloud - -cat </dev/null 2>&1; then - su nextcloud -s /bin/sh -c 'php7 -f /usr/share/webapps/nextcloud/cron.php' -fi diff --git a/apk/nextcloud/nextcloud.logrotate b/apk/nextcloud/nextcloud.logrotate deleted file mode 100644 index 19e17fd..0000000 --- a/apk/nextcloud/nextcloud.logrotate +++ /dev/null @@ -1,6 +0,0 @@ -/var/log/nextcloud/*.log { - daily - compress - copytruncate - su nextcloud www-data -} diff --git a/apk/nextcloud/nextcloud.post-upgrade b/apk/nextcloud/nextcloud.post-upgrade deleted file mode 100644 index 19813da..0000000 --- a/apk/nextcloud/nextcloud.post-upgrade +++ /dev/null @@ -1,34 +0,0 @@ -#!/bin/sh - -ver_new="$1" -ver_old="$2" - -if [ $(apk version -t "$ver_old" '12.0.0-r2') = '<' ]; then - cat >&2 <<-EOF - * - * All Nextcloud's bundled apps (except "files" and "dav") have been moved to - * separate subpackages (e.g. nextcloud-activity). If you want to install - * all apps that are enabled by default at once, run: - * - * apk add nextcloud-default-apps - * - EOF - - if [ "$(ls -A /var/lib/nextcloud/apps)" ]; then - cat >&2 <<-EOF - * - * Nextcloud's bundled apps have been moved from /var/lib/nextcloud/apps - * to /usr/share/webapps/nextcloud/apps. Only apps installed from App Store - * should be stored in /var/lib/nextcloud/apps. - * - * It seems that you have installed some apps from App Store, so you have to - * add /var/lib/nextcloud/apps to your apps_paths. Copy "apps_paths" key - * from /etc/nextcloud/config.php.apk-new to your config.php. - * - EOF - fi -fi - -if [ "${ver_new%-r*}" != "${ver_old%-r*}" ]; then - echo '* Run "occ upgrade" to finish upgrade of your NextCloud instance!' >&2 -fi diff --git a/apk/nextcloud/nextcloud.pre-install b/apk/nextcloud/nextcloud.pre-install deleted file mode 100644 index e9cf539..0000000 --- a/apk/nextcloud/nextcloud.pre-install +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/sh - -addgroup -S -g 82 www-data 2>/dev/null -adduser -S -D -H -h /var/lib/nextcloud -s /sbin/nologin -G www-data -g Nextcloud nextcloud 2>/dev/null - -exit 0 diff --git a/apk/nextcloud/nextcloud.pre-upgrade b/apk/nextcloud/nextcloud.pre-upgrade deleted file mode 100644 index f444e78..0000000 --- a/apk/nextcloud/nextcloud.pre-upgrade +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/sh - -ver_old="$2" -apps_link='/usr/share/webapps/nextcloud/apps' - -# Remove apps symlink before replacing files to avoid losing installed apps. -# This is a workaround for some issue in apk. -if [ $(apk version -t "$ver_old" '12.0.0-r2') = '<' ] && [ -L "$apps_link" ]; then - rm "$apps_link" -fi diff --git a/apk/nextcloud/nextcloud14-dont-chmod.patch b/apk/nextcloud/nextcloud14-dont-chmod.patch deleted file mode 100644 index 13b5e3e..0000000 --- a/apk/nextcloud/nextcloud14-dont-chmod.patch +++ /dev/null @@ -1,44 +0,0 @@ ---- a/lib/private/Config.php -+++ b/lib/private/Config.php -@@ -240,9 +240,6 @@ - touch ($this->configFilePath); - $filePointer = fopen($this->configFilePath, 'r+'); - -- // Prevent others not to read the config -- chmod($this->configFilePath, 0640); -- - // File does not exist, this can happen when doing a fresh install - if(!is_resource ($filePointer)) { - // TODO fix this via DI once it is very clear that this doesn't cause side effects due to initialization order ---- a/lib/private/Log/File.php -+++ b/lib/private/Log/File.php -@@ -134,9 +134,6 @@ - } - $entry = json_encode($entry, JSON_PARTIAL_OUTPUT_ON_ERROR); - $handle = @fopen($this->logFile, 'a'); -- if ((fileperms($this->logFile) & 0777) != 0640) { -- @chmod($this->logFile, 0640); -- } - if ($handle) { - fwrite($handle, $entry."\n"); - fclose($handle); ---- a/lib/private/TempManager.php -+++ b/lib/private/TempManager.php -@@ -95,7 +95,6 @@ - if($postFix !== '') { - $fileNameWithPostfix = $this->buildFileNameWithSuffix($file, $postFix); - touch($fileNameWithPostfix); -- chmod($fileNameWithPostfix, 0600); - $this->current[] = $fileNameWithPostfix; - return $fileNameWithPostfix; - } ---- a/lib/private/legacy/util.php -+++ b/lib/private/legacy/util.php -@@ -1008,7 +1008,6 @@ - . ' cannot be listed by other users.'); - $perms = substr(decoct(@fileperms($dataDirectory)), -3); - if (substr($perms, -1) !== '0') { -- chmod($dataDirectory, 0770); - clearstatcache(); - $perms = substr(decoct(@fileperms($dataDirectory)), -3); - if ($perms[2] !== '0') { diff --git a/apk/nextcloud/occ b/apk/nextcloud/occ deleted file mode 100644 index 1e3c095..0000000 --- a/apk/nextcloud/occ +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/sh - -NEXTCLOUD_DIR='/usr/share/webapps/nextcloud' -: ${NEXTCLOUD_USER:="nextcloud"} - -if [ "$(id -un)" != "$NEXTCLOUD_USER" ]; then - exec su -s /bin/sh "$NEXTCLOUD_USER" -c '$0 "$@"' -- $NEXTCLOUD_DIR/occ "$@" -else - exec $NEXTCLOUD_DIR/occ "$@" -fi diff --git a/apk/nextcloud/use-external-docs-if-local-not-avail.patch b/apk/nextcloud/use-external-docs-if-local-not-avail.patch deleted file mode 100644 index 19145b5..0000000 --- a/apk/nextcloud/use-external-docs-if-local-not-avail.patch +++ /dev/null @@ -1,65 +0,0 @@ -From: Jakub Jirutka -Date: Tue, 27 Jun 2017 02:07:00 +0200 -Subject: [PATCH] Show link to external docs if local is not installed - ---- a/settings/help.php -+++ b/settings/help.php -@@ -34,22 +34,36 @@ - OC_Util::addStyle( "settings", "settings" ); - \OC::$server->getNavigationManager()->setActiveEntry('help'); - -+$localDocs = true; - - if(isset($_GET['mode']) and $_GET['mode'] === 'admin') { -- $url=\OCP\Util::linkToAbsolute( 'core', 'doc/admin/index.html' ); -+ if (file_exists(\OC::$SERVERROOT . '/core/doc/admin/index.html')) { -+ $url=\OCP\Util::linkToAbsolute( 'core', 'doc/admin/index.html' ); -+ } else { -+ $url=\OC::$server->query(\OCP\Defaults::class)->buildDocLinkToKey('admin-manual'); -+ $localDocs=false; -+ } - $style1=''; - $style2=' active'; - }else{ - $url=\OCP\Util::linkToAbsolute( 'core', 'doc/user/index.html' ); -+ if (file_exists( \OC::$SERVERROOT . '/core/doc/user/index.html' )) { -+ $url=\OCP\Util::linkToAbsolute( 'core', 'doc/user/index.html' ); -+ } else { -+ $url=\OC::$server->query(\OCP\Defaults::class)->buildDocLinkToKey('user-manual'); -+ $localDocs=false; -+ } - $style1=' active'; - $style2=''; - } - -+ - $url1=\OC::$server->getURLGenerator()->linkToRoute('settings_help').'?mode=user'; - $url2=\OC::$server->getURLGenerator()->linkToRoute('settings_help').'?mode=admin'; - - $tmpl = new OC_Template( "settings", "help", "user" ); - $tmpl->assign( "admin", OC_User::isAdminUser(OC_User::getUser())); -+$tmpl->assign( "localDocs", $localDocs ); - $tmpl->assign( "url", $url ); - $tmpl->assign( "url1", $url1 ); - $tmpl->assign( "url2", $url2 ); - ---- a/settings/templates/help.php -+++ b/settings/templates/help.php -@@ -42,6 +42,17 @@ - - -
-+ - -+ -+
-+

Local documentation is not installed

-+

Please use -+ -+ t('online documentation')); ?> ↗ -+ -+

-+
-+ -