260614d
Name:           nextcloud
Ivan Chavero 65e2599
Version:        18.0.0
Ivan Chavero 65e2599
Release:        1%{?dist}
260614d
Summary:        Private file sync and share server
260614d
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
260614d
260614d
Source0:        https://download.nextcloud.com/server/releases/%{name}-%{version}.tar.bz2
260614d
260614d
Source1:        %{name}-httpd.conf
260614d
Source2:        %{name}-access-httpd.conf.avail
260614d
260614d
Source200:        %{name}-default-nginx.conf
260614d
Source201:        %{name}-conf-nginx.conf
260614d
Source202:        %{name}-php-fpm.conf
260614d
Source203:        %{name}-el7-php-fpm.conf
260614d
260614d
# Config snippets
260614d
Source100:      %{name}-auth-any.inc
260614d
Source101:      %{name}-auth-local.inc
260614d
Source102:      %{name}-auth-none.inc
260614d
Source103:      %{name}-defaults.inc
260614d
# packaging notes and doc
260614d
Source3:        %{name}-README.fedora
260614d
Source4:        %{name}-mysql.txt
260614d
Source5:        %{name}-postgresql.txt
ff74a2f
Source6:        %{name}-MIGRATION.fedora
260614d
# config.php containing just settings we want to specify, nextcloud's
260614d
# initial setup will fill out other settings appropriately
260614d
Source7:        %{name}-config.php
260614d
260614d
# Our autoloader for core
260614d
Source8:        %{name}-fedora-autoloader.php
260614d
ff74a2f
# Systemd timer for background jobs
ff74a2f
Source10:       %{name}-systemd-timer.service
ff74a2f
Source11:       %{name}-systemd-timer.timer
ff74a2f
260614d
BuildArch:      noarch
260614d
ff74a2f
# For the systemd macros
ff74a2f
%{?systemd_requires}
ff74a2f
BuildRequires:  systemd
260614d
260614d
# expand pear macros on install
260614d
BuildRequires:  php-pear
260614d
260614d
# For sanity %%check
260614d
BuildRequires:       php-cli
Ivan Chavero 65e2599
260614d
260614d
Requires:       %{name}-webserver = %{version}-%{release}
260614d
Requires:       %{name}-database = %{version}-%{release}
260614d
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-mysqlnd
Ivan Chavero 65e2599
Requires:       php-pgsql
Ivan Chavero 65e2599
Requires:       php-ldap
Ivan Chavero 65e2599
Requires:       php-smbclient
Ivan Chavero 65e2599
Requires:       php-imap
Ivan Chavero 65e2599
Requires:       php-gmp
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
260614d
260614d
260614d
# Need to label the httpd rw stuff correctly until base selinux policy updated
260614d
Requires(post):   %{_sbindir}/semanage
260614d
Requires(postun): %{_sbindir}/semanage
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
260614d
Summary:    Httpd integration for NextCloud
260614d
260614d
Provides:   %{name}-webserver = %{version}-%{release}
260614d
Requires:   %{name} = %{version}-%{release}
260614d
260614d
# PHP dependencies
260614d
Requires:       php
260614d
260614d
%description httpd
260614d
%{summary}.
260614d
260614d
260614d
%package nginx
260614d
Summary:    Nginx integration for NextCloud
260614d
260614d
Provides:   %{name}-webserver = %{version}-%{release}
260614d
Requires:   %{name} = %{version}-%{release}
260614d
260614d
# PHP dependencies
260614d
Requires:   php-fpm nginx
260614d
260614d
%description nginx
260614d
%{summary}.
260614d
260614d
260614d
%package mysql
260614d
Summary:    MySQL database support for NextCloud
260614d
260614d
Provides:   %{name}-database = %{version}-%{release}
260614d
Requires:   %{name} = %{version}-%{release}
260614d
260614d
# From getSupportedDatabases, mysql => pdo, mysql
Ivan Chavero 65e2599
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
260614d
Summary:    PostgreSQL database support for NextCloud
260614d
260614d
Provides:   %{name}-database = %{version}-%{release}
260614d
Requires:   %{name} = %{version}-%{release}
260614d
260614d
# From getSupportedDatabases, pgsql => function, pg_connect
260614d
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
260614d
Summary:    SQLite 3 database support for NextCloud
260614d
260614d
Provides:   %{name}-database = %{version}-%{release}
260614d
Requires:   %{name} = %{version}-%{release}
260614d
# From getSupportedDatabases, pgsql => class, SQLite3
260614d
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
260614d
cp %{SOURCE3} README.fedora
260614d
cp %{SOURCE4} README.mysql
260614d
cp %{SOURCE5} README.postgresql
ff74a2f
cp %{SOURCE6} MIGRATION.fedora
260614d
260614d
# Locate license files and put them sensibly in place
260614d
mv apps/files_pdfviewer/vendor/pdfjs/LICENSE js-pdfjs-LICENSE
260614d
mv apps/files_pdfviewer/vendor/pdfjs/web/cmaps/LICENSE js-pdfjs-cmaps-LICENSE
260614d
mv apps/notifications/COPYING notifications-LICENSE
260614d
mv apps/password_policy/LICENSE password_policy-LICENSE
260614d
mv apps/serverinfo/COPYING serverinfo-LICENSE
260614d
mv apps/survey_client/COPYING survey_client-LICENSE
260614d
mv apps/user_ldap/vendor/ui-multiselect/MIT-LICENSE js-jqueryui-multiselect-LICENSE
Ivan Chavero 65e2599
mv COPYING nextcloud-LICENSE
260614d
260614d
Ivan Chavero 65e2599
mv core/vendor/zxcvbn/LICENSE.txt zxcvbn-LICENSE
Ivan Chavero 65e2599
mv core/fonts/LICENSE_OFL.txt fonts-LICENSE
Ivan Chavero 65e2599
mv lib/composer/composer/LICENSE composer-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/sabre/vobject/LICENSE sabre-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/sabre/dav/LICENSE sabre-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/sabre/dav/lib/DAV/Browser/assets/openiconic/ICON-LICENSE sabre-ICON-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/sabre/event/LICENSE sabre-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/sabre/http/LICENSE sabre-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/sabre/xml/LICENSE sabre-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/sabre/uri/LICENSE sabre-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/nikic/php-parser/LICENSE nikic-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/bantu/ini-get-wrapper/LICENSE bantu-LICENSE
Ivan Chavero 65e2599
mv '3rdparty/LICENSE INFO' 3rdparty-LICENSE_INFO
Ivan Chavero 65e2599
mv 3rdparty/egulias/email-validator/LICENSE egulias-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/stecman/symfony-console-completion/LICENCE stecman-LICENCE
Ivan Chavero 65e2599
mv 3rdparty/jeremeamia/SuperClosure/LICENSE.md jeremeamia-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/microsoft/azure-storage-blob/LICENSE microsoft-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/microsoft/azure-storage-common/LICENSE microsoft-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/justinrainbow/json-schema/LICENSE justinrainbow-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/doctrine/collections/LICENSE doctrine-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/doctrine/event-manager/LICENSE doctrine-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/doctrine/common/LICENSE doctrine-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/doctrine/persistence/LICENSE doctrine-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/doctrine/reflection/LICENSE doctrine-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/doctrine/inflector/LICENSE doctrine-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/doctrine/cache/LICENSE doctrine-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/doctrine/dbal/LICENSE doctrine-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/doctrine/annotations/LICENSE doctrine-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/deepdiver/zipstreamer/COPYING deepdiver-COPYING
Ivan Chavero 65e2599
mv 3rdparty/mtdowling/jmespath.php/LICENSE mtdowling-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
Ivan Chavero 65e2599
mv 3rdparty/christophwurst/id3parser/LICENSE christophwurst-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/symfony/event-dispatcher-contracts/LICENSE symfony-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/symfony/process/LICENSE symfony-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/symfony/event-dispatcher/LICENSE symfony-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/symfony/polyfill-php56/LICENSE symfony-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/symfony/routing/LICENSE symfony-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/symfony/polyfill-intl-idn/LICENSE symfony-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/symfony/polyfill-iconv/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/translation/LICENSE symfony-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/symfony/console/LICENSE symfony-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/symfony/polyfill-php73/LICENSE symfony-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/symfony/translation-contracts/LICENSE symfony-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/symfony/service-contracts/LICENSE symfony-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/symfony/polyfill-util/LICENSE symfony-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/react/promise/LICENSE react-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/composer/LICENSE composer-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/icewind/searchdav/LICENSE icewind-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/aws/aws-sdk-php/LICENSE.md aws-LICENSE.md
Ivan Chavero 65e2599
mv 3rdparty/interfasys/lognormalizer/COPYING interfasys-COPYING
Ivan Chavero 65e2599
mv 3rdparty/php-opencloud/openstack/LICENSE php-opencloud-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/league/flysystem/LICENSE league-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/phpseclib/phpseclib/LICENSE phpseclib-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/deepdiver1975/tarstreamer/LICENSE deepdiver1975-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/patchwork/jsqueeze/LICENSE.GPLv2 patchwork-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/patchwork/jsqueeze/LICENSE.ASL20 patchwork-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/patchwork/utf8/LICENSE-GPL patchwork-LICENSE-GPL
Ivan Chavero 65e2599
mv 3rdparty/patchwork/utf8/LICENSE-APACHE patchwork-LICENSE-APACHE
Ivan Chavero 65e2599
mv 3rdparty/guzzlehttp/streams/LICENSE guzzlehttp-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/guzzlehttp/guzzle/LICENSE guzzlehttp-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/guzzlehttp/promises/LICENSE guzzlehttp-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/guzzlehttp/ringphp/LICENSE guzzlehttp-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/guzzlehttp/psr7/LICENSE guzzlehttp-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/pear/pear_exception/LICENSE pear-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/pear/console_getopt/LICENSE pear-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/leafo/scssphp/LICENSE.md leafo-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/ralouphie/getallheaders/LICENSE ralouphie-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/psr/log/LICENSE psr-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/psr/http-message/LICENSE psr-LICENSE
Ivan Chavero 65e2599
mv 3rdparty/psr/container/LICENSE psr-LICENSE
Ivan Chavero 65e2599
mv apps/encryption/composer/composer/LICENSE encryption-LICENSE
Ivan Chavero 65e2599
mv apps/federatedfilesharing/composer/composer/LICENSE federatedfilesharing-LICENSE
Ivan Chavero 65e2599
mv apps/theming/js/3rdparty/jscolor/LICENSE.txt jscolor-LICENSE
Ivan Chavero 65e2599
mv apps/viewer/COPYING viewer-COPYING
Ivan Chavero 65e2599
mv apps/workflowengine/composer/composer/LICENSE workflowengine-LICENSE
Ivan Chavero 65e2599
mv apps/dav/composer/composer/LICENSE dav-LICENSE
Ivan Chavero 65e2599
mv apps/nextcloud_announcements/COPYING nextcloud_announcements-COPYING
Ivan Chavero 65e2599
mv apps/files_trashbin/composer/composer/LICENSE files_trashbin-LICENSE
Ivan Chavero 65e2599
mv apps/photos/COPYING photos-COPYING
Ivan Chavero 65e2599
mv apps/comments/composer/composer/LICENSE comments-LICENSE
Ivan Chavero 65e2599
mv apps/files_external/3rdparty/composer/LICENSE files_external-LICENSE
Ivan Chavero 65e2599
mv apps/files_external/3rdparty/icewind/streams/LICENCE icewind_streams-LICENCE
Ivan Chavero 65e2599
mv apps/files_external/3rdparty/icewind/smb/LICENSE.txt icewind_smb-LICENSE
Ivan Chavero 65e2599
mv apps/oauth2/composer/composer/LICENSE oauth2-LICENSE
Ivan Chavero 65e2599
mv apps/systemtags/composer/composer/LICENSE systemtags-LICENSE
Ivan Chavero 65e2599
mv apps/accessibility/composer/composer/LICENSE accessibility-LICENSE
Ivan Chavero 65e2599
mv apps/updatenotification/composer/composer/LICENSE updatenotification-LICENSE
Ivan Chavero 65e2599
mv apps/cloud_federation_api/LICENSE cloud_federation_api-LICENSE
Ivan Chavero 65e2599
mv apps/cloud_federation_api/composer/composer/LICENSE cloud_federation_api-LICENSE
Ivan Chavero 65e2599
mv apps/provisioning_api/composer/composer/LICENSE provisioning_api-LICENSE
Ivan Chavero 65e2599
mv apps/admin_audit/composer/composer/LICENSE admin_audit-LICENSE
Ivan Chavero 65e2599
mv apps/files_sharing/composer/composer/LICENSE files_sharing-LICENSE
Ivan Chavero 65e2599
mv apps/federation/composer/composer/LICENSE federation-LICENSE
Ivan Chavero 65e2599
mv apps/recommendations/LICENSE recommendations-LICENSE
Ivan Chavero 65e2599
mv apps/settings/composer/composer/LICENSE settings-LICENSE
Ivan Chavero 65e2599
mv apps/user_ldap/composer/composer/LICENSE user_ldap-LICENSE
Ivan Chavero 65e2599
mv apps/files_rightclick/COPYING files_rightclick-COPYING
Ivan Chavero 65e2599
mv apps/files_rightclick/LICENSE files_rightclick-LICENSE
Ivan Chavero 65e2599
mv apps/sharebymail/composer/composer/LICENSE sharebymail-LICENSE
Ivan Chavero 65e2599
mv apps/privacy/COPYING privacy-COPYING
Ivan Chavero 65e2599
mv apps/files_versions/composer/composer/LICENSE files_versions-LICENSE
Ivan Chavero 65e2599
mv apps/files/composer/composer/LICENSE files-LICENSE
Ivan Chavero 65e2599
mv apps/twofactor_backupcodes/composer/composer/LICENSE twofactor_backupcodes-LICENSE
Ivan Chavero 65e2599
mv apps/lookup_server_connector/composer/composer/LICENSE lookup_server_connector-LICENSE
Ivan Chavero 65e2599
mv apps/text/COPYING text-COPYING
260614d
260614d
260614d
Ivan Chavero 65e2599
%check
260614d
# Make sure there are no license files left over
260614d
nb=$( find . -mindepth 2 \( -name '*LICENSE*' -o -name '*LICENCE*' -o  -name '*COPYING*' \) | wc -l )
260614d
if [ $nb -gt 0 ]
260614d
  then
