summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorSergej Pupykin2022-05-19 02:21:26 +0300
committerSergej Pupykin2022-05-19 02:21:26 +0300
commit941603dbc0941739f9c7b5a44d9326d29049842c (patch)
tree7b136686667ce5cb20abbb57fc9ec382d11efd22
parentb42cea3f409d68939da4b69943e87efa68d518ca (diff)
downloadaur-941603dbc0941739f9c7b5a44d9326d29049842c.tar.gz
upd
-rw-r--r--.SRCINFO16
-rw-r--r--PKGBUILD77
2 files changed, 85 insertions, 8 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 5ba1270cedaf..997b61cec791 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,13 +1,21 @@
pkgbase = nextcloud-app-rainloop
pkgdesc = RainLoop Webmail for nextcloud
- pkgver = 7.2.2
+ pkgver = 7.2.5
pkgrel = 1
url = https://apps.nextcloud.com/apps/rainloop
arch = any
license = AGPL
- depends = nextcloud
+ makedepends = nextcloud
+ makedepends = php
+ makedepends = ripgrep
+ makedepends = yq
options = !strip
- source = nextcloud-app-rainloop-7.2.2.tar.gz::https://github.com/pierre-alain-b/rainloop-nextcloud/releases/download/7.2.2/rainloop.tar.gz
- sha256sums = e1e7f6e22b43ca74e8dab60792689eae2025071199d6729887fce62dade5ccc7
+ source = nextcloud-app-rainloop-7.2.5.tar.gz::https://github.com/pierre-alain-b/rainloop-nextcloud/releases/download/7.2.5/rainloop.tar.gz
+ sha256sums = 0849c61fd69b117ed9a98c754caaedbf48cd4eb7dbcd753aabe00544063f5e71
pkgname = nextcloud-app-rainloop
+ depends = nextcloud>=
+ depends = nextcloud<
+ depends = php-interpreter>=
+ depends = php-interpreter<
+ depends = php-interpreter
diff --git a/PKGBUILD b/PKGBUILD
index 4b635c118128..e922cd05c357 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,19 +1,88 @@
# Maintainer: William Hahn <bill@hahn3.com>
pkgname=nextcloud-app-rainloop
-pkgver=7.2.2
+_name=rainloop
+pkgver=7.2.5
pkgrel=1
pkgdesc="RainLoop Webmail for nextcloud"
arch=('any')
url="https://apps.nextcloud.com/apps/rainloop"
license=('AGPL')
-depends=('nextcloud')
-makedepends=()
+makedepends=('nextcloud' 'php' 'ripgrep' 'yq')
options=('!strip')
source=("$pkgname-$pkgver.tar.gz::https://github.com/pierre-alain-b/rainloop-nextcloud/releases/download/$pkgver/rainloop.tar.gz")
-sha256sums=('e1e7f6e22b43ca74e8dab60792689eae2025071199d6729887fce62dade5ccc7')
+sha256sums=('0849c61fd69b117ed9a98c754caaedbf48cd4eb7dbcd753aabe00544063f5e71')
+
+_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}/rainloop ${pkgdir}/usr/share/webapps/nextcloud/apps/rainloop
chown -R http:http ${pkgdir}/usr/share/webapps/nextcloud/apps/rainloop