MyNixOS website logo
option

services.mautrix-telegram.settings

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;
  };
}