# Contributor: Kaarle Ritvanen <kunkku@alpinelinux.org>
# Maintainer: Kaarle Ritvanen <kunkku@alpinelinux.org>
pkgname=dmvpn
pkgver=1.4.2
pkgrel=1
pkgdesc="Dynamic Multipoint VPN"
url="https://git.alpinelinux.org/cgit/dmvpn-tools/"
arch="noarch"
license="MIT"
_luaver=5.4
_lua_dmvpn_deps="lua-asn1"
_dp_deps="lighttpd"
_ca_deps="lua$_luaver lua$_luaver-bit32 lua$_luaver-lyaml lua$_luaver-ossl
	lua$_luaver-posix lua$_luaver-sql-sqlite3 lua$_luaver-stringy lua-asn1"
makedepends="$_lua_dmvpn_deps $_dp_deps $_ca_deps"
depends="augeas bind-tools lua$_luaver lua$_luaver-cqueues lua$_luaver-lyaml
	lua$_luaver-ossl lua$_luaver-posix lua$_luaver-struct lua-dmvpn quagga
	strongswan tunnel"
subpackages="dmvpn-ca dmvpn-crl-dp lua-dmvpn $pkgname-openrc"
options="!check"
source="$pkgname-$pkgver.tar.bz2::https://gitlab.alpinelinux.org/alpine/dmvpn-tools/-/archive/v$pkgver/dmvpn-tools-v$pkgver.tar.bz2
	dmvpn-ca.insync"
builddir="$srcdir/dmvpn-tools-v$pkgver"

package() {
	install -D -m 644 dmvpn.awall "$pkgdir"/usr/share/awall/optional/dmvpn.json
	install -D -m 644 dmvpn-hub.awall "$pkgdir"/usr/share/awall/optional/dmvpn-hub.json
	install -D dmvpn-pfx-decode "$pkgdir"/usr/libexec/dmvpn-pfx-decode
	install -D -m 644 dmvpn.charon "$pkgdir"/etc/strongswan.d/dmvpn.conf
	install -D -m 644 dmvpn.swanctl "$pkgdir"/etc/swanctl/conf.d/dmvpn.conf
	install -D nhrp-events "$pkgdir"/usr/sbin/nhrp-events
	install -D nhrp-events.initd "$pkgdir"/etc/init.d/nhrp-events
	install -D setup-dmvpn "$pkgdir"/usr/sbin/setup-dmvpn
}

ca() {
	depends="$_ca_deps lua-dmvpn"
	cd "$builddir"

	install -D dmvpn-ca "$subpkgdir"/usr/bin/dmvpn-ca
	install -D -m 644 dmvpn-ca.conf "$subpkgdir"/etc/dmvpn-ca.conf
	install -D -m 644 "$srcdir"/dmvpn-ca.insync "$subpkgdir"/etc/in-sync.d/dmvpn-ca
}

dp() {
	depends="$_dp_deps"

	local bin=/usr/bin/dmvpn-crl-update
	install -D "$builddir"/dmvpn-crl-update "$subpkgdir$bin"

	local dir=$subpkgdir/etc/periodic/15min
	mkdir -p "$dir"
	ln -s $bin "$dir"
}

dmvpn() {
	depends="$_lua_dmvpn_deps"

	cd "$builddir"
	install -D -m 644 dmvpn.lua \
		"$subpkgdir"/usr/share/lua/$_luaver/dmvpn.lua
}

sha512sums="
85127c008cecad25ecd1f0fe3bb42fb69e9d9ba48c8093bcafd6b29e0e5f2b3bfa945683ca45bd6b8b3fad0cb3110c96faa2b7134bac54b9a5496dd364ce719b  dmvpn-1.4.2.tar.bz2
a2160b97ead95c0269005e6973b25315ec7f1eada9da70cda42a13e34c800eea836b8ef7723553ff0e751796ec0ae27efadbac6b9c66e7db944984d9ff387072  dmvpn-ca.insync
"
