260614d
Name:           nextcloud
4604120
Version:        22.0.0
417c20e
Release:        %autorelease
260614d
Summary:        Private file sync and share server
260614d
License:        AGPLv3+ and MIT and BSD and ASL 2.0 and WTFPL and CC-BY-SA and GPLv3+ and Adobe
260614d
URL:            http://nextcloud.com
ecf481a
Source0:        https://download.nextcloud.com/server/releases/%{name}-%{version}.tar.bz2
260614d
b7bf575
# basic nextcloud config.php, nextcloud's
260614d
# initial setup will fill out other settings appropriately
b7bf575
Source1:        %{name}-config.php
ff74a2f
# Systemd timer for background jobs
b7bf575
Source2:       %{name}-systemd-timer.service
b7bf575
Source3:       %{name}-systemd-timer.timer
b7bf575
# httpd config files
b7bf575
Source100:      %{name}-httpd.conf
b7bf575
Source101:      %{name}-access-httpd.conf.avail
b7bf575
Source102:      %{name}-auth-any.inc
b7bf575
Source103:      %{name}-auth-local.inc
b7bf575
Source104:      %{name}-auth-none.inc
b7bf575
Source105:      %{name}-defaults.inc
b7bf575
# nginx/php-fpm  config files
b7bf575
Source200:      %{name}-default-nginx.conf
b7bf575
Source201:      %{name}-conf-nginx.conf
b7bf575
Source202:      %{name}-php-fpm.conf
b7bf575
# packaging notes and doc
b7bf575
Source300:      %{name}-README.fedora
b7bf575
Source301:      %{name}-mysql.txt
b7bf575
Source302:      %{name}-postgresql.txt
b7bf575
Source303:      %{name}-MIGRATION.fedora
ff74a2f
0d336cb
# Remove updater version check, we know that updates across more than one
0d336cb
# version are possible
b7bf575
Patch0:         0000-disable-update-version-check.patch
f290bf0
# Change occ shebang to /usr/bin/php
f290bf0
Patch1:         0001-mangle-shebang.patch
0d336cb
260614d
BuildArch:      noarch
ff74a2f
# For the systemd macros
0eba130
%if 0%{?fedora} > 29
0eba130
BuildRequires:  systemd-rpm-macros
0eba130
%else
ff74a2f
BuildRequires:  systemd
0eba130
%endif
260614d
# expand pear macros on install
260614d
BuildRequires:  php-pear
260614d
b7bf575
# Require one webserver and database backend
260614d
Requires:       %{name}-webserver = %{version}-%{release}
260614d
Requires:       %{name}-database = %{version}-%{release}
cc418ad
# Require php CLI for occ command
cc418ad
Requires:       php-cli
260614d
# Core PHP libs/extensions required by OC core
260614d
Requires:       php-curl
260614d
Requires:       php-dom
260614d
Requires:       php-exif
260614d
Requires:       php-fileinfo
260614d
Requires:       php-gd
260614d
Requires:       php-iconv
260614d
Requires:       php-json
260614d
Requires:       php-ldap
260614d
Requires:       php-mbstring
260614d
Requires:       php-openssl
260614d
Requires:       php-pcre
260614d
Requires:       php-pdo
260614d
Requires:       php-session
260614d
Requires:       php-simplexml
260614d
Requires:       php-xmlwriter
260614d
Requires:       php-spl
260614d
Requires:       php-zip
260614d
Requires:       php-filter
Ivan Chavero 65e2599
Requires:       php-ldap
Ivan Chavero 65e2599
Requires:       php-smbclient
Ivan Chavero 65e2599
Requires:       php-gmp
a88ee0f
Requires:       php-process
Ivan Chavero 65e2599
Requires:       php-pecl-imagick
Ivan Chavero 65e2599
Requires:       php-pecl-memcached
Ivan Chavero 65e2599
Requires:       php-pecl-apcu
Ivan Chavero 65e2599
Requires:       php-pecl-redis5
b7bf575
# For systemd support during install/uninstall
b7bf575
%{?systemd_requires}
ce3ab7f
# the CA cert bundle is linked to from the config dir
ce3ab7f
Requires:       %{_sysconfdir}/pki/tls/certs/ca-bundle.crt
ce3ab7f
67aaf62
# Bundled composer libraries
67aaf62
# many of these can be unbundled
c7217d1
Provides: bundled(php-composer(icewind/smb)) = 3.2.7
c7217d1
Provides: bundled(php-composer(icewind/streams)) = 0.7.1
c7217d1
Provides: bundled(php-composer(aws/aws-sdk-php)) = 3.171.21
c7217d1
Provides: bundled(php-composer(bantu/ini-get-wrapper)) = 1.0.1
c7217d1
Provides: bundled(php-composer(beberlei/assert)) = 3.3.0
c7217d1
Provides: bundled(php-composer(brick/math)) = 0.9.1
c7217d1
Provides: bundled(php-composer(christophwurst/id3parser)) = 0.1.1
c7217d1
Provides: bundled(php-composer(composer/package-versions-deprecated)) = 1.11.99.1
c7217d1
Provides: bundled(php-composer(deepdiver/zipstreamer)) = 2.0.0
c7217d1
Provides: bundled(php-composer(deepdiver1975/tarstreamer)) = 2.0.0
c7217d1
Provides: bundled(php-composer(doctrine/cache)) = 1.10.2
c7217d1
Provides: bundled(php-composer(doctrine/dbal)) = 3.0.0
c7217d1
Provides: bundled(php-composer(doctrine/event-manager)) = 1.1.1
c7217d1
Provides: bundled(php-composer(doctrine/lexer)) = 1.2.1
c7217d1
Provides: bundled(php-composer(egulias/email-validator)) = 2.1.25
c7217d1
Provides: bundled(php-composer(fgrosse/phpasn1)) = 2.2.0
c7217d1
Provides: bundled(php-composer(giggsey/libphonenumber-for-php)) = 8.12.16
c7217d1
Provides: bundled(php-composer(giggsey/locale)) = 1.9
c7217d1
Provides: bundled(php-composer(guzzlehttp/guzzle)) = 7.2.0
c7217d1
Provides: bundled(php-composer(guzzlehttp/promises)) = 1.4.0
c7217d1
Provides: bundled(php-composer(guzzlehttp/psr7)) = 1.7.0
c7217d1
Provides: bundled(php-composer(guzzlehttp/uri-template)) = 0.2.0
c7217d1
Provides: bundled(php-composer(icewind/searchdav)) = 2.0.0
c7217d1
Provides: bundled(php-composer(icewind/streams)) = 0.7.2
c7217d1
Provides: bundled(php-composer(justinrainbow/json-schema)) = 5.2.10
c7217d1
Provides: bundled(php-composer(league/flysystem)) = 1.1.3
c7217d1
Provides: bundled(php-composer(league/mime-type-detection)) = 1.7.0
c7217d1
Provides: bundled(php-composer(league/uri)) = 6.4.0
c7217d1
Provides: bundled(php-composer(league/uri-interfaces)) = 2.2.0
c7217d1
Provides: bundled(php-composer(microsoft/azure-storage-blob)) = 1.5.2
c7217d1
Provides: bundled(php-composer(microsoft/azure-storage-common)) = 1.5.1
c7217d1
Provides: bundled(php-composer(mtdowling/jmespath.php)) = 2.6.0
c7217d1
Provides: bundled(php-composer(nextcloud/lognormalizer)) = 1.0.0
c7217d1
Provides: bundled(php-composer(nikic/php-parser)) = 4.10.4
c7217d1
Provides: bundled(php-composer(opis/closure)) = 3.6.1
c7217d1
Provides: bundled(php-composer(patchwork/jsqueeze)) = 2.0.5
c7217d1
Provides: bundled(php-composer(pear/archive_tar)) = 1.4.12
c7217d1
Provides: bundled(php-composer(pear/console_getopt)) = 1.4.3
c7217d1
Provides: bundled(php-composer(pear/pear-core-minimal)) = 1.10.10
c7217d1
Provides: bundled(php-composer(pear/pear_exception)) = 1.0.1
c7217d1
Provides: bundled(php-composer(php-ds/php-ds)) = 1.3.0
c7217d1
Provides: bundled(php-composer(php-http/guzzle7-adapter)) = 0.1.1
c7217d1
Provides: bundled(php-composer(php-http/httplug)) = 2.2.0
c7217d1
Provides: bundled(php-composer(php-http/promise)) = 1.1.0
c7217d1
Provides: bundled(php-composer(php-opencloud/openstack)) = 3.1.0
c7217d1
Provides: bundled(php-composer(phpseclib/phpseclib)) = 2.0.30
c7217d1
Provides: bundled(php-composer(pimple/pimple)) = 3.3.1
c7217d1
Provides: bundled(php-composer(psr/container)) = 1.0.0
c7217d1
Provides: bundled(php-composer(psr/http-client)) = 1.0.1
c7217d1
Provides: bundled(php-composer(psr/http-factory)) = 1.0.1
c7217d1
Provides: bundled(php-composer(psr/http-message)) = 1.0.1
c7217d1
Provides: bundled(php-composer(psr/log)) = 1.1.3
c7217d1
Provides: bundled(php-composer(punic/punic)) = 1.6.5
c7217d1
Provides: bundled(php-composer(ralouphie/getallheaders)) = 3.0.3
c7217d1
Provides: bundled(php-composer(ramsey/collection)) = 1.1.1
c7217d1
Provides: bundled(php-composer(ramsey/uuid)) = 4.1.1
c7217d1
Provides: bundled(php-composer(sabre/dav)) = 4.1.4
c7217d1
Provides: bundled(php-composer(sabre/event)) = 5.1.2
c7217d1
Provides: bundled(php-composer(sabre/http)) = 5.1.1
c7217d1
Provides: bundled(php-composer(sabre/uri)) = 2.2.1
c7217d1
Provides: bundled(php-composer(sabre/vobject)) = 4.3.3
c7217d1
Provides: bundled(php-composer(sabre/xml)) = 2.2.3
c7217d1
Provides: bundled(php-composer(scssphp/scssphp)) = 1.4.1
c7217d1
Provides: bundled(php-composer(spomky-labs/base64url)) = 2.0.4
c7217d1
Provides: bundled(php-composer(spomky-labs/cbor-php)) = 2.0.1
c7217d1
Provides: bundled(php-composer(stecman/symfony-console-completion)) = 0.11.0
c7217d1
Provides: bundled(php-composer(swiftmailer/swiftmailer)) = 6.2.5
c7217d1
Provides: bundled(php-composer(symfony/console)) = 4.4.19
c7217d1
Provides: bundled(php-composer(symfony/event-dispatcher)) = 4.4.19
c7217d1
Provides: bundled(php-composer(symfony/event-dispatcher-contracts)) = 1.1.9
c7217d1
Provides: bundled(php-composer(symfony/polyfill-ctype)) = 1.22.0
c7217d1
Provides: bundled(php-composer(symfony/polyfill-iconv)) = 1.22.0
c7217d1
Provides: bundled(php-composer(symfony/polyfill-intl-grapheme)) = 1.22.0
c7217d1
Provides: bundled(php-composer(symfony/polyfill-intl-idn)) = 1.22.0
c7217d1
Provides: bundled(php-composer(symfony/polyfill-intl-normalizer)) = 1.22.0
c7217d1
Provides: bundled(php-composer(symfony/polyfill-mbstring)) = 1.22.0
c7217d1
Provides: bundled(php-composer(symfony/polyfill-php72)) = 1.22.0
c7217d1
Provides: bundled(php-composer(symfony/polyfill-php73)) = 1.22.0
c7217d1
Provides: bundled(php-composer(symfony/polyfill-php80)) = 1.22.0
c7217d1
Provides: bundled(php-composer(symfony/process)) = 4.4.19
c7217d1
Provides: bundled(php-composer(symfony/routing)) = 4.4.19
c7217d1
Provides: bundled(php-composer(symfony/service-contracts)) = 2.2.0
c7217d1
Provides: bundled(php-composer(symfony/translation)) = 4.4.19
c7217d1
Provides: bundled(php-composer(symfony/translation-contracts)) = 2.3.0
c7217d1
Provides: bundled(php-composer(thecodingmachine/safe)) = 1.3.3
c7217d1
Provides: bundled(php-composer(web-auth/cose-lib)) = 3.3.1
c7217d1
Provides: bundled(php-composer(web-auth/metadata-service)) = 3.3.1
c7217d1
Provides: bundled(php-composer(web-auth/webauthn-lib)) = 3.3.1
67aaf62
67aaf62
# OpenIconic icons bundled via sabre-dav
ce3ab7f
Provides:       bundled(openiconic-fonts) = 1.0.0
67aaf62
# jscolor bundled via themeing app
ce3ab7f
Provides:       bundled(jscolor) = 2.0.4
67aaf62
# jquery-ui-multiselect bundled via user_ldap app
ce3ab7f
Provides:       bundled(jquery-ui-multiselect) = 0.3.1
67aaf62
# zxcvbn bundled via core
ce3ab7f
Provides:       bundled(zxcvbn) = 4.4.2
260614d
260614d
%description
260614d
NextCloud gives you universal access to your files through a web interface or
260614d
WebDAV. It also provides a platform to easily view & sync your contacts,
260614d
calendars and bookmarks across all your devices and enables basic editing right
260614d
on the web. NextCloud is extendable via a simple but powerful API for
260614d
applications and plugins.
260614d
260614d
260614d
%package httpd
b7bf575
Summary:        Httpd integration for NextCloud
b7bf575
Provides:       %{name}-webserver = %{version}-%{release}
b7bf575
Requires:       %{name} = %{version}-%{release}
260614d
# PHP dependencies
150ec7a
Requires:       php-fpm httpd
260614d
260614d
%description httpd
260614d
%{summary}.
260614d
260614d
260614d
%package nginx
ce3ab7f
Summary:        Nginx integration for NextCloud
ce3ab7f
Provides:       %{name}-webserver = %{version}-%{release}
ce3ab7f
Requires:       %{name} = %{version}-%{release}
260614d
# PHP dependencies
ce3ab7f
Requires:       php-fpm nginx
260614d
260614d
%description nginx
260614d
%{summary}.
260614d
260614d
260614d
%package mysql
ce3ab7f
Summary:        MySQL database support for NextCloud
ce3ab7f
Provides:       %{name}-database = %{version}-%{release}
ce3ab7f
Requires:       %{name} = %{version}-%{release}
260614d
# From getSupportedDatabases, mysql => pdo, mysql
ce3ab7f
Requires:       php-mysqlnd
260614d
260614d
%description mysql
260614d
This package ensures the necessary dependencies are in place for NextCloud to
260614d
work with MySQL / MariaDB databases. It does not require a MySQL / MariaDB
260614d
server to be installed, as you may well wish to use a remote database
260614d
server.
260614d
260614d
If you want the database to be on the same system as NextCloud itself, you must
260614d
also install and enable a MySQL / MariaDB server package. See README.mysql for
260614d
more details.
260614d
260614d
%package postgresql
ce3ab7f
Summary:        PostgreSQL database support for NextCloud
ce3ab7f
Provides:       %{name}-database = %{version}-%{release}
ce3ab7f
Requires:       %{name} = %{version}-%{release}
260614d
# From getSupportedDatabases, pgsql => function, pg_connect
ce3ab7f
Requires:       php-pgsql
260614d
260614d
%description postgresql
260614d
This package ensures the necessary dependencies are in place for NextCloud to
260614d
work with a PostgreSQL database. It does not require the PostgreSQL server
260614d
package to be installed, as you may well wish to use a remote database
260614d
server.
260614d
260614d
If you want the database to be on the same system as NextCloud itself, you must
260614d
also install and enable the PostgreSQL server package. See README.postgresql
260614d
for more details.
260614d
260614d
260614d
%package sqlite
ce3ab7f
Summary:        SQLite 3 database support for NextCloud
ce3ab7f
Provides:       %{name}-database = %{version}-%{release}
ce3ab7f
Requires:       %{name} = %{version}-%{release}
260614d
# From getSupportedDatabases, pgsql => class, SQLite3
ce3ab7f
260614d
%description sqlite
260614d
This package ensures the necessary dependencies are in place for NextCloud to
260614d
work with an SQLite 3 database stored on the local system.
260614d
260614d
260614d
%prep
260614d
%autosetup -n %{name} -p1
260614d
260614d
# patch backup files and .git stuff
260614d
find . -name \*.orig    -type f        -exec rm    {} \; -print
260614d
find . -name .gitignore -type f        -exec rm    {} \; -print
260614d
find . -name .github    -type d -prune -exec rm -r {} \; -print
260614d
260614d
# prepare package doc
b7bf575
cp %{SOURCE300} README.fedora
b7bf575
cp %{SOURCE301} README.mysql
b7bf575
cp %{SOURCE302} README.postgresql
b7bf575
cp %{SOURCE303} MIGRATION.fedora
260614d
260614d
# Locate license files and put them sensibly in place
c7217d1
# get rid of all composer licenses
c7217d1
find -wholename "*/composer/LICENSE" -exec mv {} composer-LICENSE \;
c7217d1
c7217d1
# find all remaining using "find -name '*LICENCE*' -name '*LICENSE*' -o -name '*COPYING*' | sort"
010fbeb
mv 3rdparty/aws/aws-sdk-php/LICENSE.md aws-LICENSE.md
Ivan Chavero 65e2599
mv 3rdparty/bantu/ini-get-wrapper/LICENSE bantu-LICENSE
010fbeb
mv 3rdparty/beberlei/assert/LICENSE beberlei-LICENSE
c7217d1
mv 3rdparty/brick/math/LICENSE brick-LICENSE
010fbeb
mv 3rdparty/christophwurst/id3parser/LICENSE christophwurst-LICENSE
c7217d1
mv 3rdparty/composer/package-versions-deprecated/LICENSE composer-LICENSE
010fbeb
mv 3rdparty/deepdiver1975/tarstreamer/LICENSE deepdiver1975-LICENSE
010fbeb
mv 3rdparty/deepdiver/zipstreamer/COPYING deepdiver-COPYING
010fbeb
mv 3rdparty/doctrine/cache/LICENSE doctrine-LICENSE
010fbeb
mv 3rdparty/doctrine/dbal/LICENSE doctrine-LICENSE
010fbeb
mv 3rdparty/doctrine/event-manager/LICENSE doctrine-LICENSE
010fbeb
mv 3rdparty/egulias/email-validator/LICENSE egulias-LICENSE
010fbeb
mv 3rdparty/fgrosse/phpasn1/LICENSE fgrosse-LICENSE
c7217d1
mv 3rdparty/giggsey/libphonenumber-for-php/LICENSE giggsey-LICENSE
c7217d1
mv 3rdparty/giggsey/locale/LICENSE giggsey-LICENSE
010fbeb
mv 3rdparty/guzzlehttp/guzzle/LICENSE guzzlehttp-LICENSE
010fbeb
mv 3rdparty/guzzlehttp/promises/LICENSE guzzlehttp-LICENSE
010fbeb
mv 3rdparty/guzzlehttp/psr7/LICENSE guzzlehttp-LICENSE
c7217d1
mv 3rdparty/guzzlehttp/uri-template/LICENSE.md guzzlehttp-LICENSE
010fbeb
mv 3rdparty/icewind/searchdav/LICENSE icewind-LICENSE
010fbeb
mv 3rdparty/justinrainbow/json-schema/LICENSE justinrainbow-LICENSE
010fbeb
mv 3rdparty/league/flysystem/LICENSE league-LICENSE
c7217d1
mv 3rdparty/league/mime-type-detection/LICENSE league-LICENSE
010fbeb
mv 3rdparty/league/uri-interfaces/LICENSE league-LICENSE
010fbeb
mv 3rdparty/league/uri/LICENSE league-LICENSE
010fbeb
mv '3rdparty/LICENSE INFO' 3rdparty-LICENSE_INFO
010fbeb
mv 3rdparty/microsoft/azure-storage-blob/LICENSE microsoft-LICENSE
010fbeb
mv 3rdparty/microsoft/azure-storage-common/LICENSE microsoft-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/mtdowling/jmespath.php/LICENSE mtdowling-LICENSE
266fce3
mv 3rdparty/nextcloud/lognormalizer/COPYING lognormalizer-LICENSE
010fbeb
mv 3rdparty/nikic/php-parser/LICENSE nikic-LICENSE
c7217d1
mv 3rdparty/opis/closure/LICENSE opis-LICENSE
010fbeb
mv 3rdparty/patchwork/jsqueeze/LICENSE.ASL20 patchwork-LICENSE-APACHE
010fbeb
mv 3rdparty/patchwork/jsqueeze/LICENSE.GPLv2 patchwork-LICENSE-GPL
010fbeb
mv 3rdparty/pear/console_getopt/LICENSE pear-LICENSE
010fbeb
mv 3rdparty/pear/pear_exception/LICENSE pear-LICENSE
c7217d1
mv 3rdparty/php-ds/php-ds/LICENSE php-ds-LICENSE
c7217d1
mv 3rdparty/php-http/guzzle7-adapter/LICENSE php-http-LICENSE
010fbeb
mv 3rdparty/php-http/httplug/LICENSE php-http-LICENSE
010fbeb
mv 3rdparty/php-http/promise/LICENSE php-http-LICENSE
010fbeb
mv 3rdparty/php-opencloud/openstack/LICENSE php-opencloud-LICENSE
010fbeb
mv 3rdparty/phpseclib/phpseclib/LICENSE phpseclib-LICENSE
4604120
mv 3rdparty/psr/event-dispatcher/LICENSE psr-LICENSE
010fbeb
mv 3rdparty/psr/container/LICENSE psr-LICENSE
010fbeb
mv 3rdparty/psr/http-client/LICENSE psr-LICENSE
010fbeb
mv 3rdparty/psr/http-factory/LICENSE psr-LICENSE
010fbeb
mv 3rdparty/psr/http-message/LICENSE psr-LICENSE
010fbeb
mv 3rdparty/psr/log/LICENSE psr-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/punic/punic/LICENSE.txt punic-LICENSE.txt
Ivan Chavero 65e2599
mv 3rdparty/punic/punic/UNICODE-LICENSE.txt punic-UNICODE-LICENSE
010fbeb
mv 3rdparty/ralouphie/getallheaders/LICENSE ralouphie-LICENSE
c7217d1
mv 3rdparty/ramsey/collection/LICENSE ramsey-LICENSE
010fbeb
mv 3rdparty/ramsey/uuid/LICENSE ramsey-LICENSE
010fbeb
mv 3rdparty/sabre/dav/lib/DAV/Browser/assets/openiconic/ICON-LICENSE sabre-ICON-LICENSE
010fbeb
mv 3rdparty/sabre/dav/LICENSE sabre-LICENSE
010fbeb
mv 3rdparty/sabre/event/LICENSE sabre-LICENSE
010fbeb
mv 3rdparty/sabre/http/LICENSE sabre-LICENSE
010fbeb
mv 3rdparty/sabre/uri/LICENSE sabre-LICENSE
010fbeb
mv 3rdparty/sabre/vobject/LICENSE sabre-LICENSE
010fbeb
mv 3rdparty/sabre/xml/LICENSE sabre-LICENSE
010fbeb
mv 3rdparty/scssphp/scssphp/LICENSE.md scssphp-LICENSE.md
010fbeb
mv 3rdparty/spomky-labs/base64url/LICENSE spomky-labs-LICENSE
010fbeb
mv 3rdparty/spomky-labs/cbor-php/LICENSE spomky-labs-LICENSE
010fbeb
mv 3rdparty/stecman/symfony-console-completion/LICENCE stecman-LICENSE
010fbeb
mv 3rdparty/symfony/console/LICENSE symfony-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/symfony/event-dispatcher-contracts/LICENSE symfony-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/symfony/event-dispatcher/LICENSE symfony-LICENSE
010fbeb
mv 3rdparty/symfony/polyfill-ctype/LICENSE symfony-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/symfony/polyfill-iconv/LICENSE symfony-LICENSE
c7217d1
mv 3rdparty/symfony/polyfill-intl-grapheme/LICENSE symfony-LICENSE
010fbeb
mv 3rdparty/symfony/polyfill-intl-idn/LICENSE symfony-LICENSE
c7217d1
mv 3rdparty/symfony/polyfill-intl-normalizer/LICENSE symfony-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/symfony/polyfill-mbstring/LICENSE symfony-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/symfony/polyfill-php72/LICENSE symfony-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/symfony/polyfill-php73/LICENSE symfony-LICENSE
010fbeb
mv 3rdparty/symfony/polyfill-php80/LICENSE symfony-LICENSE
010fbeb
mv 3rdparty/symfony/process/LICENSE symfony-LICENSE
010fbeb
mv 3rdparty/symfony/routing/LICENSE symfony-LICENSE
010fbeb
mv 3rdparty/symfony/service-contracts/LICENSE symfony-LICENSE
010fbeb
mv 3rdparty/symfony/translation-contracts/LICENSE symfony-LICENSE
010fbeb
mv 3rdparty/symfony/translation/LICENSE symfony-LICENSE
c7217d1
mv 3rdparty/thecodingmachine/safe/LICENSE thecodingmachine-LICENSE
Ivan Chavero a4e7ed8
mv 3rdparty/web-auth/cose-lib/LICENSE web-auth-LICENSE
Ivan Chavero a4e7ed8
mv 3rdparty/web-auth/metadata-service/LICENSE web-auth-LICENSE
Ivan Chavero a4e7ed8
mv 3rdparty/web-auth/webauthn-lib/LICENSE web-auth-LICENSE
4604120
mv apps/activity/js/activity-sidebar.js.LICENSE.txt activity-sidebar.js-LICENSE
4604120
mv apps/circles/LICENSE circles-LICENSE
010fbeb
mv apps/cloud_federation_api/LICENSE cloud_federation_api-LICENSE
c7217d1
mv apps/files_external/3rdparty/icewind/smb/LICENSE.txt icewind-LICENSE
c7217d1
mv apps/files_external/3rdparty/icewind/streams/LICENCE icewind-LICENSE
4604120
mv apps/files_pdfviewer/js/files_pdfviewer-workersrc.js.LICENSE.txt files_pdfviewer-workersrc.js-LICENSE
4604120
mv apps/files_pdfviewer/js/files_pdfviewer-main.js.LICENSE.txt files_pdfviewer-main.js-LICENSE
4604120
mv apps/files_pdfviewer/js/files_pdfviewer-public.js.LICENSE.txt files_pdfviewer-public.js-LICENSE
010fbeb
mv apps/files_pdfviewer/js/pdfjs/LICENSE js-pdfjs-LICENSE
010fbeb
mv apps/files_pdfviewer/js/pdfjs/web/cmaps/LICENSE js-pdfjs-cmaps-LICENSE
010fbeb
mv apps/files_rightclick/COPYING files_rightclick-COPYING
010fbeb
mv apps/files_rightclick/LICENSE files_rightclick-LICENSE
4604120
mv apps/logreader/build/main.js.LICENSE.txt logreader-main.js-LICENSE
010fbeb
mv apps/nextcloud_announcements/COPYING nextcloud_announcements-COPYING
010fbeb
mv apps/notifications/COPYING notifications-LICENSE
4604120
mv apps/notifications/js/notifications-main.js.LICENSE.txt notifications-main.js-LICENSE
010fbeb
mv apps/password_policy/LICENSE password_policy-LICENSE
4604120
mv apps/password_policy/js/password_policy-settings.js.LICENSE.txt password_policy-settings.js-LICENSE
010fbeb
mv apps/photos/COPYING photos-COPYING
4604120
mv apps/photos/js/photos-main.js.LICENSE.txt photos-main.js-LICENSE
010fbeb
mv apps/privacy/COPYING privacy-COPYING
4604120
mv apps/privacy/js/privacy-main.js.LICENSE.txt privacy-main.js-LICENSE
Ivan Chavero 65e2599
mv apps/recommendations/LICENSE recommendations-LICENSE
010fbeb
mv apps/serverinfo/COPYING serverinfo-LICENSE
010fbeb
mv apps/survey_client/COPYING survey_client-LICENSE
Ivan Chavero 65e2599
mv apps/text/COPYING text-COPYING
010fbeb
mv apps/theming/js/3rdparty/jscolor/LICENSE.txt jscolor-LICENSE
010fbeb
mv apps/user_ldap/vendor/ui-multiselect/MIT-LICENSE js-jqueryui-multiselect-LICENSE
010fbeb
mv apps/viewer/COPYING viewer-COPYING
4604120
mv apps/viewer/js/viewer-main.js.LICENSE.txt viewer-main.js-LICENSE
010fbeb
mv COPYING nextcloud-LICENSE
010fbeb
mv core/fonts/LICENSE_OFL.txt fonts-LICENSE
010fbeb
mv core/vendor/zxcvbn/LICENSE.txt zxcvbn-LICENSE
260614d
Ivan Chavero 65e2599
%check
260614d
# Make sure there are no license files left over
c7217d1
: Check for leftover license files
c7217d1
find . -mindepth 2 \( -name '*LICENSE*' -o -name '*LICENCE*' -o  -name '*COPYING*' \)
260614d
nb=$( find . -mindepth 2 \( -name '*LICENSE*' -o -name '*LICENCE*' -o  -name '*COPYING*' \) | wc -l )
260614d
if [ $nb -gt 0 ]
260614d
  then