260614d
  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
Ivan Chavero 65e2599
for f in {*.php,*.html,occ,robots.txt}; do
260614d
    install -pm 644 "$f" %{buildroot}%{_datadir}/%{name}
260614d
done
260614d
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
260614d
install -pm 644 %{SOURCE7}    %{buildroot}%{_sysconfdir}/%{name}/config.php
260614d
260614d
# httpd config
260614d
install -Dpm 644 %{SOURCE1} \
260614d
    %{buildroot}%{_sysconfdir}/httpd/conf.d/%{name}.conf
260614d
install -Dpm 644 %{SOURCE2} \
260614d
    %{buildroot}%{_sysconfdir}/httpd/conf.d/%{name}-access.conf.avail
260614d
install -Dpm 644 %{SOURCE100} %{SOURCE101} %{SOURCE102} %{SOURCE103} \
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
260614d
260614d
%if 0%{?el7}
260614d
install -Dpm 644 %{SOURCE203} \
260614d
    %{buildroot}%{_sysconfdir}/php-fpm.d/%{name}.conf
260614d
%else
260614d
install -Dpm 644 %{SOURCE202} \
260614d
    %{buildroot}%{_sysconfdir}/php-fpm.d/%{name}.conf
260614d
%endif
260614d
ff74a2f
# Install the systemd timer
ff74a2f
install -Dpm 644 %{SOURCE10} %{buildroot}%{_unitdir}/nextcloud-cron.service
ff74a2f
install -Dpm 644 %{SOURCE11} %{buildroot}%{_unitdir}/nextcloud-cron.timer
260614d
260614d
%post httpd
260614d
/usr/bin/systemctl reload httpd.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 || :
260614d
fi
260614d
260614d
%post nginx
260614d
%if 0%{?el7}
260614d
  # Work around missing php session directory for php-fpm in el7 bz#1338444
