Date: Sunday, May 8, 2022 @ 20:29:05 Author: dvzrv Revision: 1196305 archrelease: copy trunk to community-staging-any
Added: nextcloud-app-mail/repos/community-staging-any/ nextcloud-app-mail/repos/community-staging-any/PKGBUILD (from rev 1196304, nextcloud-app-mail/trunk/PKGBUILD) ----------+ PKGBUILD | 91 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 91 insertions(+) Copied: nextcloud-app-mail/repos/community-staging-any/PKGBUILD (from rev 1196304, nextcloud-app-mail/trunk/PKGBUILD) =================================================================== --- community-staging-any/PKGBUILD (rev 0) +++ community-staging-any/PKGBUILD 2022-05-08 20:29:05 UTC (rev 1196305) @@ -0,0 +1,91 @@ +# Maintainer: Sergej Pupykin <arch+...@sergej.pp.ru> +# Maintainer: Jonas Heinrich <o...@project-insanity.org> +# Contributor: Jonas Heinrich <o...@project-insanity.org> + +pkgname=nextcloud-app-mail +_name=mail +pkgver=1.11.0 +pkgrel=3 +pkgdesc="An email app for NextCloud" +arch=('any') +url="https://github.com/nextcloud/mail" +license=('AGPL') +makedepends=('nextcloud' 'php7' 'ripgrep' 'yq') +groups=('nextcloud-apps') +options=('!strip') +source=("$pkgname-$pkgver.tar.gz::https://github.com/nextcloud-releases/mail/releases/download/v${pkgver}/mail.tar.gz") +sha512sums=('098f308339163b052c3ddf6eb6ff3cc7162358df1cf84789ac8175c697aa0d601d9e2e2a68a9337ca505636a2e8bce406bb937b1cbfbd691e3975493ec66b905') + +_get_nextcloud_versions() { + _app_min_major_version="$(xq '.info.dependencies.nextcloud["@min-version"]' "${_name}/appinfo/info.xml"| sed 's/"//g')" + _app_max_major_version="$(xq '.info.dependencies.nextcloud["@max-version"]' "${_name}/appinfo/info.xml"| sed 's/"//g')" + _app_max_major_version=$(expr ${_app_max_major_version} + 1) +} + +_get_php_versions() { + local _phps=(php7 php) + + _app_min_php="$(xq '.info.dependencies.php["@min-version"]' "$_name/appinfo/info.xml"| sed 's/"//g')" + _app_max_php="$(xq '.info.dependencies.php["@max-version"]' "$_name/appinfo/info.xml"| sed 's/"//g')" + + if [[ $_app_max_php != 'null' ]]; then + _app_max_php="$(echo $_app_max_php | awk -F '.' '{print $1"."$2+1}')" + fi + + _system_php="" + for _php in "${_phps[@]}"; do + if command -v "$_php" > /dev/null; then + if [[ -z "$_system_php" ]]; then + _system_php="$_php" + fi + fi + done +} + +check() { + local _app_min_major_version + local _app_max_major_version + _get_nextcloud_versions + _get_php_versions + + local _nextcloud_major_version="$(rg "OC_Version = " /usr/share/webapps/nextcloud/version.php |cut -d'(' -f2| cut -d ',' -f1)" + if [[ "$(vercmp "${_nextcloud_major_version}" "${_app_min_major_version}")" -lt 0 ]] || [[ "$(vercmp "${_nextcloud_major_version}" "${_app_max_major_version}")" -gt 0 ]] ; then + printf "%s requires nextcloud >= %s/ nextcloud <= %s, but nextcloud %s is provided.\n" "$pkgname" "${_app_min_major_version}" "${_app_max_major_version}" "${_nextcloud_major_version}" + exit 1 + fi + + local _php_version="$($_system_php --version |head -n1 |cut -d ' ' -f2 |sed 's/.[0-9]*$//g')" + if [[ "$(vercmp "$_php_version" "$_app_min_php" )" -lt 0 ]]; then + printf "%s requires php-interpreter >= %s, but %s is provided\n" $pkgname $_app_min_php $_php_version + exit 1 + fi + if [[ $_app_max_php != 'null' ]]; then + if [[ "$(vercmp "$_php_version" "$_app_max_php" )" -ge 0 ]]; then + printf "%s requires php-interpreter < %s, but %s is provided\n" $pkgname $_app_max_php $_php_version + exit 1 + fi + fi +} + +package() { + _get_nextcloud_versions + _get_php_versions + + depends=("nextcloud>=${_app_min_major_version}" "nextcloud<${_app_max_major_version}") + if [[ "$_app_min_php" != 'null' ]]; then + depends+=( + "php-interpreter>=$_app_min_php" + ) + fi + if [[ "$_app_max_php" != 'null' ]]; then + depends+=( + "php-interpreter<$_app_max_php" + ) + fi + if [[ "$_app_min_php" == 'null' ]] && [[ "$_app_max_php" == 'null' ]]; then + depends+=(php-interpreter) + fi + + install -d "${pkgdir}/usr/share/webapps/nextcloud/apps" + cp -a "${srcdir}/mail" "${pkgdir}/usr/share/webapps/nextcloud/apps/mail" +}