diff --git a/0000-disable-update-version-check.patch b/0000-disable-update-version-check.patch index 4a77733..fa63f39 100644 --- a/0000-disable-update-version-check.patch +++ b/0000-disable-update-version-check.patch @@ -1,21 +1,20 @@ -diff --git a/lib/private/Updater.php b/lib/private/Updater.php -index 5a14bb17507..38dcb55db7f 100644 ---- a/lib/private/Updater.php -+++ b/lib/private/Updater.php -@@ -174,10 +174,13 @@ - $this->config->setAppValue('core', 'vendor', $currentVendor); +diff -Naur a/lib/private/Updater.php b/lib/private/Updater.php +--- a/lib/private/Updater.php 2020-10-24 10:37:44.000000000 +0200 ++++ b/lib/private/Updater.php 2020-11-10 10:51:10.511861549 +0100 +@@ -197,14 +197,11 @@ } -+ /* -+ Fedora package: -+ Remove updater version check, we know that updates across more than one -+ version are possible -+ */ if ($currentVendor === 'nextcloud') { - return isset($allowedPreviousVersions[$currentVendor][$majorMinor]) -- && (version_compare($oldVersion, $newVersion, '<=') -- || $this->config->getSystemValueBool('debug', false)); +- && (version_compare($oldVersion, $newVersion, '<=') || +- $this->config->getSystemValue('debug', false)); + return true; } // Check if the instance can be migrated +- return isset($allowedPreviousVersions[$currentVendor][$majorMinor]) || +- isset($allowedPreviousVersions[$currentVendor][$oldVersion]); ++ return true; + } + + /** diff --git a/README.md b/README.md index e294b77..9db76d6 100644 --- a/README.md +++ b/README.md @@ -4,8 +4,8 @@ Nextcloud requires some additional steps after installation/upgrade that are not ### Other versions -[modular nextcloud package Fedora and CentOS/RHEL](https://src.fedoraproject.org/modules/nextcloud) is over +Nextcloud maintains multiple stable branches at the same time. To install those, check out the [modular nextcloud package](https://src.fedoraproject.org/modules/nextcloud). -https://fedoraproject.org/wiki/Changes/RetireModularity +### CentOS/RHEL -Once Fedora Linux 38 reaches end of life, we will retire the Fedora instance of Module Build Service. +For CentOS/RHEL 8+, nextcloud is available through the [modular repository](https://src.fedoraproject.org/modules/nextcloud). Due to incompatible PHP versions, nextcloud is no longer available for CentOS/RHEL 7 or older. diff --git a/nextcloud-README.fedora b/nextcloud-README.fedora index 748b6cf..b64fc8d 100644 --- a/nextcloud-README.fedora +++ b/nextcloud-README.fedora @@ -12,7 +12,7 @@ If not, make sure your webserver is running properly. Webserver --------- -Currently nextcloud in Fedora/EPEL supports httpd (Apache) and nginx. You must install +Currently nextcloud in Fedora supports httpd (Apache) and nginx. You must install at least one webserver subpackage (nextcloud-). These packages include additional configuration files for the webservers. Remote access is disabled by default on httpd. To enable access from any host for Apache **AFTER** you @@ -67,7 +67,7 @@ ownership and SELinux context attributes. Logging ------- As specified by the configuration file, nextcloud sends messages to the system -logger, which means in a standard Fedora/EPEL configuration it will log to the +logger, which means in a standard Fedora configuration it will log to the systemd journal: try "journalctl -b -t Nextcloud". You can also change the loglevel or switch to the built-in log mechanism of nextcloud. @@ -115,4 +115,4 @@ systemctl enable --now nextcloud-cron.timer Migration from owncloud ----------------------- -For detailed instructions on this please read MIGRATION.distro +For detailed instructions on this please read MIGRATION.fedora diff --git a/nextcloud-config.php b/nextcloud-config.php index 3bec0f6..96aa36e 100644 --- a/nextcloud-config.php +++ b/nextcloud-config.php @@ -1,5 +1,5 @@ "syslog", "datadirectory" => "/var/lib/nextcloud/data", "updatechecker" => false, @@ -9,15 +9,18 @@ $CONFIG = [ "preview_libreoffice_path" => '/usr/bin/libreoffice', - "apps_paths" => [ - [ 'path'=> '/usr/share/nextcloud/apps', + "apps_paths" => array( + 0 => + array ( + 'path'=> '/usr/share/nextcloud/apps', 'url' => '/apps', 'writable' => false, - ], - [ + ), + 1 => + array ( 'path' => '/var/lib/nextcloud/apps', 'url' => '/apps-appstore', 'writable' => true, - ], - ], -]; + ), + ), +); diff --git a/nextcloud-defaults.inc b/nextcloud-defaults.inc index fef3ec6..c5d4478 100644 --- a/nextcloud-defaults.inc +++ b/nextcloud-defaults.inc @@ -1,8 +1,73 @@ -# The contents of the default Nextcloud .htaccess file are appended to this -# file during build. Some directives may be irrelevant to the Fedora/EPEL -# ecosystem but are NOT omitted. +# These are based on the .htaccess file shipped by ownCloud, with +# appropriate adjustments for distribution packaging. Some directives +# that are irrelevant to the Fedora/EPEL ecosystem are omitted. This +# file contains directives that should be applied within the /nextcloud +# filesystem; directives that should be applied site-wide when +# ownCloud is installed are placed directly in nextcloud.conf. # # DO NOT EDIT THIS FILE DIRECTLY. To override any element of the -# packaged Nextcloud configuration, create a new /etc/httpd/conf.d/ -# file which will be read later than this one. +# packaged ownCloud configuration, create a new /etc/httpd/conf.d/ +# file which will be read later than 'nextcloud.conf'. +AllowOverride None + +ErrorDocument 403 /nextcloud/core/templates/403.php +ErrorDocument 404 /nextcloud/core/templates/404.php + + + + + SetEnvIfNoCase ^Authorization$ "(.+)" XAUTHORIZATION=$1 + RequestHeader set XAuthorization %{XAUTHORIZATION}e env=XAUTHORIZATION + + + + + + php_value upload_max_filesize 10G + php_value post_max_size 10G + php_value memory_limit 512M + php_value mbstring.func_overload 0 + php_value always_populate_raw_post_data -1 + php_value default_charset 'UTF-8' + php_value output_buffering off + + SetEnv htaccessWorking true + + + + + php_value upload_max_filesize 10G + php_value post_max_size 10G + php_value memory_limit 512M + php_value mbstring.func_overload 0 + php_value always_populate_raw_post_data -1 + php_value default_charset 'UTF-8' + php_value output_buffering off + + SetEnv htaccessWorking true + + + +# The rewrites for legacy caldav and carddav URLs are omitted here +# because they do not work with Fedora's ownCloud directory layout. +# See https://github.com/nextcloud/core/issues/243#issuecomment-75426453 + + RewriteEngine on + RewriteBase /nextcloud/ + RewriteRule .* - [env=HTTP_AUTHORIZATION:%{HTTP:Authorization}] + RewriteRule ^remote/(.*) remote.php [QSA,L] + + +AddDefaultCharset utf-8 +Options -Indexes + + + ModPagespeed Off + + + + + Header set Cache-Control "max-age=7200, public" + + diff --git a/nextcloud-fedora-autoloader.php b/nextcloud-fedora-autoloader.php new file mode 100644 index 0000000..a125728 --- /dev/null +++ b/nextcloud-fedora-autoloader.php @@ -0,0 +1,70 @@ +register(); +} + +// For PEAR components +$fedoraClassLoader->setUseIncludePath(true); + +// Dependencies from 3rdparty composer.json +// "guzzlehttp/guzzle" +require_once $vendor . '/GuzzleHttp/autoload.php'; +// "sabre/dav" +require_once $vendor . '/Sabre/DAV/autoload.php'; +// "doctrine/dbal" +require_once $vendor . '/Doctrine/DBAL/autoload.php'; +// mcnetic/zipstreamer" +require_once $vendor . '/ZipStreamer/autoload.php'; +// "phpeclib/phpseclib" +require_once $vendor . '/phpseclib/autoload.php'; +// "rackspace/php-opencloud" +require_once $vendor . '/OpenCloud/autoload.php'; +// "jeremeamia/superclosure" +require_once $vendor . '/SuperClosure/autoload.php'; +// "bantu/ini-get-wrapper" +require_once $vendor . '/bantu/IniGetWrapper/IniGetWrapper.php'; +// "natxet/CssMin" +require_once $vendor . '/natxet/CssMin/autoload.php'; +// "punic/punic" +require_once $vendor . '/Punic/autoload.php'; +// "patchwork/utf8" +require_once $vendor . '/Patchwork/autoload.php'; +// "symfony/console" +require_once $vendor . '/Symfony/Component/Console/autoload.php'; +// "symfony/event-dispatcher" +require_once $vendor . '/Symfony/Component/EventDispatcher/autoload.php'; +// "symfony/routing" +require_once $vendor . '/Symfony/Component/Routing/autoload.php'; +// "symfony/process" +require_once $vendor . '/Symfony/Component/Process/autoload.php'; +// "pimple/pimple" +require_once $vendor . '/Pimple/autoload.php'; +// "ircmaxell/password-compat" +if (file_exists($vendor . '/password_compat/password.php')) { + require_once $vendor . '/password_compat/password.php'; +} +// "nikic/php-parser" +require_once $vendor . '/PhpParser/autoload.php'; +// "icewind/Streams" +require_once $vendor . '/Icewind/Streams/autoload.php'; +// "swiftmailer/swiftmailer +require_once $vendor . '/Swift/swift_required.php'; +// "league/flysystem" +require_once $vendor . '/League/Flysystem/autoload.php'; +// "interfasys/lognormalizer" +require_once $vendor . '/InterfaSys/LogNormalizer/autoload.php'; +// "deepdiver1975/TarSTreamer" +require_once $vendor . '/ownCloud/TarStreamer/autoload.php'; +// "patchwork/jsqueeze" +require_once $vendor . '/Patchwork/JSqueeze.php'; +// "symfony/polyfill-php{55,56,70}" +require_once $vendor . '/Symfony/Polyfill/autoload.php'; +// "lukasreschke/id3parser": "^0.0.1" +require_once $vendor . '/ID3Parser/autoload.php'; diff --git a/nextcloud-httpd.conf b/nextcloud-httpd.conf index 12c121e..5a4ce55 100644 --- a/nextcloud-httpd.conf +++ b/nextcloud-httpd.conf @@ -16,14 +16,9 @@ Alias /nextcloud /usr/share/nextcloud # Allows compliant CalDAV / CardDAV clients to be configured using only # the domain name. For more details see # http://tools.ietf.org/html/rfc6764 -# Nextcloud 29 checks specifically for trailing slash in dav 301 redirects -# https://github.com/nextcloud/server/issues/45033#issuecomment-2079306503 - -Redirect 301 /.well-known/carddav /nextcloud/remote.php/dav/ -Redirect 301 /.well-known/caldav /nextcloud/remote.php/dav/ -Redirect 301 /.well-known/webdav /nextcloud/remote.php/dav/ -Redirect 301 /.well-known/webfinger /nextcloud/index.php/.well-known/webfinger -Redirect 301 /.well-known/nodeinfo /nextcloud/index.php/.well-known/nodeinfo +Redirect 301 /.well-known/carddav /nextcloud/remote.php/carddav +Redirect 301 /.well-known/caldav /nextcloud/remote.php/caldav +Redirect 301 /.well-known/webdav /nextcloud/remote.php/webdav Include conf.d/nextcloud-auth-local.inc diff --git a/nextcloud-integritycheck-exclusion.patch b/nextcloud-integritycheck-exclusion.patch deleted file mode 100644 index eeb7ee5..0000000 --- a/nextcloud-integritycheck-exclusion.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 9f38c6300712a23ccdc75e140143a1c461e15705 Mon Sep 17 00:00:00 2001 -From: Andrew Bauer -Date: Mon, 24 Jun 2024 10:11:23 -0500 -Subject: [PATCH] silence integrity check for excluded files - ---- - lib/private/IntegrityCheck/Checker.php | 13 +++++++++++++ - 1 file changed, 13 insertions(+) - -diff --git a/lib/private/IntegrityCheck/Checker.php b/lib/private/IntegrityCheck/Checker.php -index a6de3cf6030d7..3974483601b08 100644 ---- a/lib/private/IntegrityCheck/Checker.php -+++ b/lib/private/IntegrityCheck/Checker.php -@@ -337,7 +337,20 @@ private function verify(string $signaturePath, string $basePath, string $certifi - $differencesB = array_diff_assoc($currentInstanceHashes, $expectedHashes); - $differences = array_unique(array_merge($differencesA, $differencesB)); - $differenceArray = []; -+ -+ # Nasty hack to silence the integrity checker for files patched during the build process or files we simply don't care about -+ $excludedFilenames = [ -+//sedplaceholder ]; -+ - foreach ($differences as $filename => $hash) { -+ -+ # Skip if the file in question matches our exclusion list -+ foreach ($excludedFilenames as $excludedFilename) { -+ if (strpos($filename, $excludedFilename)!==false) { -+ break 2; -+ } -+ } -+ - // Check if file should not exist in the new signature table - if (!array_key_exists($filename, $expectedHashes)) { - $differenceArray['EXTRA_FILE'][$filename]['expected'] = ''; diff --git a/nextcloud-php-fpm.conf b/nextcloud-php-fpm.conf index a551def..b626a97 100644 --- a/nextcloud-php-fpm.conf +++ b/nextcloud-php-fpm.conf @@ -18,7 +18,6 @@ php_value[soap.wsdl_cache_dir] = /var/lib/php/wsdlcache php_value[memory_limit] = 512M php_value[upload_max_filesize] = 10G php_value[post_max_size] = 10G -php_value[output_buffering] = false env[HOSTNAME] = $HOSTNAME env[PATH] = /usr/local/bin:/usr/bin:/bin env[TMP] = /tmp diff --git a/nextcloud-php.ini b/nextcloud-php.ini deleted file mode 100644 index 008bcab..0000000 --- a/nextcloud-php.ini +++ /dev/null @@ -1 +0,0 @@ -apc.enable_cli=1 diff --git a/nextcloud-systemd-timer.service b/nextcloud-systemd-timer.service index a7efaae..ccff38f 100644 --- a/nextcloud-systemd-timer.service +++ b/nextcloud-systemd-timer.service @@ -2,10 +2,7 @@ Description=Cron for nextcloud background jobs [Service] -# https://docs.nextcloud.com/server/25/admin_manual/configuration_server/background_jobs_configuration.html#systemd Type=oneshot -User=apache -KillMode=process ExecStart=/usr/bin/php -f /usr/share/nextcloud/cron.php - +User=apache diff --git a/nextcloud.spec b/nextcloud.spec index 2b4260b..930933f 100644 --- a/nextcloud.spec +++ b/nextcloud.spec @@ -1,15 +1,8 @@ -%if 0%{?fedora} -%global distro fedora -%else -%global distro epel -%endif - Name: nextcloud -Version: 34.0.3 +Version: 24.0.3 Release: %autorelease Summary: Private file sync and share server -# Automatically converted from old format: AGPLv3+ and MIT and BSD and ASL 2.0 and WTFPL and CC-BY-SA and GPLv3+ and Adobe - review is highly recommended. -License: AGPL-3.0-or-later AND LicenseRef-Callaway-MIT AND LicenseRef-Callaway-BSD AND Apache-2.0 AND WTFPL AND LicenseRef-Callaway-CC-BY-SA AND GPL-3.0-or-later AND Adobe-2006 +License: AGPLv3+ and MIT and BSD and ASL 2.0 and WTFPL and CC-BY-SA and GPLv3+ and Adobe URL: http://nextcloud.com Source0: https://download.nextcloud.com/server/releases/%{name}-%{version}.tar.bz2 @@ -30,7 +23,6 @@ Source105: %{name}-defaults.inc Source200: %{name}-default-nginx.conf Source201: %{name}-conf-nginx.conf Source202: %{name}-php-fpm.conf -Source203: %{name}-php.ini # packaging notes and doc Source300: %{name}-README.fedora Source301: %{name}-mysql.txt @@ -40,27 +32,22 @@ Source303: %{name}-MIGRATION.fedora # Remove updater version check, we know that updates across more than one # version are possible Patch0: 0000-disable-update-version-check.patch -# Add the ability to exclude files we specify from the nextcloud integrity checker -Patch1: nextcloud-integritycheck-exclusion.patch +# Change occ shebang to /usr/bin/php +Patch1: 0001-mangle-shebang.patch BuildArch: noarch - -# Set this to the minimum supported php version Nextcloud will run on -# Exists to prevent accidental building on distros with outdated php's -BuildRequires: php(language) >= 8.2 +# For the systemd macros +%if 0%{?fedora} > 29 BuildRequires: systemd-rpm-macros -BuildRequires: sed - -# Auto-generate Provides from bundled php-composer libraries -BuildRequires: composer-generators - +%else +BuildRequires: systemd +%endif # expand pear macros on install BuildRequires: php-pear # Require one webserver and database backend Requires: %{name}-webserver = %{version}-%{release} Requires: %{name}-database = %{version}-%{release} -Requires: php-bcmath # Require php CLI for occ command Requires: php-cli # Core PHP libs/extensions required by OC core @@ -68,38 +55,165 @@ Requires: php-curl Requires: php-dom Requires: php-exif Requires: php-fileinfo -Requires: php-filter Requires: php-gd -Requires: php-gmp Requires: php-iconv -Requires: php-intl Requires: php-json Requires: php-ldap Requires: php-mbstring Requires: php-openssl Requires: php-pcre Requires: php-pdo -Requires: php-pecl-apcu -Requires: php-pecl-imagick -Requires: php-pecl-memcached -Requires: (php-pecl-redis6 or php-pecl-redis5) -Requires: php-process Requires: php-session Requires: php-simplexml -Requires: php-smbclient -Requires: php-spl -Recommends: php-sodium -Requires: php-opcache Requires: php-xmlwriter +Requires: php-spl Requires: php-zip +Requires: php-filter +Requires: php-ldap +Requires: php-smbclient +Requires: php-gmp +Requires: php-process +Requires: php-pecl-imagick +Requires: php-pecl-memcached +Requires: php-pecl-apcu +Requires: php-pecl-redis5 # For systemd support during install/uninstall %{?systemd_requires} -# Fedora dropped legacy CA cert bundle symlinks -# See https://fedoraproject.org/wiki/Changes/dropingOfCertPemFile -Requires: %{_sysconfdir}/pki/ca-trust/extracted/pem/tls-ca-bundle.pem +# the CA cert bundle is linked to from the config dir +Requires: %{_sysconfdir}/pki/tls/certs/ca-bundle.crt +# Bundled composer libraries +# many of these can be unbundled +Provides: bundled(php-composer(icewind/smb)) = 3.5.2 +Provides: bundled(php-composer(icewind/streams)) = 0.7.4 +Provides: bundled(php-composer(composer/semver)) = 3.2.5 +Provides: bundled(php-composer(composer/xdebug-handler)) = 2.0.2 +Provides: bundled(php-composer(doctrine/annotations)) = 1.13.2 +Provides: bundled(php-composer(doctrine/lexer)) = 1.2.1 +Provides: bundled(php-composer(friendsofphp/php-cs-fixer)) = 2.19.2 +Provides: bundled(php-composer(nextcloud/coding-standard)) = 0.5.0 +Provides: bundled(php-composer(php-cs-fixer/diff)) = 1.3.1 +Provides: bundled(php-composer(psr/cache)) = 1.0.1 +Provides: bundled(php-composer(psr/container)) = 1.1.1 +Provides: bundled(php-composer(psr/event-dispatcher)) = 1.0.0 +Provides: bundled(php-composer(psr/log)) = 1.1.4 +Provides: bundled(php-composer(symfony/console)) = 5.3.7 +Provides: bundled(php-composer(symfony/deprecation-contracts)) = 2.4.0 +Provides: bundled(php-composer(symfony/event-dispatcher)) = 5.3.7 +Provides: bundled(php-composer(symfony/event-dispatcher-contracts)) = 2.4.0 +Provides: bundled(php-composer(symfony/filesystem)) = 5.3.4 +Provides: bundled(php-composer(symfony/finder)) = 5.3.7 +Provides: bundled(php-composer(symfony/options-resolver)) = 5.3.7 +Provides: bundled(php-composer(symfony/polyfill-ctype)) = 1.23.0 +Provides: bundled(php-composer(symfony/polyfill-intl-grapheme)) = 1.23.1 +Provides: bundled(php-composer(symfony/polyfill-intl-normalizer)) = 1.23.0 +Provides: bundled(php-composer(symfony/polyfill-mbstring)) = 1.23.1 +Provides: bundled(php-composer(symfony/polyfill-php70)) = 1.20.0 +Provides: bundled(php-composer(symfony/polyfill-php72)) = 1.23.0 +Provides: bundled(php-composer(symfony/polyfill-php73)) = 1.23.0 +Provides: bundled(php-composer(symfony/polyfill-php80)) = 1.23.1 +Provides: bundled(php-composer(symfony/process)) = 5.3.7 +Provides: bundled(php-composer(symfony/service-contracts)) = 2.4.0 +Provides: bundled(php-composer(symfony/stopwatch)) = 5.3.4 +Provides: bundled(php-composer(symfony/string)) = 5.3.7 +Provides: bundled(php-composer(aws/aws-sdk-php)) = 3.184.6 +Provides: bundled(php-composer(bantu/ini-get-wrapper)) = 1.0.1 +Provides: bundled(php-composer(beberlei/assert)) = 3.3.1 +Provides: bundled(php-composer(brick/math)) = 0.9.2 +Provides: bundled(php-composer(christophwurst/id3parser)) = 0.1.4 +Provides: bundled(php-composer(composer/package-versions-deprecated)) = 1.11.99.4 +Provides: bundled(php-composer(cweagans/composer-patches)) = 1.7.1 +Provides: bundled(php-composer(deepdiver/zipstreamer)) = 2.0.0 +Provides: bundled(php-composer(deepdiver1975/tarstreamer)) = 2.0.0 +Provides: bundled(php-composer(doctrine/cache)) = 2.1.1 +Provides: bundled(php-composer(doctrine/dbal)) = 3.1.4 +Provides: bundled(php-composer(doctrine/deprecations)) = 0.5.3 +Provides: bundled(php-composer(doctrine/event-manager)) = 1.1.1 +Provides: bundled(php-composer(doctrine/lexer)) = 1.2.1 +Provides: bundled(php-composer(egulias/email-validator)) = 3.1.1 +Provides: bundled(php-composer(fgrosse/phpasn1)) = 2.3.0 +Provides: bundled(php-composer(giggsey/libphonenumber-for-php)) = 8.12.38 +Provides: bundled(php-composer(giggsey/locale)) = 2.1 +Provides: bundled(php-composer(guzzlehttp/guzzle)) = 7.4.5 +Provides: bundled(php-composer(guzzlehttp/promises)) = 1.5.1 +Provides: bundled(php-composer(guzzlehttp/psr7)) = 1.9.0 +Provides: bundled(php-composer(guzzlehttp/uri-template)) = 0.2.0 +Provides: bundled(php-composer(icewind/searchdav)) = 3.0.1 +Provides: bundled(php-composer(icewind/streams)) = 0.7.5 +Provides: bundled(php-composer(justinrainbow/json-schema)) = 5.2.10 +Provides: bundled(php-composer(league/uri)) = 6.4.0 +Provides: bundled(php-composer(league/uri-interfaces)) = 2.2.0 +Provides: bundled(php-composer(microsoft/azure-storage-blob)) = 1.5.2 +Provides: bundled(php-composer(microsoft/azure-storage-common)) = 1.5.1 +Provides: bundled(php-composer(mtdowling/jmespath.php)) = 2.6.1 +Provides: bundled(php-composer(nextcloud/lognormalizer)) = 1.0.0 +Provides: bundled(php-composer(nikic/php-parser)) = 4.10.5 +Provides: bundled(php-composer(opis/closure)) = 3.6.2 +Provides: bundled(php-composer(pear/archive_tar)) = 1.4.14 +Provides: bundled(php-composer(pear/console_getopt)) = 1.4.3 +Provides: bundled(php-composer(pear/pear-core-minimal)) = 1.10.10 +Provides: bundled(php-composer(pear/pear_exception)) = 1.0.2 +Provides: bundled(php-composer(php-ds/php-ds)) = 1.3.0 +Provides: bundled(php-composer(php-http/guzzle7-adapter)) = 1.0.0 +Provides: bundled(php-composer(php-http/httplug)) = 2.2.0 +Provides: bundled(php-composer(php-http/promise)) = 1.1.0 +Provides: bundled(php-composer(php-opencloud/openstack)) = 3.1.0 +Provides: bundled(php-composer(phpseclib/phpseclib)) = 2.0.32 +Provides: bundled(php-composer(pimple/pimple)) = 3.5.0 +Provides: bundled(php-composer(psr/container)) = 1.1.1 +Provides: bundled(php-composer(psr/event-dispatcher)) = 1.0.0 +Provides: bundled(php-composer(psr/http-client)) = 1.0.1 +Provides: bundled(php-composer(psr/http-factory)) = 1.0.1 +Provides: bundled(php-composer(psr/http-message)) = 1.0.1 +Provides: bundled(php-composer(psr/log)) = 1.1.4 +Provides: bundled(php-composer(punic/punic)) = 1.6.5 +Provides: bundled(php-composer(ralouphie/getallheaders)) = 3.0.3 +Provides: bundled(php-composer(ramsey/collection)) = 1.1.3 +Provides: bundled(php-composer(ramsey/uuid)) = 4.1.1 +Provides: bundled(php-composer(sabre/dav)) = 4.2.1 +Provides: bundled(php-composer(sabre/event)) = 5.1.4 +Provides: bundled(php-composer(sabre/http)) = 5.1.3 +Provides: bundled(php-composer(sabre/uri)) = 2.2.2 +Provides: bundled(php-composer(sabre/vobject)) = 4.4.1 +Provides: bundled(php-composer(sabre/xml)) = 2.2.5 +Provides: bundled(php-composer(scssphp/scssphp)) = 1.8.1 +Provides: bundled(php-composer(spomky-labs/base64url)) = 2.0.4 +Provides: bundled(php-composer(spomky-labs/cbor-php)) = 2.0.1 +Provides: bundled(php-composer(stecman/symfony-console-completion)) = 0.11.0 +Provides: bundled(php-composer(swiftmailer/swiftmailer)) = 6.2.7 +Provides: bundled(php-composer(symfony/console)) = 4.4.30 +Provides: bundled(php-composer(symfony/deprecation-contracts)) = 2.5.0 +Provides: bundled(php-composer(symfony/event-dispatcher)) = 4.4.30 +Provides: bundled(php-composer(symfony/event-dispatcher-contracts)) = 1.1.9 +Provides: bundled(php-composer(symfony/polyfill-ctype)) = 1.23.0 +Provides: bundled(php-composer(symfony/polyfill-iconv)) = 1.23.0 +Provides: bundled(php-composer(symfony/polyfill-intl-grapheme)) = 1.23.1 +Provides: bundled(php-composer(symfony/polyfill-intl-idn)) = 1.23.0 +Provides: bundled(php-composer(symfony/polyfill-intl-normalizer)) = 1.23.0 +Provides: bundled(php-composer(symfony/polyfill-mbstring)) = 1.23.1 +Provides: bundled(php-composer(symfony/polyfill-php72)) = 1.23.0 +Provides: bundled(php-composer(symfony/polyfill-php73)) = 1.23.0 +Provides: bundled(php-composer(symfony/polyfill-php80)) = 1.23.1 +Provides: bundled(php-composer(symfony/process)) = 4.4.30 +Provides: bundled(php-composer(symfony/routing)) = 4.4.30 +Provides: bundled(php-composer(symfony/service-contracts)) = 2.4.0 +Provides: bundled(php-composer(symfony/translation)) = 4.4.41 +Provides: bundled(php-composer(symfony/translation-contracts)) = 2.4.0 +Provides: bundled(php-composer(thecodingmachine/safe)) = 1.3.3 +Provides: bundled(php-composer(web-auth/cose-lib)) = 3.3.9 +Provides: bundled(php-composer(web-auth/metadata-service)) = 3.3.9 +Provides: bundled(php-composer(web-auth/webauthn-lib)) = 3.3.9 +Provides: bundled(php-composer(doctrine/lexer)) = 1.2.1 +Provides: bundled(php-composer(symfony/polyfill-intl-idn)) = 1.22.1 +Provides: bundled(php-composer(symfony/polyfill-intl-normalizer)) = 1.22.1 +Provides: bundled(php-composer(symfony/polyfill-php72)) = 1.22.1 + +# OpenIconic icons bundled via sabre-dav +Provides: bundled(openiconic-fonts) = 1.0.0 +# jscolor bundled via themeing app +Provides: bundled(jscolor) = 2.0.4 # jquery-ui-multiselect bundled via user_ldap app -Provides: bundled(jquery-ui-multiselect) = 1.13 +Provides: bundled(jquery-ui-multiselect) = 0.3.1 # zxcvbn bundled via core Provides: bundled(zxcvbn) = 4.4.2 @@ -150,7 +264,6 @@ If you want the database to be on the same system as NextCloud itself, you must also install and enable a MySQL / MariaDB server package. See README.mysql for more details. - %package postgresql Summary: PostgreSQL database support for NextCloud Provides: %{name}-database = %{version}-%{release} @@ -179,77 +292,211 @@ Requires: %{name} = %{version}-%{release} This package ensures the necessary dependencies are in place for NextCloud to work with an SQLite 3 database stored on the local system. + %prep %autosetup -n %{name} -p1 -# Fix php shebang in occ -sed -ri 's\^#!/usr/bin/env php$\#!%{_bindir}/php\' occ - # patch backup files and .git stuff -find . -name \*.orig -type f -delete -print -find . -name .gitignore -type f -delete -print +find . -name \*.orig -type f -exec rm {} \; -print +find . -name .gitignore -type f -exec rm {} \; -print find . -name .github -type d -prune -exec rm -r {} \; -print -# fix CLI upgrade advice on splash screen -if ! file=$(grep -l 'occ upgrade' dist/*.map); then - echo "Could not find the occ upgrade instructions in dist/*.map" - exit 1 -fi -echo "Updating occ upgrade instructions in $file" -sed -i -e 's#\./\(occ upgrade\)#sudo -u apache php /usr/share/nextcloud/\1#' $file - # prepare package doc -cp %{SOURCE300} README.%{distro} +cp %{SOURCE300} README.fedora cp %{SOURCE301} README.mysql cp %{SOURCE302} README.postgresql -cp %{SOURCE303} MIGRATION.%{distro} - -# point the reader to the correct README filename -sed -i 's/distro/%{distro}/g' README.%{distro} +cp %{SOURCE303} MIGRATION.fedora # Locate license files and put them sensibly in place # get rid of all composer licenses find -wholename "*/composer/LICENSE" -exec mv {} composer-LICENSE \; -# Deal with licenses automatically -find . -mindepth 2 \( -name '*LICENSE*' -o -name '*LICENCE*' \) | { while read a ; do mv "$a" $(echo $a | sed "s_^./__" | tr "/ " "__" )-LICENSE ; done ; } -find . -mindepth 2 -name '*COPYING*' | { while read a ; do mv "$a" $(echo $a | sed "s_^./__" | tr "/ " "__" )-COPYING ; done ; } +# find all remaining using "find -name '*LICENCE*' -name '*LICENSE*' -o -name '*COPYING*' | sort" +mv 3rdparty/aws/aws-sdk-php/LICENSE.md aws-LICENSE.md +mv 3rdparty/bantu/ini-get-wrapper/LICENSE bantu-LICENSE +mv 3rdparty/beberlei/assert/LICENSE beberlei-LICENSE +mv 3rdparty/brick/math/LICENSE brick-LICENSE +mv 3rdparty/christophwurst/id3parser/LICENSE christophwurst-LICENSE +mv 3rdparty/composer/package-versions-deprecated/LICENSE composer-LICENSE +mv 3rdparty/deepdiver1975/tarstreamer/LICENSE deepdiver1975-LICENSE +mv 3rdparty/deepdiver/zipstreamer/COPYING deepdiver-COPYING +mv 3rdparty/doctrine/cache/LICENSE doctrine-LICENSE +mv 3rdparty/doctrine/dbal/LICENSE doctrine-LICENSE +mv 3rdparty/doctrine/event-manager/LICENSE doctrine-LICENSE +mv 3rdparty/egulias/email-validator/LICENSE egulias-LICENSE +mv 3rdparty/fgrosse/phpasn1/LICENSE fgrosse-LICENSE +mv 3rdparty/giggsey/libphonenumber-for-php/LICENSE giggsey-LICENSE +mv 3rdparty/giggsey/locale/LICENSE giggsey-LICENSE +mv 3rdparty/guzzlehttp/guzzle/LICENSE guzzlehttp-LICENSE +mv 3rdparty/guzzlehttp/promises/LICENSE guzzlehttp-LICENSE +mv 3rdparty/guzzlehttp/psr7/LICENSE guzzlehttp-LICENSE +mv 3rdparty/guzzlehttp/uri-template/LICENSE.md guzzlehttp-LICENSE +mv 3rdparty/icewind/searchdav/LICENSE icewind-LICENSE +mv 3rdparty/justinrainbow/json-schema/LICENSE justinrainbow-LICENSE +mv 3rdparty/league/uri-interfaces/LICENSE league-LICENSE +mv 3rdparty/league/uri/LICENSE league-LICENSE +mv '3rdparty/LICENSE INFO' 3rdparty-LICENSE_INFO +mv 3rdparty/microsoft/azure-storage-blob/LICENSE microsoft-LICENSE +mv 3rdparty/microsoft/azure-storage-common/LICENSE microsoft-LICENSE +mv 3rdparty/mtdowling/jmespath.php/LICENSE mtdowling-LICENSE +mv 3rdparty/nextcloud/lognormalizer/COPYING lognormalizer-LICENSE +mv 3rdparty/nikic/php-parser/LICENSE nikic-LICENSE +mv 3rdparty/opis/closure/LICENSE opis-LICENSE +mv 3rdparty/pear/console_getopt/LICENSE pear-LICENSE +mv 3rdparty/pear/pear_exception/LICENSE pear-LICENSE +mv 3rdparty/php-ds/php-ds/LICENSE php-ds-LICENSE +mv 3rdparty/php-http/guzzle7-adapter/LICENSE php-http-LICENSE +mv 3rdparty/php-http/httplug/LICENSE php-http-LICENSE +mv 3rdparty/php-http/promise/LICENSE php-http-LICENSE +mv 3rdparty/php-opencloud/openstack/LICENSE php-opencloud-LICENSE +mv 3rdparty/phpseclib/phpseclib/LICENSE phpseclib-LICENSE +mv 3rdparty/psr/event-dispatcher/LICENSE psr-LICENSE +mv 3rdparty/psr/container/LICENSE psr-LICENSE +mv 3rdparty/psr/http-client/LICENSE psr-LICENSE +mv 3rdparty/psr/http-factory/LICENSE psr-LICENSE +mv 3rdparty/psr/http-message/LICENSE psr-LICENSE +mv 3rdparty/psr/log/LICENSE psr-LICENSE +mv 3rdparty/punic/punic/LICENSE.txt punic-LICENSE.txt +mv 3rdparty/punic/punic/UNICODE-LICENSE.txt punic-UNICODE-LICENSE +mv 3rdparty/ralouphie/getallheaders/LICENSE ralouphie-LICENSE +mv 3rdparty/ramsey/collection/LICENSE ramsey-LICENSE +mv 3rdparty/ramsey/uuid/LICENSE ramsey-LICENSE +mv 3rdparty/sabre/dav/lib/DAV/Browser/assets/openiconic/ICON-LICENSE sabre-ICON-LICENSE +mv 3rdparty/sabre/dav/LICENSE sabre-LICENSE +mv 3rdparty/sabre/event/LICENSE sabre-LICENSE +mv 3rdparty/sabre/http/LICENSE sabre-LICENSE +mv 3rdparty/sabre/uri/LICENSE sabre-LICENSE +mv 3rdparty/sabre/vobject/LICENSE sabre-LICENSE +mv 3rdparty/sabre/xml/LICENSE sabre-LICENSE +mv 3rdparty/scssphp/scssphp/LICENSE.md scssphp-LICENSE.md +mv 3rdparty/spomky-labs/base64url/LICENSE spomky-labs-LICENSE +mv 3rdparty/spomky-labs/cbor-php/LICENSE spomky-labs-LICENSE +mv 3rdparty/stecman/symfony-console-completion/LICENCE stecman-LICENSE +mv 3rdparty/symfony/console/LICENSE symfony-LICENSE +mv 3rdparty/symfony/event-dispatcher-contracts/LICENSE symfony-LICENSE +mv 3rdparty/symfony/event-dispatcher/LICENSE symfony-LICENSE +mv 3rdparty/symfony/polyfill-ctype/LICENSE symfony-LICENSE +mv 3rdparty/symfony/polyfill-iconv/LICENSE symfony-LICENSE +mv 3rdparty/symfony/polyfill-intl-grapheme/LICENSE symfony-LICENSE +mv 3rdparty/symfony/polyfill-intl-idn/LICENSE symfony-LICENSE +mv 3rdparty/symfony/polyfill-intl-normalizer/LICENSE symfony-LICENSE +mv 3rdparty/symfony/polyfill-mbstring/LICENSE symfony-LICENSE +mv 3rdparty/symfony/polyfill-php72/LICENSE symfony-LICENSE +mv 3rdparty/symfony/polyfill-php73/LICENSE symfony-LICENSE +mv 3rdparty/symfony/polyfill-php80/LICENSE symfony-LICENSE +mv 3rdparty/symfony/process/LICENSE symfony-LICENSE +mv 3rdparty/symfony/routing/LICENSE symfony-LICENSE +mv 3rdparty/symfony/service-contracts/LICENSE symfony-LICENSE +mv 3rdparty/symfony/translation-contracts/LICENSE symfony-LICENSE +mv 3rdparty/symfony/translation/LICENSE symfony-LICENSE +mv 3rdparty/thecodingmachine/safe/LICENSE thecodingmachine-LICENSE +mv 3rdparty/web-auth/cose-lib/LICENSE web-auth-LICENSE +mv 3rdparty/web-auth/metadata-service/LICENSE web-auth-LICENSE +mv 3rdparty/web-auth/webauthn-lib/LICENSE web-auth-LICENSE +mv 3rdparty/cweagans/composer-patches/LICENSE.md composer-patches-LICENSE.md +mv 3rdparty/symfony/deprecation-contracts/LICENSE deprecation-contracts-LICENSE +mv apps/activity/js/activity-sidebar.js.LICENSE.txt activity-sidebar.js-LICENSE +mv apps/activity/js/activity-dashboard.js.LICENSE.txt activity-dashboard.js-LICENSE.txt +mv apps/circles/LICENSE circles-LICENSE +mv apps/cloud_federation_api/LICENSE cloud_federation_api-LICENSE +mv apps/files_external/3rdparty/icewind/smb/LICENSE.txt icewind-LICENSE +mv apps/files_external/3rdparty/icewind/streams/LICENCE icewind-LICENSE +mv apps/files_pdfviewer/js/files_pdfviewer-workersrc.js.LICENSE.txt files_pdfviewer-workersrc.js-LICENSE +mv apps/files_pdfviewer/js/files_pdfviewer-main.js.LICENSE.txt files_pdfviewer-main.js-LICENSE +mv apps/files_pdfviewer/js/files_pdfviewer-public.js.LICENSE.txt files_pdfviewer-public.js-LICENSE +mv apps/files_pdfviewer/js/pdfjs/LICENSE js-pdfjs-LICENSE +mv apps/files_pdfviewer/js/pdfjs/web/cmaps/LICENSE js-pdfjs-cmaps-LICENSE +mv apps/files_rightclick/COPYING files_rightclick-COPYING +mv apps/files_rightclick/LICENSE files_rightclick-LICENSE +mv apps/logreader/js/logreader-main.js.LICENSE.txt logreader-main.js-LICENSE +mv apps/nextcloud_announcements/COPYING nextcloud_announcements-COPYING +mv apps/notifications/COPYING notifications-LICENSE +mv apps/notifications/js/notifications-main.js.LICENSE.txt notifications-main.js-LICENSE +mv apps/password_policy/LICENSE password_policy-LICENSE +mv apps/password_policy/js/password_policy-settings.js.LICENSE.txt password_policy-settings.js-LICENSE +mv apps/photos/COPYING photos-COPYING +mv apps/photos/js/photos-main.js.LICENSE.txt photos-main.js-LICENSE +mv apps/privacy/COPYING privacy-COPYING +mv apps/privacy/js/privacy-main.js.LICENSE.txt privacy-main.js-LICENSE +mv apps/recommendations/LICENSE recommendations-LICENSE +mv apps/serverinfo/COPYING serverinfo-LICENSE +mv apps/survey_client/COPYING survey_client-LICENSE +mv apps/text/COPYING text-COPYING +mv apps/text/js/vendors.js.LICENSE.txt vendors.js-LICENSE.txt +mv apps/text/js/editor-rich.js.LICENSE.txt editor-rich.js-LICENSE.txt +mv apps/text/js/text-files.js.LICENSE.txt text-files.js-LICENSE.txt +mv apps/text/js/text-public.js.LICENSE.txt text-public.js-LICENSE.txt +mv apps/text/js/text-text.js.LICENSE.txt text-text.js-LICENSE.txt +mv apps/text/js/text-viewer.js.LICENSE.txt text-viewer.js-LICENSE.txt +mv apps/text/js/editor.js.LICENSE.txt editor.js-LICENSE.txt +mv apps/theming/js/3rdparty/jscolor/LICENSE.txt jscolor-LICENSE +mv apps/user_ldap/js/vendor/ui-multiselect/MIT-LICENSE js-jqueryui-multiselect-LICENSE +mv apps/viewer/COPYING viewer-COPYING +mv apps/viewer/js/viewer-main.js.LICENSE.txt viewer-main.js-LICENSE +mv COPYING nextcloud-LICENSE +mv core/fonts/LICENSE_OFL.txt fonts-LICENSE +mv core/vendor/zxcvbn/LICENSE.txt zxcvbn-LICENSE +mv apps/files_videoplayer/js/files_videoplayer-main.js.LICENSE.txt files_videoplayer-main.js-LICENSE.txt +mv apps/files_videoplayer/js/files_videoplayer-vendors-node_modules_video_js_dist_video_es_js.js.LICENSE.txt files_videoplayer-vendors-node_modules_video_js_dist_video_es_js.js-LICENSE.txt +mv apps/files_pdfviewer/COPYING files_pdfviewer-COPYING +mv apps/files_pdfviewer/js/pdfjs/web/standard_fonts/LICENSE_FOXIT standard_fonts-LICENSE_FOXIT +mv apps/files_pdfviewer/js/pdfjs/web/standard_fonts/LICENSE_LIBERATION standard_fonts-LICENSE_LIBERATION +mv apps/firstrunwizard/js/firstrunwizard-main.js.LICENSE.txt firstrunwizard-main.js-LICENSE.txt +mv apps/photos/js/photos-src_patchedRequest_js-src_views_Tags_vue.js.LICENSE.txt photos-src_patchedRequest_js-src_views_Tags_vue.js-LICENSE.txt +mv apps/photos/js/photos-vendors-node_modules_nextcloud_moment_dist_index_js-node_modules_nextcloud_moment_node_module-ca085a.js.LICENSE.txt photos-vendors-node_modules_nextcloud_moment_dist_index_js-node_modules_nextcloud_moment_node_module-ca085a.js-LICENSE.txt +mv apps/photos/js/photos-vendors-node_modules_webdav_dist_node_index_js-node_modules_webdav_dist_node_request_js.js.LICENSE.txt photos-vendors-node_modules_webdav_dist_node_index_js-node_modules_webdav_dist_node_request_js.js-LICENSE.txt +mv apps/photos/js/photos-src_views_Albums_vue.js.LICENSE.txt photos-src_views_Albums_vue.js-LICENSE.txt +mv apps/photos/js/photos-node_modules_nextcloud_moment_node_modules_moment_locale_sync_recursive_-src_patchedRequest_j-3cb869.js.LICENSE.txt photos-node_modules_nextcloud_moment_node_modules_moment_locale_sync_recursive_-src_patchedRequest_j-3cb869.js-LICENSE.txt +mv apps/photos/js/photos-vendors-node_modules_nextcloud_moment_dist_index_js-node_modules_moment_locale_af_js-node_mod-100548.js.LICENSE.txt photos-vendors-node_modules_nextcloud_moment_dist_index_js-node_modules_moment_locale_af_js-node_mod-100548.js-LICENSE.txt +mv apps/photos/js/photos-vendors-node_modules_nextcloud_vue_dist_Components_ActionButton_js-node_modules_nextcloud_vue-208129.js.LICENSE.txt photos-vendors-node_modules_nextcloud_vue_dist_Components_ActionButton_js-node_modules_nextcloud_vue-208129.js-LICENSE.txt +mv apps/photos/js/photos-src_mixins_GridConfig_js-src_utils_CancelableRequest_js-src_components_EmptyContent_vue-src_c-45f6cf.js.LICENSE.txt photos-src_mixins_GridConfig_js-src_utils_CancelableRequest_js-src_components_EmptyContent_vue-src_c-45f6cf.js-LICENSE.txt +mv apps/photos/js/photos-src_patchedRequest_js-node_modules_moment_locale_sync_recursive_-src_views_Timeline_vue.js.LICENSE.txt photos-src_patchedRequest_js-node_modules_moment_locale_sync_recursive_-src_views_Timeline_vue.js-LICENSE.txt +mv apps/notifications/js/notifications-settings.js.LICENSE.txt notifications-settings.js-LICENSE.txt +mv dist/settings-vue-settings-personal-security.js.LICENSE.txt settings-vue-settings-personal-security.js.LICENSE.txt +mv dist/core-login.js.LICENSE.txt core-login.js-LICENSE.txt +mv dist/files-sidebar.js.LICENSE.txt files-sidebar.js-LICENSE.txt +mv dist/core-recommendedapps.js.LICENSE.txt core-recommendedapps.js-LICENSE.txt +mv dist/files_sharing-main.js.LICENSE.txt files_sharing-main.js-LICENSE.txt +mv dist/dav-settings-personal-availability.js.LICENSE.txt dav-settings-personal-availability.js-LICENSE.txt +mv dist/weather_status-weather-status.js.LICENSE.txt weather_status-weather-status.js-LICENSE.txt +mv dist/core-profile.js.LICENSE.txt core-profile.js-LICENSE.txt +mv dist/settings-vue-settings-admin-basic-settings.js.LICENSE.txt settings-vue-settings-admin-basic-settings.js-LICENSE.txt +mv dist/settings-vue-settings-admin-security.js.LICENSE.txt settings-vue-settings-admin-security.js-LICENSE.txt +mv dist/core-files_client.js.LICENSE.txt core-files_client.js-LICENSE.txt +mv dist/systemtags-systemtags.js.LICENSE.txt systemtags-systemtags.js-LICENSE.txt +mv dist/comments-comments.js.LICENSE.txt comments-comments.js-LICENSE.txt +mv dist/files_versions-files_versions.js.LICENSE.txt files_versions-files_versions.js.LICENSE.txt +mv dist/accessibility-accessibility.js.LICENSE.txt accessibility-accessibility.js-LICENSE.txt +mv dist/twofactor_backupcodes-settings.js.LICENSE.txt twofactor_backupcodes-settings.js-LICENSE.txt +mv dist/updatenotification-updatenotification.js.LICENSE.txt updatenotification-updatenotification.js-LICENSE.txt +mv dist/settings-vue-settings-admin-delegation.js.LICENSE.txt settings-vue-settings-admin-delegation.js-LICENSE.txt +mv dist/core-systemtags.js.LICENSE.txt core-systemtags.js-LICENSE.txt +mv dist/comments-comments-app.js.LICENSE.txt comments-comments-app.js-LICENSE.txt +mv dist/core-files_fileinfo.js.LICENSE.txt core-files_fileinfo.js-LICENSE.txt +mv dist/files-main.js.LICENSE.txt files-main.js-LICENSE.txt +mv dist/core-main.js.LICENSE.txt core-main.js-LICENSE.txt +mv dist/files_sharing-additionalScripts.js.LICENSE.txt files_sharing-additionalScripts.js-LICENSE.txt +mv dist/settings-vue-settings-apps-users-management.js.LICENSE.txt settings-vue-settings-apps-users-management.js-LICENSE.txt +mv dist/settings-vue-settings-nextcloud-pdf.js.LICENSE.txt settings-vue-settings-nextcloud-pdf.js-LICENSE.txt +mv dist/settings-vue-settings-personal-info.js.LICENSE.txt settings-vue-settings-personal-info.js-LICENSE.txt +mv dist/settings-vue-settings-personal-webauthn.js.LICENSE.txt settings-vue-settings-personal-webauthn.js-LICENSE.txt +mv dist/user_status-dashboard.js.LICENSE.txt user_status-dashboard.js-LICENSE.txt +mv dist/user_status-menu.js.LICENSE.txt user_status-menu.js-LICENSE.txt +mv dist/workflowengine-workflowengine.js.LICENSE.txt workflowengine-workflowengine.js-LICENSE.txt +mv dist/accessibility-accessibilityoca.js.LICENSE.txt accessibility-accessibilityoca.js-LICENSE.txt +mv dist/comments-comments-tab.js.LICENSE.txt comments-comments-tab.js-LICENSE.txt +mv dist/core-install.js.LICENSE.txt core-install.js-LICENSE.txt +mv dist/core-unified-search.js.LICENSE.txt core-unified-search.js-LICENSE.txt +mv dist/dashboard-main.js.LICENSE.txt dashboard-main.js-LICENSE.txt +mv dist/files-personal-settings.js.LICENSE.txt files-personal-settings.js-LICENSE.txt +mv dist/files_sharing-files_sharing_tab.js.LICENSE.txt files_sharing-files_sharing_tab.js-LICENSE.txt +mv dist/files_sharing-personal-settings.js.LICENSE.txt files_sharing-personal-settings.js-LICENSE.txt +mv dist/files_trashbin-files_trashbin.js.LICENSE.txt files_trashbin-files_trashbin.js-LICENSE.txt +mv dist/oauth2-oauth2.js.LICENSE.txt oauth2-oauth2.js-LICENSE.txt +mv dist/settings-users-8351.js.LICENSE.txt settings-users-8351.js-LICENSE.txt +mv dist/core-common.js.LICENSE.txt core-common.js-LICENSE.txt -# case-sensitive list of partial matches to exclude from the nextcloud integrity checker -# include readme, license, other docs, and any files we move or patch during the build -excludedFilenames=" -README -readme -LICENSE -LICENCE -license -copying -COPYING -AUTHORS -htaccess -gitignore -user.ini -update.admin.php -Updater.php -occ -Checker.php -" -# nextcloud source files use tabs rather than spaces, ew -tabs=" " -cr=" -" - -# Add quotes, commas, and escaped newlines -for f in $excludedFilenames; do - formattedlist="$formattedlist$tabs'$f',\\$cr" -done - -# look for our sed placeholder we patched in earlier, then insert our formatted list of keywords -sed -i "s|//sedplaceholder|${formattedlist}|" lib/private/IntegrityCheck/Checker.php - -# Build nextcloud-defaults.inc from upstream .htaccess. We will install it later. -cat .htaccess >> %{SOURCE105} %check # Make sure there are no license files left over @@ -288,10 +535,10 @@ done install -pm 755 occ %{buildroot}%{_datadir}/%{name} # symlink config dir -ln -s ../../../%{_sysconfdir}/%{name} %{buildroot}%{_datadir}/%{name}/config +ln -sf %{_sysconfdir}/%{name} %{buildroot}%{_datadir}/%{name}/config # nextcloud looks for ca-bundle.crt in config dir -ln -s ../pki/ca-trust/extracted/pem/tls-ca-bundle.pem %{buildroot}%{_sysconfdir}/%{name}/ca-bundle.crt +ln -sf %{_sysconfdir}/pki/tls/certs/ca-bundle.crt %{buildroot}%{_sysconfdir}/%{name}/ca-bundle.crt # set default config install -pm 644 %{SOURCE1} %{buildroot}%{_sysconfdir}/%{name}/config.php @@ -314,25 +561,10 @@ install -Dpm 644 %{SOURCE201} \ install -Dpm 644 %{SOURCE202} \ %{buildroot}%{_sysconfdir}/php-fpm.d/%{name}.conf -# php.ini config -install -Dpm 644 %{SOURCE203} \ - %{buildroot}%{_sysconfdir}/php.d/60-%{name}.ini - # Install the systemd timer install -Dpm 644 %{SOURCE2} %{buildroot}%{_unitdir}/nextcloud-cron.service install -Dpm 644 %{SOURCE3} %{buildroot}%{_unitdir}/nextcloud-cron.timer -# If there's a new installation activate the installation wizard -%post -INSTALLED=$(grep -c secret /etc/nextcloud/config.php) -if [ "${INSTALLED}" -eq "0" ]; then - echo "First time installation, enabling installation wizard" - touch %{_sysconfdir}/%{name}/CAN_INSTALL - chown apache:apache %{_sysconfdir}/%{name}/CAN_INSTALL -fi - -/usr/bin/systemctl restart php-fpm.service > /dev/null 2>&1 || : - %post httpd /usr/bin/systemctl reload httpd.service > /dev/null 2>&1 || : /usr/bin/systemctl reload php-fpm.service > /dev/null 2>&1 || : @@ -354,12 +586,11 @@ if [ $1 -eq 0 ]; then fi %files -%doc AUTHORS README.%{distro} MIGRATION.%{distro} config/config.sample.php +%doc AUTHORS README.fedora MIGRATION.fedora config/config.sample.php %license *-LICENSE %dir %attr(-,apache,apache) %{_sysconfdir}/%{name} # contains sensitive data (dbpassword, passwordsalt) %config(noreplace) %attr(0600,apache,apache) %{_sysconfdir}/%{name}/config.php -%config(noreplace) %{_sysconfdir}/php.d/60-%{name}.ini # need the symlink in confdir but it's not config %{_sysconfdir}/%{name}/ca-bundle.crt %{_datadir}/%{name} diff --git a/sources b/sources index 95997de..7e1df4f 100644 --- a/sources +++ b/sources @@ -1 +1,2 @@ -SHA512 (nextcloud-34.0.3.tar.bz2) = 3463dbbdeae5275a0791b115cf86aed41c5a138fdd19bb32ec12837a6698106b6f172e24fb1264a2d4e20b2b805bcf7841b2338e4e02f1fd5394fbed830cc695 +SHA512 (nextcloud-22.1.0.tar.bz2) = f591959c35a47d1e88e2aa1694968a36e4673ca55b5d5a9cf0ce6d1ee76002a6445a33ff040a061db0cb753321f59853f723b8dc7106ffda09eed468e5fb7dd3 +SHA512 (nextcloud-24.0.3.tar.bz2) = 92714758f542fa7aeb511761b4f1becc16dc64e5b4b2d54b3dc2fe6b3927b1a9a5a632c5b552efc591568752d7691e92aaab9e4f771435360db9b2c81977300e