Let's see how this goes. In my ever-growing fear of getting locked out of my life from losing access to my Google and/or Apple accounts, I threw together a few things for self-hosting my own e-mail.
I purchased the lifetime 10GB storage, unlimited domains/emails deal from #MXRoute for $99. I installed getmail, dovecot-imapd, and dovecot-submissiond on my home server.
getmail uses POP-SSL to check for new e-mails every 5 minutes, retrieve them, and delete them from MXRoute's mailbox. I have a separate getmailrc file for each mailbox. These are transformed into Maildir structure/format in a ZFS pool. The 10GB storage in MXRoute is now just a receiving buffer and should be plenty in the case of local downtime.
Meanwhile, dovecot serves IMAP-SSL and SMTP-SSL using certificates generated by Caddy for my other services. The IMAP piece retrieves passwords by invoking pass, but submissiond (the SMTP-SSL relay submission server added to Dovecot in 2.3) seems not to have the same password_command functionality as Dovecot's other features (yet?), so that's unfortunately in permissed plaintext for a relay e-mail account only used for sending (no inbox).
Next step are a few management scripts as there's some duplication between configurations, but overall I'm happy with how quick it was to set up.



-