Sam Halliday <sam.halliday at gmail.com> writes: > Dear NotMuch, > > But in any case, my RFE/question was this: how hard would it be to have > an optional mode of behaviour where tags are stored in the message > itself, so that syncing with an IMAP server (e.g. via offlineimap) > would make the tags available on all devices. This would negate the need > for workarounds, such as shared notmuch databases, when users have > multiple machines.
The problem is that different imap servers store tags in different ways. Since notmuch does not use imap, it would be hard for notmuch to synchronize the tags, other than the standard ones (for which notmuch already has support). One thing you could do is build an external tool that synchronizes notmuch tags and spawns an imap server in preauth mode to sync the tags. (That would be yet another use for the ctime values we have discussed on this list.) > It would also allow applications like offlineimap to introduce a gmail > plugin that would copy the message into a folder according to its tags, > so gmail labels and notmuch tags would be in sync. Unfortunately, offlineimap is dog slow, especially when you have a ton of maildirs. It just doesn't seem to pipeline very well at all. Even when I run 5 or 10 threads, it still seems to take a whole bunch of round trip times. I used to want what you want. But then it got to the point that offlineimap was taking 30 seconds to sync my 60 maildirs over 3G, even when there was no new mail. Worse, one thread seems to busy-wait for the others to finish, so it often pegs the CPU and drains the battery on my laptop. As a result, I built a tool that synchronizes notmuch tags directly. Now my problem is waiting for "notmuch new" to run, but at least the synchronization part is really fast and pleasant. I'll be releasing my tool in the next couple of months once I've kicked the tires a bit more and fixed up a few things. David