summarylogtreecommitdiffstats
path: root/PKGBUILD
diff options
context:
space:
mode:
authorNikolay Korotkiy2018-09-20 14:09:25 +0300
committerNikolay Korotkiy2018-09-20 14:09:25 +0300
commit0218dcc63bcf884c143eba321bbb1c6053ad8641 (patch)
tree3f6721725ee97055d4bf2479fe0794f4e8e2d509 /PKGBUILD
parent07657e1ac87a808abecf319904c22c817025a0bd (diff)
downloadaur-0218dcc63bcf884c143eba321bbb1c6053ad8641.tar.gz
Minor improvement
Diffstat (limited to 'PKGBUILD')
-rw-r--r--PKGBUILD40
1 files changed, 32 insertions, 8 deletions
diff --git a/PKGBUILD b/PKGBUILD
index 451387b6e9b8..750dc3dd2c65 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -2,20 +2,30 @@
_orgname=BourgeoisLab
_pkgname=GPXLab
_branch=master
+_use_gh_api=true
pkgname=${_pkgname,,}-git
-pkgver=0.4.0.r17.6c69ea7
+pkgver=0.4.0.r17.6c69ea7b
pkgrel=1
pkgdesc='Program to show and manipulate GPS tracks'
arch=('i686' 'x86_64')
url="https://bourgeoislab.wordpress.com/gpxlab/"
license=('GPL3')
depends=('qt5-base')
-makedepends=('git' 'qt5-tools')
+makedepends=('qt5-tools')
+if [ "${_use_gh_api}" = true ]; then
+ makedepends+=('python')
+else
+ makedepends+=('git')
+fi
provides=("${pkgname//-git}=${pkgver}")
conflicts=(${pkgname//-git})
-source=("${_pkgname}-${_branch}::git://github.com/${_orgname}/${_pkgname}.git#branch=${_branch}"
- "gpxlab.desktop"
- "gpxlab.xml")
+if [ "${_use_gh_api}" = true ]; then
+ source=("https://github.com/${_orgname}/${_pkgname}/archive/${_branch}.tar.gz")
+else
+ source=("${_pkgname}-${_branch}::git://github.com/${_orgname}/${_pkgname}.git#branch=${_branch}")
+fi
+source+=("gpxlab.desktop"
+ "gpxlab.xml")
sha256sums=('SKIP'
'df674c3baa689b5441c81447fa999f418029c1edc5ac1933cdb26202049d2b58'
'5e35029c0cf26cbe82c3fbe1f839688f99406c2e054b1311e7912d0468df7c38')
@@ -23,9 +33,23 @@ sha256sums=('SKIP'
pkgver() {
cd ${_pkgname}-${_branch}
- RELEASE="$(git describe --tags $(git rev-list --tags --max-count=1))"
- REVISION="$(git rev-list --count HEAD).$(git rev-parse --short HEAD)"
- printf "%s.r%s" "${RELEASE#?}" "${REVISION}"
+ if [ "${_use_gh_api}" = true ]; then
+ api_url="https://api.github.com/repos/${_orgname}/${_pkgname}"
+ base="30fb6d1"
+ head=$(curl -s "$api_url/git/refs/heads/${_branch}" | \
+ python -c "import sys, json; print(json.load(sys.stdin)['object']['sha'][:8])")
+ count=$(curl -s "$api_url/compare/${base}...${head}" | \
+ python -c "import sys, json; print(json.load(sys.stdin)['total_commits'] + 1)")
+ release=$(curl -s "$api_url/tags" | \
+ python -c "import sys, json; r = json.load(sys.stdin)[0]; print(r['name'])")
+ else
+ release="$(git describe --tags $(git rev-list --tags --max-count=1))"
+ count="$(git rev-list --count HEAD)"
+ head="$(git rev-parse --short HEAD)"
+ fi
+
+ release=${release//-/.} # pkgver is not allowed to contain hyphens
+ printf "%s.r%s.%s" "${release#?}" "${count}" "${head}"
}
prepare() {