synapse: update to 1.49.0.
Remove outdated INSTALL and include default configs in package instead Remove unneeded `finish` script from `synapse` service Use `synapse_homeserver` entrypoint instead of calling python directly Redirect stderr to stdout so that errors with config can be seen by user Support ${makejobs} in do_check()
This commit is contained in:
parent
f5673da06e
commit
913ee1bd96
6 changed files with 112 additions and 37 deletions
|
@ -1,27 +0,0 @@
|
||||||
#
|
|
||||||
# Tell user to generate configuration when they first install it
|
|
||||||
# Taken from Arch Linux
|
|
||||||
#
|
|
||||||
case "${ACTION}" in
|
|
||||||
post)
|
|
||||||
if [ ! -e /etc/synapse/homeserver.yaml ]; then
|
|
||||||
cat <<-EOF
|
|
||||||
==> A synapse configuration file needs to be generated before you can
|
|
||||||
start synapse, and you should make sure that it's readable by the
|
|
||||||
synapse user.
|
|
||||||
|
|
||||||
cd /var/lib/synapse
|
|
||||||
sudo -u synapse python3 -m synapse.app.homeserver \\
|
|
||||||
--server-name my.domain.name \\
|
|
||||||
--config-path /etc/synapse/homeserver.yaml \\
|
|
||||||
--generate-config \\
|
|
||||||
--report-stats=yes
|
|
||||||
|
|
||||||
N.B.: The default synapse config enables the webclient feature.
|
|
||||||
You need to either disable it, install the syweb python package
|
|
||||||
from matrix-angular-sdk, or set 'web_client_location' to a path
|
|
||||||
to make synapse not try to serve it using syweb.
|
|
||||||
EOF
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
esac
|
|
|
@ -1,2 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
exec synctl stop /etc/synapse/homeserver.yaml
|
|
|
@ -1,5 +1,4 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
cd /var/lib/synapse
|
cd /var/lib/synapse
|
||||||
exec chpst -u synapse:synapse python3 \
|
exec 2>&1
|
||||||
-m synapse.app.homeserver \
|
exec chpst -u synapse:synapse synapse_homeserver -c /etc/synapse/homeserver.yaml
|
||||||
--config-path=/etc/synapse/homeserver.yaml
|
|
||||||
|
|
88
srcpkgs/synapse/patches/sample_config.patch
Normal file
88
srcpkgs/synapse/patches/sample_config.patch
Normal file
|
@ -0,0 +1,88 @@
|
||||||
|
diff --git a/docs/sample_config.yaml b/docs/sample_config.yaml
|
||||||
|
index 6696ed5d1..f17661fff 100644
|
||||||
|
--- a/docs/sample_config.yaml
|
||||||
|
+++ b/docs/sample_config.yaml
|
||||||
|
@@ -68,11 +68,11 @@ modules:
|
||||||
|
# lowercase and may contain an explicit port.
|
||||||
|
# Examples: matrix.org, localhost:8080
|
||||||
|
#
|
||||||
|
-server_name: "SERVERNAME"
|
||||||
|
+#server_name: "SERVERNAME"
|
||||||
|
|
||||||
|
# When running as a daemon, the file to store the pid in
|
||||||
|
#
|
||||||
|
-pid_file: DATADIR/homeserver.pid
|
||||||
|
+#pid_file: /var/lib/synapse/homeserver.pid
|
||||||
|
|
||||||
|
# The absolute URL to the web client which /_matrix/client will redirect
|
||||||
|
# to if 'webclient' is configured under the 'listeners' configuration.
|
||||||
|
@@ -370,8 +370,8 @@ manhole_settings:
|
||||||
|
# If these are left unset, then hardcoded and non-secret keys are used,
|
||||||
|
# which could allow traffic to be intercepted if sent over a public network.
|
||||||
|
#
|
||||||
|
- #ssh_priv_key_path: CONFDIR/id_rsa
|
||||||
|
- #ssh_pub_key_path: CONFDIR/id_rsa.pub
|
||||||
|
+ #ssh_priv_key_path: /etc/synapse/id_rsa
|
||||||
|
+ #ssh_pub_key_path: /etc/synapse/id_rsa.pub
|
||||||
|
|
||||||
|
# Forward extremities can build up in a room due to networking delays between
|
||||||
|
# homeservers. Once this happens in a large room, calculation of the state of
|
||||||
|
@@ -614,11 +614,11 @@ retention:
|
||||||
|
# any intermediate certificates (for instance, if using certbot, use
|
||||||
|
# `fullchain.pem` as your certificate, not `cert.pem`).
|
||||||
|
#
|
||||||
|
-#tls_certificate_path: "CONFDIR/SERVERNAME.tls.crt"
|
||||||
|
+#tls_certificate_path: "/etc/synapse/SERVERNAME.tls.crt"
|
||||||
|
|
||||||
|
# PEM-encoded private key for TLS
|
||||||
|
#
|
||||||
|
-#tls_private_key_path: "CONFDIR/SERVERNAME.tls.key"
|
||||||
|
+#tls_private_key_path: "/etc/synapse/SERVERNAME.tls.key"
|
||||||
|
|
||||||
|
# Whether to verify TLS server certificates for outbound federation requests.
|
||||||
|
#
|
||||||
|
@@ -808,7 +808,7 @@ caches:
|
||||||
|
database:
|
||||||
|
name: sqlite3
|
||||||
|
args:
|
||||||
|
- database: DATADIR/homeserver.db
|
||||||
|
+ database: /var/lib/synapse/homeserver.db
|
||||||
|
|
||||||
|
|
||||||
|
## Logging ##
|
||||||
|
@@ -816,7 +816,7 @@ database:
|
||||||
|
# A yaml python logging config file as described by
|
||||||
|
# https://docs.python.org/3.7/library/logging.config.html#configuration-dictionary-schema
|
||||||
|
#
|
||||||
|
-log_config: "CONFDIR/SERVERNAME.log.config"
|
||||||
|
+log_config: "/etc/synapse/log.yaml"
|
||||||
|
|
||||||
|
|
||||||
|
## Ratelimiting ##
|
||||||
|
@@ -942,7 +942,7 @@ log_config: "CONFDIR/SERVERNAME.log.config"
|
||||||
|
|
||||||
|
# Directory where uploaded images and attachments are stored.
|
||||||
|
#
|
||||||
|
-media_store_path: "DATADIR/media_store"
|
||||||
|
+media_store_path: "/var/lib/synapse/media_store"
|
||||||
|
|
||||||
|
# Media storage providers allow media to be stored in different
|
||||||
|
# locations.
|
||||||
|
@@ -1531,7 +1531,7 @@ room_prejoin_state:
|
||||||
|
|
||||||
|
# Path to the signing key to sign messages with
|
||||||
|
#
|
||||||
|
-signing_key_path: "CONFDIR/SERVERNAME.signing.key"
|
||||||
|
+signing_key_path: "/etc/synapse/SERVERNAME.signing.key"
|
||||||
|
|
||||||
|
# The keys that the server used to sign messages with but won't use
|
||||||
|
# to sign new messages.
|
||||||
|
@@ -1710,7 +1710,7 @@ saml2_config:
|
||||||
|
# Instead of putting the config inline as above, you can specify a
|
||||||
|
# separate pysaml2 configuration file:
|
||||||
|
#
|
||||||
|
- #config_path: "CONFDIR/sp_conf.py"
|
||||||
|
+ #config_path: "/etc/synapse/sp_conf.py"
|
||||||
|
|
||||||
|
# The lifetime of a SAML session. This defines how long a user has to
|
||||||
|
# complete the authentication process, if allow_unsolicited is unset.
|
13
srcpkgs/synapse/patches/sample_log_config.patch
Normal file
13
srcpkgs/synapse/patches/sample_log_config.patch
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
diff --git a/docs/sample_log_config.yaml b/docs/sample_log_config.yaml
|
||||||
|
index 2485ad25e..71465726b 100644
|
||||||
|
--- a/docs/sample_log_config.yaml
|
||||||
|
+++ b/docs/sample_log_config.yaml
|
||||||
|
@@ -19,7 +19,7 @@ handlers:
|
||||||
|
file:
|
||||||
|
class: logging.handlers.TimedRotatingFileHandler
|
||||||
|
formatter: precise
|
||||||
|
- filename: /var/log/matrix-synapse/homeserver.log
|
||||||
|
+ filename: /var/log/synapse/homeserver.log
|
||||||
|
when: midnight
|
||||||
|
backupCount: 3 # Does not include the current log file.
|
||||||
|
encoding: utf8
|
|
@ -1,6 +1,6 @@
|
||||||
# Template file for 'synapse'
|
# Template file for 'synapse'
|
||||||
pkgname=synapse
|
pkgname=synapse
|
||||||
version=1.48.0
|
version=1.49.0
|
||||||
revision=1
|
revision=1
|
||||||
build_style=python3-module
|
build_style=python3-module
|
||||||
hostmakedepends="python3-setuptools"
|
hostmakedepends="python3-setuptools"
|
||||||
|
@ -12,26 +12,30 @@ depends="python3-jsonschema python3-frozendict python3-canonicaljson
|
||||||
python3-setuptools python3-bleach python3-Jinja2 python3-psycopg2 python3-lxml
|
python3-setuptools python3-bleach python3-Jinja2 python3-psycopg2 python3-lxml
|
||||||
python3-saml2 python3-treq python3-macaroons python3-sortedcontainers
|
python3-saml2 python3-treq python3-macaroons python3-sortedcontainers
|
||||||
python3-typing_extensions python3-ijson"
|
python3-typing_extensions python3-ijson"
|
||||||
checkdepends="$depends python3-parameterized"
|
checkdepends="$depends python3-parameterized python3-mock"
|
||||||
short_desc="Matrix reference homeserver"
|
short_desc="Matrix reference homeserver"
|
||||||
maintainer="Joel Beckmeyer <joel@beckmeyer.us>"
|
maintainer="Joel Beckmeyer <joel@beckmeyer.us>"
|
||||||
license="Apache-2.0"
|
license="Apache-2.0"
|
||||||
homepage="https://github.com/matrix-org/synapse"
|
homepage="https://github.com/matrix-org/synapse"
|
||||||
changelog="https://raw.githubusercontent.com/matrix-org/synapse/develop/CHANGES.md"
|
changelog="https://raw.githubusercontent.com/matrix-org/synapse/develop/CHANGES.md"
|
||||||
distfiles="https://github.com/matrix-org/synapse/archive/v${version}.tar.gz"
|
distfiles="https://github.com/matrix-org/synapse/archive/v${version}.tar.gz"
|
||||||
checksum=182facc856f8d0c0d2d0dd4105fae4f851297167c0ee95c202a3aad9ed86c486
|
checksum=3c1b73eb36ec3af00868707b929f9b9d1faae9ccc4022c2c46bdb025ef0ead8e
|
||||||
|
conf_files="/etc/synapse/homeserver.yaml /etc/synapse/log.yaml"
|
||||||
|
|
||||||
system_accounts="synapse"
|
system_accounts="synapse"
|
||||||
synapse_homedir="/var/lib/synapse"
|
synapse_homedir="/var/lib/synapse"
|
||||||
|
|
||||||
make_dirs="
|
make_dirs="
|
||||||
/var/lib/synapse 0700 synapse synapse
|
/var/lib/synapse 0700 synapse synapse
|
||||||
/etc/synapse 0755 synapse synapse"
|
/var/log/synapse 0755 synapse synapse"
|
||||||
|
|
||||||
do_check() {
|
do_check() {
|
||||||
PYTHONPATH="." trial3 tests
|
PYTHONPATH="." trial3 ${makejobs} tests
|
||||||
}
|
}
|
||||||
|
|
||||||
post_install() {
|
post_install() {
|
||||||
vsv synapse
|
vsv synapse
|
||||||
|
|
||||||
|
vinstall docs/sample_config.yaml 644 etc/synapse homeserver.yaml
|
||||||
|
vinstall docs/sample_log_config.yaml 644 etc/synapse log.yaml
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue