config.yaml configuration as a Nix attribute set. Configuration options should match those described in example-config.yaml.
Secret tokens should be specified using environmentFile instead of this world-readable attribute set.
Declarations
Type
JSON value
Default
{
appservice = {
address = "http://localhost:8080";
database = "sqlite:////var/lib/mautrix-telegram/mautrix-telegram.db";
database_opts = { };
hostname = "0.0.0.0";
port = 8080;
};
bridge = {
double_puppet_server_map = { };
login_shared_secret_map = { };
permissions = {
"*" = "relaybot";
};
relaybot = {
whitelist = [ ];
};
};
homeserver = {
software = "standard";
};
logging = {
formatters = {
precise = {
format = "[%(levelname)s@%(name)s] %(message)s";
};
};
handlers = {
console = {
class = "logging.StreamHandler";
formatter = "precise";
};
};
loggers = {
aiohttp = {
level = "WARNING";
};
mau = {
level = "INFO";
};
telethon = {
level = "INFO";
};
};
root = {
handlers = [
"console"
];
level = "INFO";
};
version = 1;
};
}
Example
{
homeserver = {
address = "http://localhost:8008";
domain = "public-domain.tld";
};
appservice.public = {
prefix = "/public";
external = "https://public-appservice-address/public";
};
bridge.permissions = {
"example.com" = "full";
"@admin:example.com" = "admin";
};
telegram = {
connection.use_ipv6 = true;
};
}