# Template file for 'synapse'
pkgname=synapse
version=1.98.0
revision=1
build_style=python3-pep517
build_helper=rust
make_check_target=tests
make_install_target="dist/matrix_synapse-${version}-*-*-*.whl"
hostmakedepends="python3-poetry-core python3-setuptools-rust cargo"
makedepends="rust-std python3-devel"
depends="python3-jsonschema python3-immutabledict python3-unpaddedbase64
 python3-canonicaljson python3-signedjson python3-pynacl
 python3-service_identity python3-Twisted python3-openssl python3-yaml
 python3-pyasn1 python3-pyasn1-modules python3-bcrypt python3-Pillow
 python3-psutil python3-msgpack python3-phonenumbers python3-prometheus_client
 python3-attrs python3-netaddr python3-setuptools python3-bleach python3-Jinja2
 python3-psycopg2 python3-lxml python3-saml2 python3-treq python3-macaroons
 python3-sortedcontainers python3-typing_extensions python3-cryptography
 python3-ijson python3-matrix-common python3-packaging python3-pydantic
 python3-automat"
checkdepends="$depends python3-parameterized python3-hiredis xmlsec1 unzip"
short_desc="Matrix reference homeserver"
maintainer="Joel Beckmeyer <joel@beckmeyer.us>"
license="Apache-2.0"
homepage="https://github.com/matrix-org/synapse"
changelog="https://raw.githubusercontent.com/matrix-org/synapse/develop/CHANGES.md"
distfiles="https://github.com/matrix-org/synapse/archive/v${version}.tar.gz"
checksum=eac6c532a599dd3d96228eaffa506132e44ff0d2182688ad3d338dd77ccc52ee

system_accounts="synapse"
synapse_homedir="/var/lib/synapse"

make_dirs="
	/var/lib/synapse 0700 synapse synapse
	/etc/synapse 755 synapse synapse
	/var/log/synapse 0755 synapse synapse"

pre_check() {
	yes | unzip ${make_install_target} "*.dist-info/*"
	[ -d build/lib* ] && cp -r tests build/lib*
}

do_check() {
	PYTHONPATH="$(cd build/lib* && pwd):." trial3 ${makejobs} tests
}

post_check() {
	rm -r build/lib*/tests
}

post_install() {
	vsv synapse

	vsconf docs/sample_config.yaml homeserver.yaml
	vsconf docs/sample_log_config.yaml log.yaml
}
