{
users.groups."${domainGroup}" = {
gid = 20001;
- members = ["julm"];
+ members = [
+ users."julm".name
+ ];
};
services.openldap.databases."${domainSuffix}" = {
# WARNING: newlines matter
{ uid = "julm";
cn = "Julien Moutinho";
sn = uid;
- uidNumber = users.julm.uid;
- gidNumber = groups.julm.gid;
+ uidNumber = users."julm".uid;
+ gidNumber = groups."users".gid;
mailAlias = [ "julien.moutinho" ];
userPassword = pass-chomp "members/julm/mail/hashedPassword";
+ mailHomeDirectory = "/home/${uid}/mail/${domain}";
mailStorageDirectory =
- let stateDir = "/var/lib/dovecot";
- d=domain;
- in
+ let stateDir = "/var/lib/dovecot"; in
# I'm personnaly using "maildir:" instead of "sdbox:" to be able to use a local (neo)mutt on it,
# bypassing IMAP because (neo)mutt support of IMAP is very bad
# (can't even have a decent $folder_format (with %n or %m) working,
# neither sorting them by date).
- "maildir:/home/${uid}/mail/${d}/mail:LAYOUT=maildir++:UTF-8:CONTROL=${stateDir}/control/${d}/${uid}:INDEX=${stateDir}/index/${d}/${uid}";
+ # WARNING: regarding the atomicity of backuping,
+ # it's not a good idea to put the mails
+ # and the index/control on different ZFS datasets like here.
+ "maildir:/home/${uid}/mail/${domain}/mail:LAYOUT=maildir++:UTF-8:CONTROL=${stateDir}/control/${domain}/${uid}:INDEX=${stateDir}/index/${domain}/${uid}";
}
];
};