--- rpms/nextcloud/contribs9/nextcloud.spec 2018/03/29 17:52:06 1.1 +++ rpms/nextcloud/contribs9/nextcloud.spec 2019/09/08 19:36:10 1.12 @@ -1,5 +1,5 @@ -%define version 13.0.1 -%define release 2 +%define version 16.0.4 +%define release 1 %define apache_serverroot /usr/share %define apache_confdir /etc/httpd/conf.d @@ -7,8 +7,8 @@ %define nc_config_dir %{nc_dir}/config %define nc_data_dir %{nc_dir}/data -%define nc_user apache -%define nc_group apache +%define nc_user www +%define nc_group www # Turn off the brp-python-bytecompile script %global __os_install_post %(echo '%{__os_install_post}' | sed -e 's!/usr/lib[^[:space:]]*/brp-python-bytecompile[[:space:]].*$!!g') @@ -33,6 +33,8 @@ Requires: php71-php-fpm Requires: php71-php-gd Requires: php71-php-pdo Requires: php71-php-mbstring +Requires: php71-php-pecl-zip +Requires: php71-php-imagick # Recommended php packages Requires: php71-php-intl @@ -45,6 +47,7 @@ Requires: php71-php-ldap Requires: php71-php-mysqlnd #rh-php71-php-pdo_mysql +# Conflicts: nextcloud < 15 %description Nextcloud files and configuration. @@ -54,6 +57,79 @@ nc_dir: %{nc_dir} nc_data_dir: %{nc_data_dir} nc_config_dir: %{nc_config_dir} +%pre +# true if $1 is greater than or equal $2 +verlte() { + [ "$1" = "`echo -e "$1\n$2" | sort -V | head -n1`" ] +} + +verlt() { + [ "$1" = "$2" ] && return 1 || verlte $1 $2 +} +# if there is already an installed version +if [ -f /usr/share/nextcloud/version.php ] +then + echo "version.php found, already installed" + # get version number + installedver=`php -r 'require("/usr/share/nextcloud/version.php"); print "$OC_VersionString";'`; + majvers=`echo %{version} | cut -d. -f1` + majcurvers=`echo $installedver | cut -d. -f1` + # we should fail with exit 1 if + # installed version > rpm version + if ( verlte %{version} $installedver ) + then + echo "Installed version has $installedver been upgraded and is most recent than this rpm %{version} version" +# echo "backup current install to /usr/share/nextcloud_back" +# mkdir /usr/share/nextcloud_back +# rsync -ar /usr/share/nextcloud/ /usr/share/nextcloud_back + exit 1 + elif [ $(($majvers-1)) -gt $majcurvers ] + then # installed version < rpm version -1 + echo "can not upgrade from $installedver to %{version}, please do a manual or web update with intermediate version" +# echo "backup current install to /usr/share/nextcloud_back" +# mkdir /usr/share/nextcloud_back +# rsync -ar /usr/share/nextcloud/ /usr/share/nextcloud_back + exit 1 + fi +fi + +%postun +# true if $1 is greater than or equal $2 +verlte() { + [ "$1" = "`echo -e "$1\n$2" | sort -V | head -n1`" ] +} + +verlt() { + [ "$1" = "$2" ] && return 1 || verlte $1 $2 +} + +if [ $1 == 1 ]; then +# if there is already an installed version +if [ -f /usr/share/nextcloud/version.php ] +then +# echo "version.php found, already installed" + # get version number + installedver=`php -r 'require("/usr/share/nextcloud/version.php"); print "$OC_VersionString";'`; + majvers=`echo %{version} | cut -d. -f1` + majcurvers=`echo $installedver | cut -d. -f1` +# echo "and the version is $installedver" + # we should fail with exit 1 if + # installed version > rpm version + if ( verlte %{version} $installedver ) + then +# echo "reverting content" +# rsync -ar /usr/share/nextcloud_back/ /usr/share/nextcloud_back +# rm -rf /usr/share/nextcloud_back + exit 0 + elif [ $(($majvers-1)) -gt $majcurvers ] + then # installed version < rpm version -1 +# echo "reverting content" +# rsync -ar /usr/share/nextcloud_back/ /usr/share/nextcloud_back +# rm -rf /usr/share/nextcloud_back + exit 0 + fi +fi +fi %install rm -rf %{buildroot} @@ -65,7 +141,7 @@ mkdir -p %{buildroot}/%{nc_dir} mkdir -p %{buildroot}/%{nc_dir}/etc mkdir -p %{buildroot}/%{nc_data_dir} mkdir -p %{buildroot}/%{nc_config_dir} -mkdir -p %{buildroot}/%{nc_dir}/assets +# mkdir -p %{buildroot}/%{nc_dir}/assets mkdir -p %{buildroot}/%{nc_dir}/updater mkdir -p %{buildroot}/etc/httpd/conf.d @@ -74,14 +150,15 @@ cp %{SOURCE1} %{buildroot}/etc/httpd/con %files %defattr(0640,root,%{nc_group},0750) -%dir %attr(0755,root,%{nc_group}) %{nc_dir} +%dir %attr(0775,root,%{nc_group}) %{nc_dir} %attr(0755,%{nc_user},%{nc_group}) %{nc_dir}/occ %attr(0750,%{nc_user},%{nc_group}) %{nc_dir}/apps -%attr(0750,%{nc_user},%{nc_group}) %{nc_dir}/assets +# %attr(0750,%{nc_user},%{nc_group}) %{nc_dir}/assets %attr(0750,%{nc_user},%{nc_group}) %{nc_dir}/updater %attr(0775,%{nc_user},%{nc_group}) %{nc_data_dir} %attr(0775,%{nc_user},%{nc_group}) %{nc_config_dir} %attr(0755,%{nc_user},%{nc_group}) %{nc_dir}/lib +%attr(0755,%{nc_user},%{nc_group}) %{nc_dir}/ocm-provider %attr(0755,%{nc_user},%{nc_group}) %{nc_dir}/core %attr(0755,%{nc_user},%{nc_group}) %{nc_dir}/settings %attr(0755,%{nc_user},%{nc_group}) %{nc_dir}/3rdparty @@ -90,6 +167,7 @@ cp %{SOURCE1} %{buildroot}/etc/httpd/con %attr(0755,%{nc_user},%{nc_group}) %{nc_dir}/ocs* %attr(0755,%{nc_user},%{nc_group}) %{nc_dir}/*.php %attr(0755,%{nc_user},%{nc_group}) %{nc_dir}/AUTHORS +%attr(0755,%{nc_user},%{nc_group}) %{nc_dir}/COPYING %attr(0755,%{nc_user},%{nc_group}) %{nc_dir}/index.html %attr(0755,%{nc_user},%{nc_group}) %{nc_dir}/robots.txt %attr(0644,%{nc_user},%{nc_group}) %{nc_dir}/.htaccess @@ -101,7 +179,32 @@ cp %{SOURCE1} %{buildroot}/etc/httpd/con %changelog -* Wed Mar 28 2018 Jean-Philipe Pialasse 13.0.1-2.sme +* Sun Sep 08 2019 Jean-Philipe Pialasse 16.0.4-1.sme +- Update to release 16.0.4 [SME: 10803] + +* Wed Mar 06 2019 Jean-Philipe Pialasse 15.0.0-6.sme +- fix typo in postun script [SME: 10747] + +* Tue Jan 08 2019 Jean-Philipe Pialasse 15.0.0-5.sme +- remove conflicts nextcloud <15 to allow people to use the rpm update if they are + with manual updated version 14 with rpm version 13 [SME: 10696] + +* Mon Jan 07 2019 Jean-Philipe Pialasse 15.0.0-4.sme +- prevent rpm to upgrade if webupdate has been used [SME: 10670] + and rpm version is < to on disk version + or if rppm version is more than one major release greater + +* Fri Dec 21 2018 Jean-Philipe Pialasse 15.0.0-3.sme +- Update to release 15.0.0 [SME: 10669] + +* Wed Dec 19 2018 Jean-Philipe Pialasse 13.0.1-5.sme +- fix failure to update [SME: 10596] + remove assets folder before 13.0.4 update + +* Sat Apr 07 2018 Jean-Philipe Pialasse 13.0.1-4.sme +- missing dependency for php71-php-pecl-zip [SME: 10554] + +* Wed Mar 28 2018 Jean-Philipe Pialasse 13.0.1-3.sme - import for SME9 using remi scl * Mon Mar 19 2018 Giacomo Sanchietti - 13.0.1-1