# Maintainer: Noel Kuntze <noel.kuntze@contauro.com>
pkgname=jitsi-videobridge
pkgver=2.3.204
_tag="jitsi-meet_10008"
pkgrel=0
pkgdesc="Videobridge for Jitsi Meet"
url="https://github.com/jitsi/jitsi-videobridge"
arch="x86_64 aarch64 s390x"
license="Apache-2.0"
options="!check net" # No test suite
depends="openjdk17-jre-headless prosody bash"
makedepends="maven openjdk17-jdk"
install="$pkgname.pre-install"
subpackages="$pkgname-openrc"
pkgusers="jvb"
pkggroups="jitsi"
source="$pkgname-$pkgver.tar.gz::https://github.com/jitsi/jitsi-videobridge/archive/stable/$_tag.tar.gz
	$pkgname.initd
	$pkgname.confd
	$pkgname.logrotate
	jvb.conf
	sip-communicator.properties
	"

builddir="$srcdir/$pkgname-stable-$_tag"

build() {
	export JAVA_HOME=/usr/lib/jvm/java-17-openjdk
	export PATH=$JAVA_HOME/bin:$PATH
	mvn clean package install -DskipTests -Dassembly.skipAssembly=true -Dmaven.repo.local="$builddir/.m2/repository"
	mvn dependency:copy-dependencies -DincludeScope=runtime -Dmaven.repo.local="$builddir/.m2/repository"
}

package() {
	DESTDIR="$pkgdir"/usr/lib/$pkgname
	USERDIR="$pkgdir"/var/lib/$pkgname
	CONFDIR="$pkgdir"/etc/jitsi/videobridge
	LOGDIR="$pkgdir"/var/log/jitsi

	install -dm755 -o jvb -g jitsi "$DESTDIR"
	install -Dm644 -t "$DESTDIR/lib" \
		jvb/target/dependency/* \
		jvb/lib/videobridge.rc

	install -Dm644 jvb/target/$pkgname*.jar "$DESTDIR/$pkgname.jar"
	install -Dm755 -t "$DESTDIR" "jvb/resources/jvb.sh"
	install -Dm755 -t "$DESTDIR" "resources/graceful_shutdown.sh"
	install -Dm755 -t "$DESTDIR" "resources/collect-dump-logs.sh"

	# configuration
	install -dm755 -o jvb -g jitsi "$USERDIR"
	install -dm755 -o jvb -g jitsi "$CONFDIR"
	install -Dm640 -o jvb -g jitsi "$srcdir"/jvb.conf "$CONFDIR/jvb.conf"
	install -Dm640 -o jvb -g jitsi "$srcdir"/sip-communicator.properties "$CONFDIR/sip-communicator.properties"
	install -Dm644 -o jvb -g jitsi -t "$CONFDIR" "jvb/lib/logging.properties"
	install -Dm644 "config/20-jvb-udp-buffers.conf" "$pkgdir/etc/sysctl.d/$pkgname.conf"

	# init scripts and logrotate
	install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
	install -Dm644 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
	install -Dm644 "$srcdir"/$pkgname.logrotate "$pkgdir"/etc/logrotate.d/$pkgname

	# logging
	install -dm775 -o jvb -g jitsi "$LOGDIR"
}

sha512sums="
bb4d8cb859ec6cb02ac9ee800270b22e7b992c8fb7ab2646f92366c2814c1389fc1170c8ced56c24e1587972b4ed599cf5e96a419aeac4bfc15747602a848b7c  jitsi-videobridge-2.3.204.tar.gz
6664b23c0a2d8b4e7126bb83fcef0f26e5e2a0083c5c54b72841c93405b83aed12d54476abeffd78a46681655aee40b3a1b5bae639fb1c829e1cd9c7b7abce17  jitsi-videobridge.initd
e35f14e2b477dc28cc7ba685c0e134e1f0ba4b32c73a9d8b7c5fe9d2bb9caf2c2598089b802370a8660d20d49f2a32b472c47597bcb0a6bcba18c344af0e01ef  jitsi-videobridge.confd
86806b7fd222d5a3d0fc50daf8f2f0f2ef757011f44c8ce7ddd8836455393a7ac3e6f6d73bb6a929b796c3e877e1220c8bc2a3fe8178ed70cdede16d13ddce85  jitsi-videobridge.logrotate
07d1a5af56a32245bea56e9c434869bd35f58c61b5aac85960d358cfb926c8f0b342ff6ab0e57f97a1ed250435f7652fdfafc99e318f8f5d19f1cb7c7659dc8d  jvb.conf
90cda8ff3a0b4c04841e3bafe951615dcdfd71df0793988eaaa696b8d31c0e40603557f71fb22935ad61cd677aa6e692dae9ab89b5b2350030e4797641cf5360  sip-communicator.properties
"
