dotfiles/system/hosts/server/maubot.nix

38 lines
859 B
Nix
Raw Normal View History

2023-05-11 05:33:08 +07:00
{ config
, lib
, pkgs
2023-12-18 08:48:49 +07:00
, inputs
2023-05-11 05:33:08 +07:00
, ... }:
let
cfg = config.server;
in {
2023-12-18 08:48:49 +07:00
imports = [ inputs.maubot.nixosModules.default ];
2023-11-29 01:52:15 +07:00
services.nginx.virtualHosts."matrix.${cfg.domainName}".locations = let
inherit (config.services.maubot) settings;
in {
2023-05-11 05:33:08 +07:00
"/_matrix/maubot/" = {
2023-11-29 01:52:15 +07:00
proxyPass = "http://${lib.quoteListenAddr settings.server.hostname}:${toString settings.server.port}";
2023-05-11 05:33:08 +07:00
proxyWebsockets = true;
};
};
services.maubot.enable = true;
services.maubot.settings = {
database = "postgresql://maubot@localhost/maubot";
server.public_url = "https://matrix.${cfg.domainName}";
2023-05-11 05:33:08 +07:00
};
services.maubot.plugins = with config.services.maubot.package.plugins; [
weather
urban
media
reactbot
reminder
translate
rss
];
2023-11-21 04:46:52 +07:00
services.maubot.pythonPackages = with pkgs.python3.pkgs; [
levenshtein
2023-11-21 04:46:52 +07:00
];
2023-05-11 05:33:08 +07:00
}