49 lines
1.2 KiB
Nix
49 lines
1.2 KiB
Nix
{ config, lib, ... }:
|
|
|
|
let
|
|
cfg = config.jalr.matrix;
|
|
synapseCfg = config.services.matrix-synapse.settings;
|
|
dataDir = "/var/lib/mautrix-signal";
|
|
in
|
|
lib.mkIf cfg.mautrix-signal.enable {
|
|
services.mautrix-signal = {
|
|
enable = true;
|
|
registerToSynapse = true;
|
|
settings = {
|
|
homeserver = {
|
|
address = synapseCfg.public_baseurl;
|
|
domain = synapseCfg.server_name;
|
|
};
|
|
database = {
|
|
type = "sqlite3-fk-wal";
|
|
uri = "file:${dataDir}/mautrix-signal.db?_txlock=immediate";
|
|
};
|
|
appservice = rec {
|
|
hostname = "127.0.0.1";
|
|
inherit (cfg.mautrix-signal) port;
|
|
address = "http://${hostname}:${toString port}";
|
|
provisioning.shared_secret = "disable";
|
|
};
|
|
bridge = {
|
|
encryption = {
|
|
allow = true;
|
|
default = true;
|
|
};
|
|
verification_levels = {
|
|
receive = "cross-signed-tofu";
|
|
send = "cross-signed-tofu";
|
|
share = "cross-signed-tofu";
|
|
};
|
|
};
|
|
logging = {
|
|
version = 1;
|
|
min_level = "info";
|
|
writers = lib.singleton {
|
|
type = "stdout";
|
|
format = "pretty-colored";
|
|
time_format = " ";
|
|
};
|
|
};
|
|
} // cfg.mautrix-signal.settings;
|
|
};
|
|
}
|