about summary refs log tree commit diff
path: root/nixpkgs/pkgs/servers/matrix-synapse/plugins/ldap3.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/servers/matrix-synapse/plugins/ldap3.nix')
-rw-r--r--nixpkgs/pkgs/servers/matrix-synapse/plugins/ldap3.nix46
1 files changed, 46 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/servers/matrix-synapse/plugins/ldap3.nix b/nixpkgs/pkgs/servers/matrix-synapse/plugins/ldap3.nix
new file mode 100644
index 000000000000..feac6f084726
--- /dev/null
+++ b/nixpkgs/pkgs/servers/matrix-synapse/plugins/ldap3.nix
@@ -0,0 +1,46 @@
+{ lib
+, buildPythonPackage
+, fetchpatch
+, fetchPypi
+, ldap3
+, ldaptor
+, matrix-synapse-unwrapped
+, pytestCheckHook
+, service-identity
+, setuptools
+, twisted
+}:
+
+buildPythonPackage rec {
+  pname = "matrix-synapse-ldap3";
+  version = "0.2.2";
+  format = "pyproject";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "sha256-s4jZVpNIbu9pra79D9noRGPVL+F7AhSgDvyqZptzy3Q=";
+  };
+
+  patches = [
+    # add support to read bind_password from file
+    (fetchpatch {
+      url = "https://github.com/matrix-org/matrix-synapse-ldap3/commit/c65e8cbd27a5cd935ce12e7c4b92143cdf795c86.patch";
+      sha256 = "sha256-0g150TW631cuupSRECXL9A261nj45HclDkHBUbKT7jE=";
+    })
+  ];
+
+  nativeBuildInputs = [ setuptools ];
+
+  propagatedBuildInputs = [ service-identity ldap3 twisted ];
+
+  nativeCheckInputs = [ ldaptor matrix-synapse-unwrapped pytestCheckHook ];
+
+  pythonImportsCheck = [ "ldap_auth_provider" ];
+
+  meta = with lib; {
+    description = "LDAP3 auth provider for Synapse";
+    homepage = "https://github.com/matrix-org/matrix-synapse-ldap3";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ ] ++ teams.c3d2.members;
+  };
+}