# Maintainer: Dct Mei <dctxmei@yandex.com>

pkgname=v2raya
_pkgname=v2rayA
pkgver=2.4.9
pkgrel=1
pkgdesc="A web GUI client of Project V which supports VMess, VLESS, SS, SSR, Trojan and Pingtunnel protocols"
arch=('x86_64' 'aarch64')
url="https://github.com/v2rayA/v2rayA"
license=('AGPL3')
depends=('glibc')
makedepends=('git' 'go>=2:1.17.0-1' 'nodejs-lts-jod' 'yarn')
backup=("etc/default/v2raya")
install="${pkgname}.install"
source=("${pkgname}-${pkgver}.tar.gz::${url}/archive/v${pkgver}.tar.gz"
	"v2raya.default")
b2sums=('383f068efa2eb6c8de6d5248363fe87d4c423eed9e5cf40063c15b8dbee22977baa4dad58deb30e1f185c8d245dc7af57fc16fb5123f9855005ba9e309825886'
        '3a7be361041f2eda3fe36bb69268c316caf307bf3ec4f5d7b05bd994dd27032b2fc812d7776a669db471dda61594cc3f4fb98570e1abfe29758e1f4b8aea94b6')

build() {
	cd "${srcdir}"/"${_pkgname}-${pkgver}"/gui/

	export OUTPUT_DIR="${srcdir}/${_pkgname}-${pkgver}/service/server/router/web/"
	yarn cache clean
	yarn install
	yarn build

	cd "$srcdir"/"v2rayA-${pkgver}"/service/
	export GOFLAGS="-buildmode=pie -trimpath -mod=readonly -modcacherw"
	export CGO_CPPFLAGS="${CPPFLAGS}"
	export CGO_CXXFLAGS="${CXXFLAGS}"
	export CGO_CFLAGS="${CFLAGS}"
	export CGO_LDFLAGS="${LDFLAGS}"
	go build -ldflags="-X=github.com/v2rayA/v2rayA/conf.Version=${pkgver} -linkmode=external" -o v2raya

	# generate default config
	./v2raya --report config | sed '1,6d' | fold -s -w 78 | sed -E 's/^([^#].+)/# \1/' >>"${srcdir}"/v2raya.default
}

package() {
	depends+=('v2raya-core')

	cd "${srcdir}"/"${_pkgname}-${pkgver}"/
	install -Dm 644 LICENSE -t "${pkgdir}"/usr/share/licenses/v2raya/
	install -Dm 755 service/v2raya -t "${pkgdir}"/usr/bin/
	install -dm 750 "${pkgdir}"/etc/v2raya/
	install -Dm 644 install/universal/v2raya.desktop -t "${pkgdir}"/usr/share/applications/
	install -Dm 644 install/universal/v2raya.service -t "${pkgdir}"/usr/lib/systemd/system/
	install -Dm 644 install/universal/v2raya-lite.service -t "${pkgdir}"/usr/lib/systemd/user/
	install -Dm 644 gui/public/img/icons/android-chrome-512x512.png "${pkgdir}"/usr/share/icons/hicolor/512x512/apps/v2raya.png
	install -Dm 644 "${srcdir}"/v2raya.default "${pkgdir}"/etc/default/v2raya
}
