# Contributor: Bart Ribbers <bribbers@disroot.org>
# Maintainer: Bart Ribbers <bribbers@disroot.org>
pkgname=networkmanager-openvpn
pkgver=1.12.2
pkgrel=1
pkgdesc="NetworkManager VPN plugin for OpenVPN"
url="https://gitlab.gnome.org/GNOME/NetworkManager-openvpn"
arch="all"
license="GPL-2.0-or-later"
makedepends="
	glib-dev
	gtk+3.0-dev
	gtk4.0-dev
	intltool
	libnma-dev
	libsecret-dev
	"
source="NetworkManager-openvpn-1.12.2.tar.xz"
subpackages="
	$pkgname-lang
	$pkgname-gui
	$pkgname-minimal
"
install="
	$pkgname-minimal.pre-install
	$pkgname-minimal.pre-upgrade
	"
builddir="$srcdir/NetworkManager-openvpn-$pkgver"

build() {
	./configure \
		--prefix=/usr \
		--sysconfdir=/etc \
		--localstatedir=/var \
		--libexecdir=/usr/lib \
		--disable-static \
		--with-gtk4
}

check() {
	make check
}

package() {
	DESTDIR="$pkgdir" make install

	# required to cleanup usr/lib/NetworkManager with amove
	rm -f "$pkgdir"/usr/lib/NetworkManager/*.la
}

gui() {
	# for backwards compatibility, install this for base package
	provides="$pkgname=$pkgver-r$pkgrel"
	provider_priority=10

	depends="dbus:org.freedesktop.Secrets $pkgname-minimal=$pkgver-r$pkgrel"

	amove usr/lib/nm-openvpn-auth-dialog
	amove usr/lib/NetworkManager/libnm-gtk4-vpn-plugin-openvpn-editor.so
	amove usr/lib/NetworkManager/libnm-vpn-plugin-openvpn-editor.so
	amove usr/share/metainfo/network-manager-openvpn.metainfo.xml
}

minimal() {
	depends="openvpn"

	amove usr/lib/nm-openvpn-service usr/lib/nm-openvpn-service-openvpn-helper
	amove usr/lib/NetworkManager/libnm-vpn-plugin-openvpn.so
	amove usr/lib/NetworkManager/VPN/nm-openvpn-service.name
	amove usr/share/dbus-1/system.d/nm-openvpn-service.conf
}

sha512sums="
47fb69c85e57ad6bee93692e8ca65c38adae77b70d49072f0826f49788a74f026fb96a5ce77fb63e009e78bc734e68c6942894ea16b18bf0c79a5cb35b67e6c8  NetworkManager-openvpn-1.12.2.tar.xz
"
