diff options
Diffstat (limited to 'modules/home.legacy/conf/mail')
-rw-r--r-- | modules/home.legacy/conf/mail/default.nix | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/modules/home.legacy/conf/mail/default.nix b/modules/home.legacy/conf/mail/default.nix index 5e35c002..46526173 100644 --- a/modules/home.legacy/conf/mail/default.nix +++ b/modules/home.legacy/conf/mail/default.nix @@ -20,8 +20,14 @@ [ "$1" = "get" ] || { exit 1 } - if cat | grep "username=${userName}" -q; then - ${passwordCommand} + output="$(cat)" + if echo "$output" | grep "username=${userName}" -q; then + if password="$(${passwordCommand})"; then + printf "%s\npassword=%s\n\n" "$output" "$password" + else + # The password command failed (for whatever reason) + exit 1 + fi else # Not our business. exit 1 @@ -29,11 +35,11 @@ ''); accountCredentials = # TODO: This will result in only one of them being defined, as we duplicate the - # attribute key<2025-02-03> + # attribute key <2025-02-03> lib.mapAttrs' (_: value: { - name = "credential"; + name = "credential.smtp://${value.smtp.host}:${builtins.toString value.smtp.port}"; value = { - "smtp://${value.smtp.host}:${builtins.toString value.smtp.port}" = mkHelper value; + "helper" = mkHelper value; }; }) accounts; |