c7217d1
  false Found unexpected licenses to verify
260614d
fi
260614d
260614d
260614d
%build
260614d
# Nothing to build
260614d
260614d
%install
260614d
install -dm 755 %{buildroot}%{_datadir}/%{name}
260614d
260614d
# create nextcloud datadir
260614d
mkdir -p %{buildroot}%{_localstatedir}/lib/%{name}/data
260614d
# create writable app dir for appstore
260614d
mkdir -p %{buildroot}%{_localstatedir}/lib/%{name}/apps
260614d
# create nextcloud sysconfdir
260614d
mkdir -p %{buildroot}%{_sysconfdir}/%{name}
260614d
260614d
# install content
260614d
for d in $(find . -mindepth 1 -maxdepth 1 -type d | grep -v config); do
260614d
    cp -a "$d" %{buildroot}%{_datadir}/%{name}
260614d
done
260614d
f290bf0
for f in {*.php,*.html,robots.txt}; do
260614d
    install -pm 644 "$f" %{buildroot}%{_datadir}/%{name}
260614d
done
260614d
f290bf0
# occ should be executable
f290bf0
install -pm 755 occ %{buildroot}%{_datadir}/%{name}
f290bf0
260614d
# symlink config dir
260614d
ln -sf %{_sysconfdir}/%{name} %{buildroot}%{_datadir}/%{name}/config
260614d
260614d
# nextcloud looks for ca-bundle.crt in config dir
260614d
ln -sf %{_sysconfdir}/pki/tls/certs/ca-bundle.crt %{buildroot}%{_sysconfdir}/%{name}/ca-bundle.crt
260614d
260614d
# set default config
b7bf575
install -pm 644 %{SOURCE1}    %{buildroot}%{_sysconfdir}/%{name}/config.php
260614d
260614d
# httpd config
b7bf575
install -Dpm 644 %{SOURCE100} \
260614d
    %{buildroot}%{_sysconfdir}/httpd/conf.d/%{name}.conf
