summary refs log tree commit diff
path: root/host/Rory-nginx/services/matrix/draupnir.nix
blob: e9fba15784cf6b410bf1c6a9f3df21ca7476f729 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
{ ... }:

{
  services.draupnir = {
    enable = true;
    homeserverUrl = "https://matrix.rory.gay";

    pantalaimon = {
      enable = true;
      username = "draupnir";
      passwordFile = "/etc/draupnir-password";
      options = {
        #homeserver = "http://localhost:8008";
        #ssl = false;
      };
    };
    settings = {
      managementRoom = "#draupnir-mgmt:rory.gay";
      verboseLogging = false;
      recordIgnoredInvites = true; # Let's log ignored invites, just incase
      autojoinOnlyIfManager = true; # Let's not open ourselves up to DoS attacks
      automaticallyRedactForReasons = [ "*" ]; # I always want autoredact
      fasterMembershipChecks = true;
      # roomStateBackingStore.enabled = true; # broken under nix.

      backgroundDelayMS = 10; # delay isn't needed, I don't mind the performance hit
      pollReports = false; # this is a single person homeserver... let's save ourself the work

      admin.enableMakeRoomAdminCommand = true;
      commands.ban.defaultReasons = [
        "spam"
        "harassment"
        "transphobia"
        "scam"
      ];
      protections = {
        wordlist = {
          words = [
            "tranny"
            "faggot"
            "ywnbaw"
            "nigger"
          ];
          minutesBeforeTrusting = 0;
        };
      };
    };
  };
}