260614d
  if [ ! -d /var/lib/php/session ]
260614d
    then
260614d
    mkdir /var/lib/php/session
260614d
  fi
260614d
  /usr/bin/chown apache /var/lib/php/session
260614d
%endif
260614d
  /usr/bin/systemctl reload nginx.service > /dev/null 2>&1 || :
260614d
  /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
# the selinux policies only cover owncloud right now
260614d
# once this package is accepted pull request for selinux-policy to add
260614d
# these will be made
260614d
%post
Ivan Chavero 65e2599
touch '%{_sysconfdir}/%{name}/CAN_INSTALL'
260614d
semanage fcontext -a -t httpd_sys_rw_content_t '%{_sysconfdir}/%{name}/config.php' 2>/dev/null || :
260614d
semanage fcontext -a -t httpd_sys_rw_content_t '%{_sysconfdir}/%{name}' 2>/dev/null || :
260614d
semanage fcontext -a -t httpd_sys_rw_content_t '%{_localstatedir}/lib/%{name}(/.*)?' 2>/dev/null || :
260614d
restorecon -R %{_sysconfdir}/%{name} || :
260614d
restorecon -R %{_localstatedir}/lib/%{name} || :
260614d
260614d
%postun
260614d
if [ $1 -eq 0  ] ; then
260614d
semanage fcontext -d -t httpd_sys_rw_content_t '%{_sysconfdir}/%{name}/config.php' 2>/dev/null || :
260614d
semanage fcontext -d -t httpd_sys_rw_content_t '%{_sysconfdir}/%{name}' 2>/dev/null || :
260614d
semanage fcontext -d -t httpd_sys_rw_content_t '%{_localstatedir}/lib/%{name}(/.*)?' 2>/dev/null || :
260614d
fi
260614d
260614d
%files
ff74a2f
%doc AUTHORS README.fedora MIGRATION.fedora config/config.sample.php
260614d
260614d
%license *-LICENSE
260614d
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
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
260614d
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
260614d
%{_sysconfdir}/httpd/conf.d/*.inc
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
Ivan Chavero 65e2599
* Sat Feb 08 2020 Ivan Chavero <ichavero@redhat.com> - 18.0.0-1
Ivan Chavero 65e2599
- Refactor spec file
Ivan Chavero 65e2599
- Update to Nextcoud 18.0.0
Ivan Chavero 65e2599
cfc35de
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 10.0.4-9
cfc35de
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
cfc35de
c90d633
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 10.0.4-8
c90d633
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
c90d633
3773fcc
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 10.0.4-7
3773fcc
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
3773fcc
d4aacd9
* Wed Jan  9 2019 Remi Collet <remi@remirepo.net> - 10.0.4-6
d4aacd9
- drop dependency on php-password-compat #1658730
d4aacd9
- allow php-smbclient 1.0.0 #1663672
d4aacd9
- allow doctrine/dbal 2.x
d4aacd9
47a90a3
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 10.0.4-5
47a90a3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
47a90a3
f79de87
* Thu Feb 08 2018 Fedora Release Engineering <releng@fedoraproject.org> - 10.0.4-4
f79de87
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
f79de87
d7e134a
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 10.0.4-3
d7e134a
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
d7e134a
373171f
* Sat Mar 25 2017 Shawn Iwinski <shawn.iwinski@gmail.com> - 10.0.4-2
373171f
- Add max versions to dependencies to limit each to 1 major version
373171f
- Update some dependencies to use php-composer(*) instead of package names
373171f
- Prepare for php-composer(google/apiclient) version 2 and new version 1 package
373171f
ff74a2f
* Tue Feb 28 2017 James Hogarth <james.hogarth@gmail.com> - 10.0.4-1
ff74a2f
- update to 10.0.4
ff74a2f
- Add migration from owncloud documentation
ff74a2f
- Add systemd timer for background jobs
ff74a2f
260614d
* Wed Feb 08 2017 James Hogarth <james.hogarth@gmail.com> - 10.0.3-1
260614d
- update to 10.0.3
260614d
260614d
* Thu Oct 06 2016 James Hogarth <james.hogarth@gmail.com> - 10.0.1-1
260614d
- update to 10.0.1
260614d
260614d
* Mon Aug 01 2016 James Hogarth <james.hogarth@gmail.com> - 9.0.53-5
260614d
- Use lua to have a common srpm between epel7 and fedora
260614d
260614d
* Fri Jul 29 2016 James Hogarth <james.hogarth@gmail.com> - 9.0.53-4
260614d
- Don't unbundle javascript on EPEL7 due to versioning issues
260614d
260614d
* Fri Jul 29 2016 James Hogarth <james.hogarth@gmail.com> - 9.0.53-3
260614d
- Unbundle javascript libraries from core where possible
260614d
260614d
* Tue Jul 26 2016 James Hogarth <james.hogarth@gmail.com> - 9.0.53-2
260614d
- Update the autoloader to use the path from the approved package
260614d
260614d
* Tue Jul 19 2016 James Hogarth <james.hogarth@gmail.com> - 9.0.53-1
260614d
- New release 9.0.53
260614d
260614d
* Thu Jul 14 2016 James Hogarth <james.hogarth@gmail.com> - 9.0.52-1
260614d
- Initial nextcloud build