# Contributor: Carlo Landmeter <clandmeter@alpinelinux.org>
# Maintainer: Carlo Landmeter <clandmeter@alpinelinux.org>
pkgname=lego
pkgver=4.23.1
pkgrel=1
pkgdesc="Let's Encrypt client and ACME library written in Go"
url="https://github.com/go-acme/lego"
license="MIT"
arch="all"
options="net setcap chmod-clean" # tests need network access: https://github.com/go-acme/lego/issues/560
depends="ca-certificates"
makedepends="go libcap-utils"
checkdepends="bash tzdata"
subpackages="$pkgname-doc"
source="https://github.com/go-acme/lego/archive/v$pkgver/lego-$pkgver.tar.gz
	go-mod-yandex-go-genproto-v0.4.0.patch
	"

export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"

build() {
	go build -v -trimpath -ldflags "-X main.version=$pkgver" -o ./bin/lego ./cmd/lego
}

check() {
	# skipping failing tests on x86, armhf
	go test -skip "TestPEMEncode" ./...
}

package() {
	install -Dm755 ./bin/lego "$pkgdir"/usr/bin/lego
	setcap cap_net_bind_service=+ep "$pkgdir"/usr/bin/lego

	install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
}

sha512sums="
b62acf4fe94b772fe2782826f5e2b45c296fc16782caaf8ad10f6b5ac2902d3454a65aa2509d6e7a3991b03141297f5d981f9cf07011a0bbb5d535647ad5c561  lego-4.23.1.tar.gz
a4c6ffadd7ab9913a17a49bb49b52d85ab74ffc128d76cb375decc0a81749959ba9de70adb65eb81b9a1b4ccb280a8b00e9d905127d7cb50ab87001fdef41879  go-mod-yandex-go-genproto-v0.4.0.patch
"
