Self-host your own digital island

dovecot password generation

Changed files
+1 -1
modules
mailserver
+1 -1
modules/mailserver/dovecot.nix
···
cat <<EOF > ${passwdFile}
${lib.concatStringsSep "\n" (lib.mapAttrsToList (name: value:
-
let passwordHash = ''$(head -n 1 ${passwordFiles."${name}"} | ${pkgs.findutils}/bin/xargs --null ${pkgs.apacheHttpd}/bin/htpasswd -nbB "" | cut -d: -f2)''; in
+
let passwordHash = ''$(${pkgs.dovecot}/bin/doveadm pw -p "$(head -n 1 ${passwordFiles."${name}"})")''; in
"${name}:${passwordHash}:${builtins.toString cfg.vmailUID}:${builtins.toString cfg.vmailUID}::${cfg.mailDirectory}:/run/current-system/sw/bin/nologin:"
+ (if lib.isString value.quota
then "userdb_quota_rule=*:storage=${value.quota}"