summarylogtreecommitdiffstats
path: root/PKGBUILD
diff options
context:
space:
mode:
authorŁaurent ʘ❢Ŧ Ŧough2020-08-21 21:43:35 -0700
committerŁaurent ʘ❢Ŧ Ŧough2020-08-21 21:43:35 -0700
commit0bc0c577366c65b26372bfa882b8176954ac8d30 (patch)
tree5394080df0ed66cb8482ed26bdb21dcbe014d44d /PKGBUILD
downloadaur-ztdns-git.tar.gz
Initial commit of .SRCINFO PKGBUILD ztdns.install
Diffstat (limited to 'PKGBUILD')
-rw-r--r--PKGBUILD110
1 files changed, 110 insertions, 0 deletions
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..f70fe210d2ca
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,110 @@
+# Maintainer: Łaurent ʘ❢Ŧ Ŧough <laurent dot fough at gmail dot com>
+pkgname=ztdns-git
+_pkgname=ztdns
+pkgver=0.0.2.r4.g5fdb3bc
+pkgrel=1
+pkgdesc='DNS server for a ZeroTier virtual network.'
+url='https://github.com/uxbh/ztdns'
+arch=('x86_64')
+license=('MIT')
+source=('https://github.com/uxbh/ztdns/releases/tag/$pkgver')
+provides=('ztdns')
+conflicts=('ztdns')
+depends=(
+ 'glibc'
+)
+makedepends=(
+ 'go'
+ 'git'
+)
+
+source=(
+ "${_pkgname}::git+https://github.com/uxbh/ztdns#branch=${BRANCH:-master}"
+)
+
+md5sums=(
+ 'SKIP'
+)
+
+backup=(
+ 'etc/.ztdns.toml'
+)
+
+install='ztdns.install'
+
+
+prepare() {
+ chmod u+w -R "$GOPATH"
+}
+
+pkgver() {
+ cd "${srcdir}/${_pkgname}"
+ ( set -o pipefail
+ # cutting off 'v.' prefix that presents in the git tag
+ git describe --long --tags | sed 's/^v.//;s/\([^-]*-g\)/r\1/;s/-/./g' ||
+ printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
+ )
+}
+
+build() {
+ export CGO_CPPFLAGS="${CPPFLAGS}"
+ export CGO_CFLAGS="${CFLAGS}"
+ export CGO_CXXFLAGS="${CXXFLAGS}"
+ export CGO_LDFLAGS="${LDFLAGS}"
+ export GOFLAGS="-buildmode=pie -trimpath -mod=readonly -modcacherw"
+
+ cd "${srcdir}/${_pkgname}"
+
+ if [ -L "${srcdir}/${_pkgname}" ]; then
+ rm "${srcdir}/${_pkgname}" -rf
+ mv "${srcdir}/go/src/${_pkgname}/" "${srcdir}/${_pkgname}"
+ fi
+
+ rm -rf "${srcdir}/go/src"
+
+ mkdir -p "${srcdir}/go/src"
+
+ export GOPATH="${srcdir}/go"
+
+ mv "${srcdir}/${_pkgname}" "${srcdir}/go/src/"
+
+ cd "${srcdir}/go/src/${_pkgname}/"
+ ln -sf "${srcdir}/go/src/${_pkgname}/" "${srcdir}/${_pkgname}"
+
+ echo ":: Updating git submodules"
+ git submodule update --init
+
+ echo ":: Building binary"
+ go get -v \
+ -gcflags "-trimpath $GOPATH/src"
+}
+
+check() {
+ cd "${srcdir}/${_pkgname}"
+ go test ./...
+}
+
+package() {
+ cd "${srcdir}/${_pkgname}"
+
+ mkdir -p ${pkgdir}/usr/share/licenses/${pkgname}
+ mkdir -p ${pkgdir}/etc
+
+ find "${srcdir}/go/bin/" -type f -executable | while read filename; do
+ install -Dm 755 "${filename}" "${pkgdir}/usr/bin/$(basename ${filename})"
+ done
+
+ find "${srcdir}/go/src/${_pkgname}" -name "LICENSE" -type f | while read filename; do
+ if [ "$(basename ${filename})" == "LICENSE" ]; then
+ install -Dm 644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/MIT"
+ fi
+ done
+
+ find "${srcdir}/go/src/${_pkgname}" -name ".ztdns.toml.example" -type f | while read filename; do
+ if [ "$(basename ${filename})" == ".ztdns.toml.example" ]; then
+ install -Dm 644 .ztdns.toml.example "${pkgdir}/etc/.ztdns.toml"
+ fi
+ done
+
+ chmod u+w -R "$GOPATH"
+}