Skip to content

Dendrite

services.dendrite.enable

Whether to enable matrix.org dendrite. Type: boolean

Default

false

Example

true

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/matrix/dendrite.nix

services.dendrite.environmentFile

Environment file as defined in {manpage}systemd.exec(5). Secrets may be passed to the service without adding them to the world-readable Nix store, by specifying placeholder variables as the option value in Nix and setting these variables accordingly in the environment file. Currently only used for the registration secret to allow secure registration when client_api.registration_disabled is true.

  # snippet of dendrite-related config
  services.dendrite.settings.client_api.registration_shared_secret = "$REGISTRATION_SHARED_SECRET";
  # content of the environment file
  REGISTRATION_SHARED_SECRET=verysecretpassword

Note that this file needs to be available on the host on which dendrite is running.

Type: null or path

Default

null

Example

"/var/lib/dendrite/registration_secret"

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/matrix/dendrite.nix

services.dendrite.httpPort

The port to listen for HTTP requests on.

Type: null or 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default

8008

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/matrix/dendrite.nix

services.dendrite.httpsPort

The port to listen for HTTPS requests on.

Type: null or 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default

null

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/matrix/dendrite.nix

services.dendrite.loadCredential

This can be used to pass secrets to the systemd service without adding them to the nix store. To use the example setting, see the example of {option}services.dendrite.settings.global.private_key. See the LoadCredential section of systemd.exec manual for more information.

Type: list of string

Default

[ ]

Example

["private_key:/path/to/my_private_key"]

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/matrix/dendrite.nix

services.dendrite.openRegistration

Allow open registration without secondary verification (reCAPTCHA).

Type: boolean

Default

false

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/matrix/dendrite.nix

services.dendrite.settings

Configuration for dendrite, see: https://github.com/matrix-org/dendrite/blob/master/dendrite-config.yaml for available options with which to populate settings.

Type: YAML value

Default

{ }

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/matrix/dendrite.nix

services.dendrite.settings.app_service_api.database.connection_string

Database for the Appservice API.

Type: string

Default

"file:federationapi.db"

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/matrix/dendrite.nix

services.dendrite.settings.client_api.registration_disabled

Whether to disable user registration to the server without the shared secret.

Type: boolean

Default

true

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/matrix/dendrite.nix

services.dendrite.settings.federation_api.database.connection_string

Database for the Federation API.

Type: string

Default

"file:federationapi.db"

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/matrix/dendrite.nix

services.dendrite.settings.global.private_key

The path to the signing private key file, used to sign requests and events.

  nix-shell -p dendrite --command "generate-keys --private-key matrix_key.pem"

Type: path or string matching the pattern ^\$CREDENTIALS_DIRECTORY/.+

Example

"$CREDENTIALS_DIRECTORY/private_key"

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/matrix/dendrite.nix

services.dendrite.settings.global.server_name

The domain name of the server, with optional explicit port. This is used by remote servers to connect to this server. This is also the last part of your UserID.

Type: string

Example

"example.com"

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/matrix/dendrite.nix

services.dendrite.settings.global.trusted_third_party_id_servers

Lists of domains that the server will trust as identity servers to verify third party identifiers such as phone numbers and email addresses

Type: list of string

Default

["matrix.org""vector.im"]

Example

["matrix.org"]

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/matrix/dendrite.nix

services.dendrite.settings.key_server.database.connection_string

Database for the Key Server (for end-to-end encryption).

Type: string

Default

"file:keyserver.db"

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/matrix/dendrite.nix

services.dendrite.settings.media_api.base_path

Storage path for uploaded media.

Type: string

Default

"/var/lib/dendrite/media_store"

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/matrix/dendrite.nix

services.dendrite.settings.media_api.database.connection_string

Database for the Media API.

Type: string

Default

"file:mediaapi.db"

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/matrix/dendrite.nix

services.dendrite.settings.mscs.database.connection_string

Database for exerimental MSC's.

Type: string

Default

"file:mscs.db"

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/matrix/dendrite.nix

services.dendrite.settings.relay_api.database.connection_string

Database for the Relay Server.

Type: string

Default

"file:relayapi.db"

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/matrix/dendrite.nix

services.dendrite.settings.room_server.database.connection_string

Database for the Room Server.

Type: string

Default

"file:roomserver.db"

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/matrix/dendrite.nix

services.dendrite.settings.sync_api.database.connection_string

Database for the Sync API.

Type: string

Default

"file:syncserver.db"

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/matrix/dendrite.nix

services.dendrite.settings.sync_api.search.enable

Whether to enable Dendrite's full-text search engine. Type: boolean

Default

false

Example

true

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/matrix/dendrite.nix

services.dendrite.settings.sync_api.search.index_path

The path the search index will be created in.

Type: string

Default

"/var/lib/dendrite/searchindex"

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/matrix/dendrite.nix

services.dendrite.settings.sync_api.search.language

The language most likely to be used on the server - used when indexing, to ensure the returned results match expectations. A full list of possible languages can be found at https://github.com/blevesearch/bleve/tree/master/analysis/lang

Type: string

Default

"en"

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/matrix/dendrite.nix

services.dendrite.settings.user_api.account_database.connection_string

Database for the User API, accounts.

Type: string

Default

"file:userapi_accounts.db"

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/matrix/dendrite.nix

services.dendrite.settings.user_api.device_database.connection_string

Database for the User API, devices.

Type: string

Default

"file:userapi_devices.db"

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/matrix/dendrite.nix

services.dendrite.tlsCert

The path to the TLS certificate.

  nix-shell -p dendrite --command "generate-keys --tls-cert server.crt --tls-key server.key"

Type: null or path

Default

null

Example

"/var/lib/dendrite/server.cert"

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/matrix/dendrite.nix

services.dendrite.tlsKey

The path to the TLS key.

  nix-shell -p dendrite --command "generate-keys --tls-cert server.crt --tls-key server.key"

Type: null or path

Default

null

Example

"/var/lib/dendrite/server.key"

Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/matrix/dendrite.nix