1719ce2
install -Dpm 644 %{SOURCE101} \
1719ce2
    %{buildroot}%{_sysconfdir}/httpd/conf.d/%{name}-access.conf.avail
1719ce2
install -Dpm 644 %{SOURCE102} %{SOURCE103} %{SOURCE104} %{SOURCE105} \
260614d
    %{buildroot}%{_sysconfdir}/httpd/conf.d/
260614d
260614d
# nginx config
260614d
install -Dpm 644 %{SOURCE200} \
260614d
    %{buildroot}%{_sysconfdir}/nginx/default.d/%{name}.conf
260614d
install -Dpm 644 %{SOURCE201} \
260614d
    %{buildroot}%{_sysconfdir}/nginx/conf.d/%{name}.conf
150ec7a
150ec7a
# php-fpm config
260614d
install -Dpm 644 %{SOURCE202} \
260614d
    %{buildroot}%{_sysconfdir}/php-fpm.d/%{name}.conf
260614d
ff74a2f
# Install the systemd timer
b7bf575
install -Dpm 644 %{SOURCE2} %{buildroot}%{_unitdir}/nextcloud-cron.service
b7bf575
install -Dpm 644 %{SOURCE3} %{buildroot}%{_unitdir}/nextcloud-cron.timer
260614d
260614d
%post httpd
260614d
/usr/bin/systemctl reload httpd.service > /dev/null 2>&1 || :
150ec7a
/usr/bin/systemctl reload php-fpm.service > /dev/null 2>&1 || :
260614d
260614d
%postun httpd
260614d
if [ $1 -eq 0 ]; then
260614d
  /usr/bin/systemctl reload httpd.service > /dev/null 2>&1 || :
