Start talking about Maildir. It makes sense

This commit is contained in:
2018-06-25 21:28:51 +01:00
parent 3c52b23723
commit 4f5e3ed906
2 changed files with 8 additions and 5 deletions

View File

@@ -13,13 +13,15 @@ We need:
* Serve autodiscovery bumpf * Serve autodiscovery bumpf
* ActiveSync protocol * ActiveSync protocol
* Storage * Storage
* Give it a home directory. Stores Maildirs + settings DB + TLS
* Accounts * Accounts
* Passwords! * Passwords!
* Emails * Emails
* TLS keys + certificates * TLS keys + certificates
* Search emails - some sort of inverted index necessary * Emails go into Maildirs
* Search emails - some sort of inverted index necessary. One per maildir?
* https://github.com/blevesearch/bleve ? * https://github.com/blevesearch/bleve ?
* Embedded database best. Ideally we have a single file to work with * Settings DB should be a simple K-V store for accounts, passwords, etc. BoltDB?
* https://github.com/coreos/bbolt * https://github.com/coreos/bbolt
* https://github.com/asdine/storm * https://github.com/asdine/storm
@@ -52,3 +54,5 @@ The message body is being stored inefficiently (json []byte, so base64-encoded)
Message username and mailbox are indexed, but is that good enough? Perhaps we Message username and mailbox are indexed, but is that good enough? Perhaps we
should have a bucket per mailbox or something? should have a bucket per mailbox or something?
TODO: rewrite this (and the code) to make Maildir into a thing

View File

@@ -28,9 +28,8 @@
## What not ## What not
* JMAP. Not today. * JMAP. Not today.
* Maildir/mbox support. Imports and exports via IMAP, backups by "copy this file"
* Bring your own X (where X is MTA, IMAP server, database, etc, etc) * Bring your own X (where X is MTA, IMAP server, database, etc, etc)
* Multiple-domain support (maybe later) * Multiple-domain support (maaaaaaaaaaaaybe later)
* CalDAV/Carddav (yet) * CalDAV/Carddav (yet)
* Externally sourced accounts (yet) * Externally sourced accounts (yet)
* Sending email without having an account * Sending email without having an account
@@ -46,7 +45,7 @@ own is painful. Various projects exist to try to make it easier, eg:
* symbiosis * symbiosis
* ... * ...
(Personally, I had some ansible recipes: ) (Personally, I had some ansible recipes!)
Even among people who run their own websites, it's rare to run your own email. Even among people who run their own websites, it's rare to run your own email.
It's just too painful. Much of this pain is caused by ultra-configurable It's just too painful. Much of this pain is caused by ultra-configurable