diff options
-rw-r--r-- | .SRCINFO | 2 | ||||
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | Makefile | 2 | ||||
-rw-r--r-- | PKGBUILD | 6 | ||||
-rwxr-xr-x | generate-pkgbuild.sh | 50 |
5 files changed, 58 insertions, 3 deletions
@@ -1,7 +1,7 @@ pkgbase = cloudflare-dynamic-dns pkgdesc = Updates AAAA records at Cloudflare according to the current IPv6 address pkgver = 2.0.0 - pkgrel = 2 + pkgrel = 3 url = https://github.com/Zebradil/cloudflare-dynamic-dns arch = any license = MIT diff --git a/.gitignore b/.gitignore index 02f93e9637ab..9b4b1035243b 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ !.gitignore !Makefile !PKGBUILD +!generate-pkgbuild.sh @@ -1,4 +1,6 @@ update:: + ./generate-pkgbuild.sh > PKGBUILD + updpkgsums makepkg --printsrcinfo > .SRCINFO install:: @@ -1,6 +1,8 @@ -pkgname=cloudflare-dynamic-dns +# Maintainer: German Lashevich <german.lashevich@gmail.com> + pkgver=2.0.0 -pkgrel=2 +pkgname=cloudflare-dynamic-dns +pkgrel=3 pkgdesc='Updates AAAA records at Cloudflare according to the current IPv6 address' arch=('any') url='https://github.com/Zebradil/cloudflare-dynamic-dns' diff --git a/generate-pkgbuild.sh b/generate-pkgbuild.sh new file mode 100755 index 000000000000..53b3dfec5b36 --- /dev/null +++ b/generate-pkgbuild.sh @@ -0,0 +1,50 @@ +#!/usr/bin/env bash + +set -euo pipefail + +pkgver="$(curl -fsSL https://api.github.com/repos/zebradil/cloudflare-dynamic-dns/releases/latest | jq -r '.tag_name')" + +cat <<EOF +# Maintainer: German Lashevich <german.lashevich@gmail.com> + +pkgver=${pkgver:?} +EOF + +cat <<'EOF' +pkgname=cloudflare-dynamic-dns +pkgrel=3 +pkgdesc='Updates AAAA records at Cloudflare according to the current IPv6 address' +arch=('any') +url='https://github.com/Zebradil/cloudflare-dynamic-dns' +license=('MIT') +makedepends=('go') +source=("${pkgname}-${pkgver}::https://github.com/zebradil/${pkgname}/archive/${pkgver}.tar.gz") +sha256sums=('e1af4b7f941c13b478a8285343de8c05455600a2e0709281253e7ec1b5708fe3') + +prepare() { + cd "$pkgname-$pkgver" + mkdir -p build/ +} + +build() { + cd "$pkgname-$pkgver" + export CGO_CPPFLAGS="${CPPFLAGS}" + export CGO_CFLAGS="${CFLAGS}" + export CGO_CXXFLAGS="${CXXFLAGS}" + export CGO_LDFLAGS="${LDFLAGS}" + export GOFLAGS="-buildmode=pie -trimpath -ldflags=-linkmode=external -mod=readonly -modcacherw" + go build -o build/$pkgname main.go +} + +check() { + cd "$pkgname-$pkgver" + go test ./... +} + +package() { + cd "$pkgname-$pkgver" + install -Dm755 build/$pkgname "$pkgdir"/usr/bin/$pkgname + install -Dm644 systemd/* -t "$pkgdir"/usr/lib/systemd/system + install -m700 -d "$pkgdir"/etc/cloudflare-dynamic-dns/config.d +} +EOF |