150ec7a
  /usr/bin/systemctl reload php-fpm.service > /dev/null 2>&1 || :
260614d
fi
260614d
260614d
%post nginx
0eba130
/usr/bin/systemctl reload nginx.service > /dev/null 2>&1 || :
0eba130
/usr/bin/systemctl reload php-fpm.service > /dev/null 2>&1 || :
260614d
260614d
%postun nginx
260614d
if [ $1 -eq 0 ]; then
260614d
  /usr/bin/systemctl reload nginx.service > /dev/null 2>&1 || :
260614d
  /usr/bin/systemctl reload php-fpm.service > /dev/null 2>&1 || :
260614d
fi
260614d
260614d
%files
ff74a2f
%doc AUTHORS README.fedora MIGRATION.fedora config/config.sample.php
260614d
%license *-LICENSE
260614d
%dir %attr(-,apache,apache) %{_sysconfdir}/%{name}
260614d
# contains sensitive data (dbpassword, passwordsalt)
260614d
%config(noreplace) %attr(0600,apache,apache) %{_sysconfdir}/%{name}/config.php
260614d
# need the symlink in confdir but it's not config
260614d
%{_sysconfdir}/%{name}/ca-bundle.crt
260614d
%{_datadir}/%{name}
260614d
%dir %attr(0755,apache,apache) %{_localstatedir}/lib/%{name}
260614d
# user data must not be world readable
260614d
%dir %attr(0750,apache,apache) %{_localstatedir}/lib/%{name}/data
260614d
%attr(-,apache,apache) %{_localstatedir}/lib/%{name}/apps
ff74a2f
%{_unitdir}/nextcloud-cron.service
ff74a2f
%{_unitdir}/nextcloud-cron.timer
260614d
260614d
%files httpd
260614d
%config(noreplace) %{_sysconfdir}/httpd/conf.d/%{name}.conf
260614d
%{_sysconfdir}/httpd/conf.d/%{name}-access.conf.avail
b7bf575
%{_sysconfdir}/httpd/conf.d/%{name}*.inc
150ec7a
%config(noreplace) %{_sysconfdir}/php-fpm.d/%{name}.conf
260614d
260614d
%files nginx
260614d
%config(noreplace) %{_sysconfdir}/nginx/default.d/%{name}.conf
260614d
%config(noreplace) %{_sysconfdir}/nginx/conf.d/%{name}.conf
260614d
%config(noreplace) %{_sysconfdir}/php-fpm.d/%{name}.conf
260614d
260614d
%files mysql
260614d
%doc README.mysql
260614d
%files postgresql
260614d
%doc README.postgresql
260614d
%files sqlite
260614d
260614d
260614d
%changelog
417c20e
%autochangelog