]> git.immae.eu Git - perso/Immae/Config/Nix.git/blobdiff - modules/private/environment.nix
Use ldap instead of mysql to fetch mailboxes
[perso/Immae/Config/Nix.git] / modules / private / environment.nix
index 00026227dba94172a7b14b484e5654f8472d72a9..5d74ab555aff23f1e8f70f8922760ca775ee2844 100644 (file)
@@ -650,6 +650,7 @@ in
                   user_attrs = mkOption { type = str; description = "User attribute mapping in LDAP"; };
                   iterate_attrs = mkOption { type = str; description = "User attribute mapping for listing in LDAP"; };
                   iterate_filter = mkOption { type = str; description = "User attribute filter for listing in LDAP"; };
+                  postfix_mailbox_filter = mkOption { type = str; description = "Postfix filter to get mailboxes"; };
                 };
               };
             };
@@ -698,6 +699,28 @@ in
               };
             });
           };
+          sympa = mkOption {
+            description = "Sympa configuration";
+            type = submodule {
+              options = {
+                listmasters = mkOption {
+                  type = listOf str;
+                  description = "Listmasters";
+                };
+                postgresql = mkPsqlOptions "Sympa";
+                data_sources = mkOption {
+                  type = attrsOf str;
+                  default = {};
+                  description = "Data sources to make available to sympa";
+                };
+                scenari = mkOption {
+                  type = attrsOf str;
+                  default = {};
+                  description = "Scenari to make available to sympa";
+                };
+              };
+            };
+          };
         };
       };
     };
@@ -837,6 +860,7 @@ in
                 ldap = mkLdapOptions "Etherpad" {
                   group_filter = mkOption { type = str; description = "Filter for groups"; };
                 };
+                adminPassword = mkOption { type = str; description = "Admin password for mypads / admin"; };
                 session_key = mkOption { type = str; description = "Session key"; };
                 api_key = mkOption { type = str; description = "API key"; };
                 redirects = mkOption { type = str; description = "Redirects for apache"; };
@@ -1061,6 +1085,23 @@ in
       description = "Websites configurations";
       type = submodule {
         options = {
+          immae = mkOption {
+            description = "Immae configuration by environment";
+            type = submodule {
+              options = {
+                temp = mkOption {
+                  description = "Temp configuration";
+                  type = submodule {
+                    options = {
+                      ldap = mkLdapOptions "Immae temp" {
+                        filter = mkOption { type = str; description = "Filter for user access"; };
+                      };
+                    };
+                  };
+                };
+              };
+            };
+          };
           isabelle = mkOption {
             description = "Isabelle configurations by environment";
             type =