diff options
author | Caleb Maclennan | 2022-05-25 10:18:50 +0300 |
---|---|---|
committer | Caleb Maclennan | 2022-05-25 10:18:50 +0300 |
commit | 7408745f1194e75891509b281d18f3d684e9f19b (patch) | |
tree | d480ce0a8c6447ccaa66771a4b6c7f7164a19fa1 | |
parent | 26fd199c6c2f1c4cb58f8fd4cb26cff6ac8619d9 (diff) | |
download | aur-7408745f1194e75891509b281d18f3d684e9f19b.tar.gz |
upgpkg: nextcloud-app-previewgenerator 4.0.0-2
-rw-r--r-- | .SRCINFO | 8 | ||||
-rw-r--r-- | PKGBUILD | 51 |
2 files changed, 50 insertions, 9 deletions
@@ -1,14 +1,14 @@ pkgbase = nextcloud-app-previewgenerator pkgdesc = Nextcloud app that allows admins to pre-generate previews pkgver = 4.0.0 - pkgrel = 1 + pkgrel = 2 url = https://github.com/nextcloud/previewgenerator arch = any license = AGPL - depends = nextcloud>=21 - depends = php>=7.3 + makedepends = nextcloud + makedepends = yq options = !strip - source = https://github.com/nextcloud/previewgenerator/archive/refs/tags/v4.0.0/previewgenerator-4.0.0.tar.gz + source = https://github.com/nextcloud/previewgenerator/archive/v4.0.0/previewgenerator-4.0.0.tar.gz sha256sums = 4ed05867dfa39761a130cfa9a35c4cb0d9ada20033f3a2eb4749267d19b46d0b pkgname = nextcloud-app-previewgenerator @@ -4,19 +4,60 @@ pkgname=nextcloud-app-previewgenerator pkgdesc='Nextcloud app that allows admins to pre-generate previews' pkgver=4.0.0 -pkgrel=1 +pkgrel=2 arch=(any) license=(AGPL) url="https://github.com/nextcloud/${pkgname##*-}" -depends=('nextcloud>=21' - 'php>=7.3') options=('!strip') +makedepends=(nextcloud + yq) _archive="${pkgname##*-}-$pkgver" -source=("$url/archive/refs/tags/v$pkgver/$_archive.tar.gz") +source=("$url/archive/v$pkgver/$_archive.tar.gz") sha256sums=('4ed05867dfa39761a130cfa9a35c4cb0d9ada20033f3a2eb4749267d19b46d0b') +# BEGIN boilerplate nextcloud app version clamping, see also other packages in group +# 1. Call respective function helpers in check() and package() *after* cd'ing to the source directory +# 2. Add makedepends+=(nextcloud yq) +_phps=(php7 php) +_get_supported_ranges() { + _app_min_nextcloud="$(< appinfo/info.xml xq -r '.info.dependencies.nextcloud["@min-version"] | values')" + _app_max_nextcloud="$(< appinfo/info.xml xq -r '.info.dependencies.nextcloud["@max-version"] | values | tonumber | .+1')" + _app_min_php="$(< appinfo/info.xml xq -r '.info.dependencies.php["@min-version"] | values')" + _app_max_php="$(< appinfo/info.xml xq -r '.info.dependencies.php["@max-version"] | values | tonumber | .+0.1')" +} +_unsupported_range() { + printf "%s requires %s %s, but %s %s is provided.\n" "$pkgname" "$1" "$2" "$1" "$3" + exit 1 +} +_nextcloud_app_check() { + _get_supported_ranges + for _php in "${_phps[@]}"; do command -v "$_php" > /dev/null && break; done + local _nextcloud_ver="$("$_php" <(cat /usr/share/webapps/nextcloud/version.php; echo 'print($OC_VersionString);'))" + local _php_ver="$("$_php" -r 'print(phpversion());')" + [[ "$(vercmp "${_app_min_nextcloud:-0}" "$_nextcloud_ver")" -le 0 ]] || \ + _unsupported_range nextcloud "=> $_app_min_nextcloud" "$_nextcloud_ver" + [[ "$(vercmp "${_app_max_nextcloud:-999}" "$_nextcloud_ver")" -gt 0 ]] || \ + _unsupported_range nextcloud "< $_app_max_nextcloud" "$_nextcloud_ver" + [[ "$(vercmp "${_app_min_php:-0}" "$_php_ver")" -le 0 ]] || \ + _unsupported_range php ">= $_app_min_php" "$_php_ver" + [[ "$(vercmp "${_app_max_php:-999}" "$_php_ver")" -gt 0 ]] || \ + _unsupported_range php "< $_app_max_php" "$_php_ver" +} +_nextcloud_app_package() { + _get_supported_ranges + depends+=("nextcloud>=${_app_min_nextcloud:-0}" "nextcloud<${_app_max_nextcloud:-999}") + depends+=("php-interpreter${_app_min_php:+>=$_app_min_php}" ${_app_max_php:+"php-interpreter<$_app_max_php"}) +} +# END boilerplate nextcloud app version clamping + +check() { + cd "$_archive" + _nextcloud_app_check +} + package() { + cd "$_archive" local appdir="$pkgdir/usr/share/webapps/nextcloud/apps" install -d "$appdir" - cp -a "$_archive" "$appdir/${pkgname##*-}" + cp -a "./" "$appdir/${pkgname##*-}" } |