On Sat, Jul 23, 2016 at 01:06:12PM +0200, Mike Murdoch wrote: > Hello,
Hi, > I've been trying to find solutions to ease my Email management for a > while now. OfflineIMAP looks promising, but before I start setting > things up, I'm wondering if it is even the right thing to use. > > Current setup: > - A couple of different Email accounts with different providers > - Different devices (email clients) in different networks that should > have access to all accounts > - A home server > > Requirements: > - Grab Email from the provider a soon as possible, leave nothing behind > (i.e. POP3 principle, delete from server) > - Still allow synchronization of mail between clients > - Make setup of a new client easier (don't want to add 10 accounts to > each new device) > > So I was thinking about using a sort of proxy on my home server. The > idea is that the proxy grabs mail from all accounts and stores them > locally. Then my clients only need to connect to this proxy via IMAP to > see all mail and stay synchronized. > > One way this could work is that each provider gets its own folder on the > proxy. e.g. Gmail/Inbox, Gmail/Sent, etc. I've never tried something like that. I think it's possible to get something near to what to aim, though. Here's my idea: - One devocot IMAP server (at home) serving as proxy. - Create one account on the home dovecot server used by all the final devices. - Configure each external account to synchronize via offlineimap to the home server. While I did not think about this use case deeply, I see no reason why this would fail. The main limitation is that offlineimap does NOT support deleting synchronized emails. There is a possible workarounds: 1. By syncing all the remotes to the maildirs handled by Dovecot, one folder (maildir) per account. Archive emails on the Dovecot server to maildirs filtered in offlineimap (see the folderfilter configuration option) so they are deleted on the remotes. This might be done automatically by scripts of your own (perhaps relying on the postsynchook feature of offlineimap). 2. By using a temporary synchronization storage: offlineimap would sync the maidlirs to the temporary location and a script moves the new emails to the maildirs handled by Dovecot. On next sync, the emails would look as deleted by offlineimap so it would propagate the deletions on the remotes IMAP servers. Option 2 looks the most suitable and flexible. > A remaining issue is how to handle outgoing mail. If I have everything > going through the proxy, how do I tell it which account to ultimately > send with? And I *do* want to be able to send via any account. First, sending emails relies on SMTP which is out of IMAP and offlineimap. Emails need a path to go out. You might want to configure your own SMTP server and tune the usual restrictions to allow outgoing emails from the end-devices you have. Please, bear in mind this is NOT our expertise so requesting teams of SMTP softwares is a good advice. > Is OfflineIMAP suitable for this kind of task? If not, is there > something else? Your use case is not usual. I'm not aware of a tool providing what you want out of the box. However, I'm pretty sure you can get what you want with any IMAP server (Dovecot is a good choice, it's known to work with offlineimap), offlineimap and perhaps some scripts of your own depending on the level of integration you want. > Should I even bother with OfflineIMAP or wait for imapfw to mature? imapfw would be natural and good choice to build your own product. As you know, it's still not ready and you should not expect it in the short term. I have no idea when we'll get something working. Also, you should not expect others to implement your own use case. BTW, I'm welcoming contributors for both products if you think this worth the efforts. Hope this helps! -- Nicolas Sebrecht _______________________________________________ OfflineIMAP-project mailing list: [email protected] http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/offlineimap-project OfflineIMAP homepages: - https://github.com/OfflineIMAP - http://offlineimap.org
