services.mautrix-signal.settings
config.yaml configuration as a Nix attribute set.
Configuration options should match those described in the example configuration.
Get an example configuration by executing mautrix-signal -c example.yaml --generate-example-config
Secret tokens should be specified using environmentFile
instead of this world-readable attribute set.
- Type
JSON value- Default
{ appservice = { as_token = ""; bot = { displayname = "Signal Bridge Bot"; username = "signalbot"; }; hostname = "[::]"; hs_token = ""; id = "signal"; port = 29328; username_template = "signal_{{.}}"; }; bridge = { command_prefix = "!signal"; permissions = { "*" = "relay"; }; relay = { enabled = true; }; }; database = { type = "sqlite3"; uri = "file:/var/lib/mautrix-signal/mautrix-signal.db?_txlock=immediate"; }; direct_media = { server_key = ""; }; double_puppet = { secrets = { }; servers = { }; }; encryption = { pickle_key = ""; }; homeserver = { address = "http://localhost:8448"; }; logging = { min_level = "info"; writers = [ { format = "pretty-colored"; time_format = " "; type = "stdout"; } ]; }; network = { displayname_template = "{{or .ProfileName .PhoneNumber \"Unknown user\"}}"; }; provisioning = { shared_secret = ""; }; public_media = { signing_key = ""; }; }- Example
{ appservice = { ephemeral_events = false; id = "signal"; }; backfill = { enabled = true; }; bridge = { mute_only_on_create = false; permissions = { "example.com" = "user"; }; private_chat_portal_meta = true; }; database = { type = "postgres"; uri = "postgresql:///mautrix_signal?host=/run/postgresql"; }; encryption = { allow = true; default = true; pickle_key = "$ENCRYPTION_PICKLE_KEY"; require = true; }; homeserver = { address = "http://[::1]:8008"; domain = "my-domain.tld"; }; matrix = { message_status_events = true; }; provisioning = { shared_secret = "disable"; }; }- Declared
- <nixpkgs/nixos/modules/services/matrix/mautrix-signal.nix>