I’ve churned through much of the general stuff about email, and am about to dive into specific configurations and examples. In some ways, the protocol background is the hardest part of any book. Orienting the reader to understand the configuration examples and make their own decisions is a pain–though front-loading the hard stuff simplifies writing the rest of the book.
But this means I need to make final decisions on the book’s technology stack.
Postfix (backed with MariaDB) and Dovecot are absolutely in, period. But there are dozens of implementations of DKIM and greylisting and antivirus, of varying sizes and inclusivity. Postfix supports the milter interface, so there’s an overwhelming pool of plugins. Options, options!
I’m leaning towards rspamd, and providing antivirus and dkim through it.
One of the core Unix philosophies is “many small tools that each do a single thing well.” Rspamd is easy, but it certainly isn’t small. How much difference is there between “plug ClamAV and SpamAssassin and greylisting and SPF and OpenDKIM and RBLs into Postfix’s milter interface” and “plug ClamAV and greylisting and SPF and DKIM and RBLs into rspamd’s interface and milter rspamd into Postfix”? Not a huge amount. Either way, you can see all the connections and have source code to all the tools.
Then there’s the web IMAP client. Today’s contenders seem to be Horde and Rainloop. Horde is heavier than necessary. The free version of Rainloop is nice, but it’s commercially backed and I worry about enshittification. I’m not predicting that they will turn on their customers, but including such products in a book has burned me. Many times.
Anyway, that’s where the book is and what I’m doing. The obligatory reminder that you can still sponsor RYOMS.
Until I switched to O365, I still used RoundCube for webmail, I didn’t think it was that niche??
I’d rather see SpamAssassin covered because that’s what’s still under the hood of most commercial AS/AV products.
YMMV. Any coverage of the architecture is better than none.
Horde is not really maintained anymore, it doesn’t work with php 8.2 (and got removed from FreeBSD ports in March).
The Rainloop github page shows the last commit to the main branch was in 2022. Snappymail seems to be a actively maintained fork of rainloop.
Roundcube also seems to be a popular webmail package, but as a Horde user I have a problem with the sort order in roundcube… the list of emails has the latest one on top, and no way to have the sort order reversed and at the same time have the list show the “last” page = the latest emails. In Horde I’m used to latest one at the end of the list and the page opening with the lastest email visible in the list.