void-packages/srcpkgs/synapse/template

59 lines
2.0 KiB
Bash

# Template file for 'synapse'
pkgname=synapse
version=1.110.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="AGPL-3.0-or-later"
homepage="https://element-hq.github.io/synapse"
changelog="https://raw.githubusercontent.com/element-hq/synapse/develop/CHANGES.md"
distfiles="https://github.com/element-hq/synapse/archive/refs/tags/v${version}.tar.gz"
checksum=be78d75fe3b6473723bd0c72b67e8c0a64c1c98d3909c153bc02201adaa4bfaf
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
vlicense LICENSE
}