49 lines
1.4 KiB
Nix
49 lines
1.4 KiB
Nix
{ config, lib, pkgs, ... }:
|
|
let
|
|
homeserverDomain = config.services.matrix-synapse.settings.server_name;
|
|
registrationFileSynapse = "/var/lib/matrix-synapse/telegram-registration.yaml";
|
|
registrationFileMautrix = "/var/lib/mautrix-telegram/telegram-registration.yaml";
|
|
settingsFile = builtins.head (builtins.match ".*--config='(.*)' \\\\.*" config.systemd.services.mautrix-telegram.preStart);
|
|
in
|
|
{
|
|
services.postgresql = {
|
|
enable = true;
|
|
ensureUsers = [{
|
|
name = "mautrix-telegram";
|
|
ensureDBOwnership = true;
|
|
}];
|
|
ensureDatabases = [ "mautrix-telegram" ];
|
|
};
|
|
|
|
sops.secrets.mautrix-telegram_env = { };
|
|
|
|
services.mautrix-telegram = {
|
|
enable = true;
|
|
|
|
environmentFile = config.sops.secrets.mautrix-telegram_env.path;
|
|
registerToSynapse = true;
|
|
|
|
settings = {
|
|
homeserver = {
|
|
address = "http://[::1]:8008";
|
|
domain = homeserverDomain;
|
|
};
|
|
|
|
appservice = rec {
|
|
# Use postgresql instead of sqlite
|
|
database = "postgresql:///mautrix-telegram?host=/run/postgresql";
|
|
port = 8082;
|
|
address = "http://localhost:${toString port}";
|
|
};
|
|
|
|
bridge = {
|
|
relaybot.authless_portals = false;
|
|
permissions = {
|
|
# Add yourself here temporarily
|
|
"@admin:${homeserverDomain}" = "admin";
|
|
};
|
|
relay_user_distinguishers = [ ];
|
|
};
|
|
};
|
|
};
|
|
}
|