summary refs log tree commit diff
path: root/pkgs/servers/matrix-synapse/plugins/mjolnir-antispam.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/servers/matrix-synapse/plugins/mjolnir-antispam.nix')
-rw-r--r--pkgs/servers/matrix-synapse/plugins/mjolnir-antispam.nix31
1 files changed, 28 insertions, 3 deletions
diff --git a/pkgs/servers/matrix-synapse/plugins/mjolnir-antispam.nix b/pkgs/servers/matrix-synapse/plugins/mjolnir-antispam.nix
index 88ec52f4536..58b19586e4b 100644
--- a/pkgs/servers/matrix-synapse/plugins/mjolnir-antispam.nix
+++ b/pkgs/servers/matrix-synapse/plugins/mjolnir-antispam.nix
@@ -1,16 +1,41 @@
-{ lib, buildPythonPackage, fetchFromGitHub, matrix-synapse }:
+{ lib, buildPythonPackage, fetchFromGitHub, matrix-synapse, fetchpatch }:
 
 buildPythonPackage rec {
   pname = "matrix-synapse-mjolnir-antispam";
-  version = "1.2.1";
+  version = "1.3.1";
 
   src = fetchFromGitHub {
     owner = "matrix-org";
     repo = "mjolnir";
     rev = "v${version}";
-    sha256 = "0fvdzn5l1a6bhr1qzgs30a3kh6nj0byqichnl149sjgr0v4lpkz1";
+    sha256 = "05O7NgqlsVu4mdx1+0CZgBvwvBCWYg7nSFknJiXxuoc=";
   };
 
+  patches = [
+    #  Update legacy antispam plugin with newer types. Or it'll just ignore mjolnir 1.3.1 rules.
+    (fetchpatch {
+      url = "https://github.com/matrix-org/mjolnir/commit/eb8c5e08b4c2b78e6a796e38e826ac3b7e9dfbaf.patch";
+      sha256 = "sha256-rfFU45PfxR2YmNRU74eBI9M2hqBVZcNH0Sw8W/cavD4=";
+      stripLen = 1;
+    })
+    # Port to Synapse module API (needs Synapse >= 1.37.0)
+    (fetchpatch {
+      url = "https://github.com/matrix-org/mjolnir/commit/9c9bd0e02907412b5fa6b95844e9f53ac07b61fd.patch";
+      sha256 = "sha256-HR2OvqFnlQwRV7ezfOjseatjo+3P8i9PsV7D+hLD1Yo=";
+      stripLen = 1;
+      excludes = [
+        "README.md"
+        "mx-tester.yml"
+      ];
+    })
+    # Move glob_to_regex into the source
+    (fetchpatch {
+      url = "https://github.com/matrix-org/mjolnir/commit/6cb461fed424f07bf50a1fdc0693d40ed8bbee12.patch";
+      sha256 = "sha256-tqcKXNs+fxwPIvN5sJjdNgcz5KUVHiXgulLHR2redYk=";
+      stripLen = 1;
+    })
+  ];
+
   sourceRoot = "./source/synapse_antispam";
 
   propagatedBuildInputs = [ matrix-synapse ];