feld,
@feld@bikeshed.party avatar

@delta is it supported to self-host an email server for Delta Chat and have functional push notifications with the iOS app?

delta,
@delta@chaos.social avatar

@feld yes, if you setup according to https://github.com/deltachat/chatmail?tab=readme-ov-file#chatmail-services-optimized-for-delta-chat-apps then iOS push notifications work automatically.

feld,
@feld@bikeshed.party avatar

@delta but I don't want to run Dovecot+Postfix, for example. How would I do this with any other mail server? It's not clear what the specific technical requirements are for it work

Hyolobrika,

If you're running a special server, why not just use XMPP or Matrix?

feld,
@feld@bikeshed.party avatar

@Hyolobrika @delta XMPP is nothing but pain because of the XEPs and the client quality is REALLY bad on iOS. It's hard to express how bad it is. Truly.

Oh you want to be able to do attachments in your XMPP chat? Well now you gotta setup a webserver for that functionality...

With Delta Chat at least everything just works and it's only email. (insofar as you can stomach SMTP+IMAP+SPF+DKIM+DMARC+TLS configuration and deployment)

delta,
@delta@chaos.social avatar

@feld for the moment you will need to read the (small) source of chatmaild and adapt it to your server software and also do your own deployment .... Basically you need to read what is in https://github.com/deltachat/chatmail?tab=readme-ov-file#chatmail-services-optimized-for-delta-chat-apps .... What server software do you want to use?

feld,
@feld@bikeshed.party avatar

@delta Fastest and simplest option would be Stalwart which gives you everything in a single binary. It's all written in Rust. Backend can be as simple as Sqlite or RocksDB

The speed and simplicity of this stack (vs the overwhelming complexity of configuration for Postfix/Exim/Sendmail and Dovecot/Cyrus) is incredibly alluring

Stalwart will do everything for you except your DNS configuration. Yes, it even handles your TLS certs.

https://stalw.art

edit: and I wonder if JMAP would be beneficial for Delta Chat too...

feld,
@feld@bikeshed.party avatar

@delta I think the guts of it are really in this python script, right?

https://github.com/deltachat/chatmail/blob/main/chatmaild/src/chatmaild/notifier.py

I see the configuration mentioning self.filtermail_smtp_port and self.postfix_reinject_port which could mean this is receiving the mails before they are handed to postfix as a pass-through SMTP proxy?

Wait... it has been many years since I've used Postfix and I think it had a feature for spam filtering where you pass the mail to the spam service and it gets injected back into Postfix. Is that the functionality you're leveraging?

I wonder how else this could be done... ideally without involving some SMTP proxy for duplication / retention purposes (these exist, but... silly to require everyone rearchitect their email setup)

feld,
@feld@bikeshed.party avatar

@delta actually I like the idea of building an LMTP proxy for this purpose as a middleman between the MTA and the IMAP backend. That kinda rules out Stalwart but would likely expand the capabilities to almost every other email setup.

jonah,
@jonah@neat.computer avatar

@feld I received a notification once today with this setup (when I should have... more than once), so it seems to be intermittent.
@delta https://discuss.privacyguides.net/t/delta-chat-email-client/18239/4

feld,
@feld@bikeshed.party avatar

@jonah @delta it might not have been a real notification but due to Delta Chat being permitted by iOS to poll for an update periodically

(this is a new-ish thing in iOS and the allowed polling interval is shorter if the app is used more frequently, but it's still like minimum 14 minute interval)

jonah,
@jonah@neat.computer avatar

@feld I think you are right. Good question whether this connectivity status would be green on any provider.
@delta

feld,
@feld@bikeshed.party avatar

@jonah @delta on their public test server it is

  • All
  • Subscribed
  • Moderated
  • Favorites
  • random
  • ngwrru68w68
  • DreamBathrooms
  • modclub
  • GTA5RPClips
  • InstantRegret
  • magazineikmin
  • Youngstown
  • thenastyranch
  • rosin
  • slotface
  • mdbf
  • khanakhh
  • kavyap
  • anitta
  • tester
  • normalnudes
  • Leos
  • cisconetworking
  • osvaldo12
  • everett
  • Durango
  • tacticalgear
  • provamag3
  • megavids
  • ethstaker
  • cubers
  • JUstTest
  • lostlight
  • All magazines