dotfiles/system/hosts/server/maubot.nix

36 lines
811 B
Nix

{ config
, lib
, pkgs
, ... }:
let
cfg = config.server;
in {
services.nginx.virtualHosts."matrix.${cfg.domainName}".locations = let
inherit (config.services.maubot) settings;
in {
"^~ /_matrix/maubot/" = {
proxyPass = "http://${lib.quoteListenAddr settings.server.hostname}:${toString settings.server.port}";
proxyWebsockets = true;
};
};
services.maubot.enable = true;
services.maubot.settings = {
database = "postgresql://maubot@localhost/maubot";
server.public_url = "https://matrix.${cfg.domainName}";
};
services.maubot.plugins = with config.services.maubot.package.plugins; [
weather
urban
media
reactbot
reminder
translate
rss
];
services.maubot.pythonPackages = with pkgs.python3.pkgs; [
levenshtein
pillow
];
}