summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 5f3e0365c6facef6e40a9897f2da136f33ebf5b9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
# Maintainer: Helio Loureiro <helio@loureiro.eng.br>
pkgname=doh-relay-git
pkgver=1.0.0.r89.20240412.68c3226
pkgrel=2
gittag=v1.0.0
pkgdesc="DNS-over-HTTPS relay service."
arch=(
  'aarch64'
  'armv6h'
  'armv7h'
  'i686'
  'x86_64'
)
url="https://github.com/tinkernels/doh-relay"
license=('Apache-2.0')
depends=('go>=1.20')
makedepends=('go' 'git')
provides=("doh-relay=${pkgver}")
source=('git+https://github.com/tinkernels/doh-relay.git')
sha1sums=('SKIP')

pkgver() {
  cd "${srcdir}/doh-relay"
  git checkout -b $gittag tags/$gittag

  _ver="$(git describe  --tags | sed 's|^[vV]||' | sed 's|-g[0-9a-fA-F]*$||' | tr '-' '+')"
  _rev="$(git rev-list --count HEAD)"
  _date="$(git log -1 --date=format:"%Y%m%d" --format="%ad")"
  _hash="$(git rev-parse --short HEAD)"

  if [ -z "${_ver}" ]; then
    error "Version could not be determined."
    return 1
  else
    printf '%s' "${_ver}.r${_rev}.${_date}.${_hash}"
  fi
}

build(){
    cd "${srcdir}/doh-relay"
    mkdir -p "${srcdir}/gopath"
    export GOPATH="${srcdir}/gopath"
    go install -x -v -modcacherw -buildmode=pie -ldflags "-s -w" -trimpath
}

package(){
    mkdir -p "${pkgdir}/usr/bin"

    if [ -v GOBIN ]; then
      _binpath="${GOBIN}"
    else
      _binpath="${srcdir}/gopath/bin"
    fi
    install "${_binpath}/doh-relay" "${pkgdir}/usr/bin/doh-relay"
}