summary refs log tree commit diff
diff options
context:
space:
mode:
authorNick Cao <nickcao@nichi.co>2022-05-01 15:45:12 +0800
committerNick Cao <nickcao@nichi.co>2022-05-11 18:40:05 +0800
commit82f0b53588967aa392e8a60fd30022ce8981329b (patch)
treea9fe0641779bae60e1897294d8cb6019fa7d87bf
parent4f907176e446fd75239917b1e8e5d3fb44beeb3d (diff)
downloadnixpkgs-82f0b53588967aa392e8a60fd30022ce8981329b.tar
nixpkgs-82f0b53588967aa392e8a60fd30022ce8981329b.tar.gz
nixpkgs-82f0b53588967aa392e8a60fd30022ce8981329b.tar.bz2
nixpkgs-82f0b53588967aa392e8a60fd30022ce8981329b.tar.lz
nixpkgs-82f0b53588967aa392e8a60fd30022ce8981329b.tar.xz
nixpkgs-82f0b53588967aa392e8a60fd30022ce8981329b.tar.zst
nixpkgs-82f0b53588967aa392e8a60fd30022ce8981329b.zip
dendrite: 0.8.1 -> 0.8.4
-rw-r--r--nixos/modules/services/misc/dendrite.nix9
-rw-r--r--nixos/tests/dendrite.nix1
-rw-r--r--pkgs/servers/dendrite/default.nix21
3 files changed, 27 insertions, 4 deletions
diff --git a/nixos/modules/services/misc/dendrite.nix b/nixos/modules/services/misc/dendrite.nix
index 35bec40926e..ac5df9951b3 100644
--- a/nixos/modules/services/misc/dendrite.nix
+++ b/nixos/modules/services/misc/dendrite.nix
@@ -222,6 +222,13 @@ in
         for available options with which to populate settings.
       '';
     };
+    openRegistration = lib.mkOption {
+      type = lib.types.bool;
+      default = false;
+      description = ''
+        Allow open registration without secondary verification (reCAPTCHA).
+      '';
+    };
   };
 
   config = lib.mkIf cfg.enable {
@@ -263,6 +270,8 @@ in
           "--https-bind-address :${builtins.toString cfg.httpsPort}"
           "--tls-cert ${cfg.tlsCert}"
           "--tls-key ${cfg.tlsKey}"
+        ] ++ lib.optionals cfg.openRegistration [
+          "--really-enable-open-registration"
         ]);
         ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
         Restart = "on-failure";
diff --git a/nixos/tests/dendrite.nix b/nixos/tests/dendrite.nix
index a444c9b2001..d4a5bb13226 100644
--- a/nixos/tests/dendrite.nix
+++ b/nixos/tests/dendrite.nix
@@ -17,6 +17,7 @@ import ./make-test-python.nix (
           homeserver = { pkgs, ... }: {
             services.dendrite = {
               enable = true;
+              openRegistration = true;
               settings = {
                 global.server_name = "test-dendrite-server.com";
                 global.private_key = private_key;
diff --git a/pkgs/servers/dendrite/default.nix b/pkgs/servers/dendrite/default.nix
index 82c6d4ba3e6..2b12a47edc8 100644
--- a/pkgs/servers/dendrite/default.nix
+++ b/pkgs/servers/dendrite/default.nix
@@ -1,17 +1,30 @@
-{ lib, buildGoModule, fetchFromGitHub, nixosTests }:
+{ lib, buildGoModule, fetchFromGitHub, fetchurl, nixosTests, postgresql, postgresqlTestHook }:
 
 buildGoModule rec {
   pname = "matrix-dendrite";
-  version = "0.8.1";
+  version = "0.8.4";
 
   src = fetchFromGitHub {
     owner = "matrix-org";
     repo = "dendrite";
     rev = "v${version}";
-    sha256 = "sha256-cEqedl6iVt/HZEh1zeEcqby8gfJEcqIDEQnPewyErMI=";
+    sha256 = "sha256-w4un+TdFTzfVZltvo6ZAPQ3B9HJvnGlJW+LmZHuYk1M=";
   };
 
-  vendorSha256 = "sha256-nQx+PyjRvECeIerZ9jq7YMTSS8LfohY7NgK8DklREQQ=";
+  vendorSha256 = "sha256-AJ7Hn23aji/cXioDaOSyF8XD3Mr135DZf7KbUW1SoJ4=";
+
+  checkInputs = [
+    postgresqlTestHook
+    postgresql
+  ];
+
+  postgresqlTestUserOptions = "LOGIN SUPERUSER";
+  preCheck = ''
+    export PGUSER=$(whoami)
+    # temporarily disable this failing test
+    # it passes in upstream CI and requires further investigation
+    rm roomserver/internal/input/input_test.go
+  '';
 
   passthru.tests = {
     inherit (nixosTests) dendrite;