# vim:ft=yaml | |
## Server ## | |
server_name: "example.com" | |
public_baseurl: "https://example.com" | |
pid_file: /homeserver.pid | |
web_client: False | |
soft_file_limit: 0 | |
log_config: "/conf/log.config" | |
## Ports ## | |
listeners: | |
- port: 8008 | |
tls: false | |
bind_addresses: ['::'] | |
type: http | |
x_forwarded: true | |
resources: | |
- names: [client] | |
compress: true | |
- names: [federation] | |
compress: false | |
- port: 9092 | |
type: metrics | |
bind_addresses: ['::'] | |
## Database ## | |
database: | |
name: "psycopg2" | |
args: | |
user: "synapse" | |
password: "{{ POSTGRES_PASSWORD }}" | |
database: "synapse" | |
host: "waw3-postgres" | |
port: "5432" | |
cp_min: 5 | |
cp_max: 10 | |
## Performance ## | |
event_cache_size: "10K" | |
## Ratelimiting ## | |
rc_messages_per_second: 0.2 | |
rc_message_burst_count: 10.0 | |
federation_rc_window_size: 1000 | |
federation_rc_sleep_limit: 10 | |
federation_rc_sleep_delay: 500 | |
federation_rc_reject_limit: 50 | |
federation_rc_concurrent: 3 | |
## Files ## | |
media_store_path: "/data/media" | |
uploads_path: "/data/uploads" | |
max_upload_size: "10M" | |
max_image_pixels: "32M" | |
dynamic_thumbnails: false | |
# List of thumbnail to precalculate when an image is uploaded. | |
thumbnail_sizes: | |
- width: 32 | |
height: 32 | |
method: crop | |
- width: 96 | |
height: 96 | |
method: crop | |
- width: 320 | |
height: 240 | |
method: scale | |
- width: 640 | |
height: 480 | |
method: scale | |
- width: 800 | |
height: 600 | |
method: scale | |
url_preview_enabled: False | |
max_spider_size: "10M" | |
## Registration ## | |
enable_registration: False | |
registration_shared_secret: "{{ SYNAPSE_REGISTRATION_SHARED_SECRET }}" | |
bcrypt_rounds: 12 | |
allow_guest_access: True | |
enable_group_creation: true | |
# The list of identity servers trusted to verify third party | |
# identifiers by this server. | |
# | |
# Also defines the ID server which will be called when an account is | |
# deactivated (one will be picked arbitrarily). | |
trusted_third_party_id_servers: | |
- matrix.org | |
- vector.im | |
## Metrics ### | |
enable_metrics: False | |
report_stats: False | |
## API Configuration ## | |
room_invite_state_types: | |
- "m.room.join_rules" | |
- "m.room.canonical_alias" | |
- "m.room.avatar" | |
- "m.room.name" | |
macaroon_secret_key: "{{ SYNAPSE_MACAROON_SECRET_KEY }}" | |
expire_access_token: False | |
## Signing Keys ## | |
signing_key_path: "/data/hackerspace.pl.signing.key" | |
old_signing_keys: {} | |
key_refresh_interval: "1d" # 1 Day. | |
# The trusted servers to download signing keys from. | |
perspectives: | |
servers: | |
"matrix.org": | |
verify_keys: | |
"ed25519:auto": | |
key: "Noi6WqcDj0QmPxCNQqgezwTlBKrfqehY1u2FyWP9uYw" | |
password_config: | |
enabled: false | |
## Experimental Features ## | |
experimental_features: | |
# Message threading support | |
msc3440_enabled: true |