-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 14/09/12 18:27, Mark Anderson wrote: > On Fri, 14 Sep 2012 09:50:01 +0200, Rainer M Krug > <R.M.Krug@gmail.com> wrote: On 13/09/12 17:15, Damien Cassou > wrote: >>>> On Thu, Sep 13, 2012 at 5:13 PM, Jeremy Nickurak >>>> <not-much@trk.nickurak.ca> wrote: >>>>> Gmail doesn't have folders, of course, it has labels, which are approximately >>>>> equivalent to notmuch tags. The key difference being that a message can only be in one >>>>> folder, but it can have multiple tags/labels. >>>> >>>> Gmail exports its labels as IMAP folders: an email with multiple labels will be >>>> duplicated in multiple folders (one per label). That's why I'm asking if it would be >>>> possible to manupale folders from Notmuch instead of tags. >>>> > > I don't think there is an easy solution. notmuch uses a maildir and tags. Gmail needs to be > synced to this local maildir earlier, and this is where I think the problem comes in: I am not > aware of any sync tool which maintains the gmail labels, as they are in in the imap context > folders. > > I think the only real solution woud be: > > Download from gmail -> local: 1) download only the "All Mail" folder 2) implement a tagging > tool which syncs the gmail labels to notmuch tags > >> Gmail's IMAP protocol does expose a folder hierarchy which you can use to reverse engineer >> the tag cloud of each email. > <<SNIP a lot>> Wow - I learned a lot about notmuch and how things can be done - thanks for this explanation. >> Of course this is terrible on performance, as you will have lots of I guess this will be the problem: a typical gmail user, keeps the emails - one has 10GB as storage, so why delete potentially important mails? So I guess this would be a case for e.g. offlineimap. >> copies of mails when you have lots of tags on your mail, but here's a summary of the actions >> you need to coordinate to keep them in sync. <SNIP>> >> The benefit of using the mail sync is it uses a widely distributed mail synchronization >> model, but it really tags expensive to synchronize. It gets better if you use the Gmail imap >> extensions that can list the tags without your client requesting a copy of the entire email >> for each tag the mail has. However, Even when you have that, you don't have bulletproof >> mail, because the actions need to be guaranteed to complete before synchronization and after >> synchronization, and any user changes need to be held off, as they _will_ be interpreted >> incorrectly if they take place during the pre-sync, sync, post-sync window. It would then definitely be useful to include this in offlineimap - effectively have a "tagging" sync model, where only the "All Mail" folder is synched, and for the tags, a database is kept, which contains the tags for each message-id. This could then be used from notmuch (or other clients) to set the tags of the email. For the moment I guess I will stick with my only-"All Mails"-sync-and-ignore-tags approach. Thanks, Rainer > >> You can simplify this if you make guarantees in your usage model. That you will never do >> tagging operations during a pre-, sync, post- cycle, or that you only do synchronization one >> way or the other, instead of full bidirectional sync. > >> It's a difficult problem, I look forward to seeing other solutions proposed. > >> Thanks, -Mark Anderson > > upload local -> gmail 1) upload "All Mail folder 2) assign on gmail the labels corresponding to > the notmuch tags. > > The step 1 could be done by any sync tool available for this (offlineimap, ...) > > step 2 needs to be developed - no idea how, but it surely would be really usefull, because > then notmuch would even become a perfect tool for gmail backup as well. > > Cheers, > > Rainer >> >> _______________________________________________ notmuch mailing list >> notmuch@notmuchmail.org >> http://notmuchmail.org/mailman/listinfo/notmuch >> > -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://www.enigmail.net/ iEYEARECAAYFAlBW12EACgkQoYgNqgF2egqd6QCeLW0rFHJY0aeazTgbjo9aUphJ HWAAnjIowdSbIM/UZ7zhCuVHPK4GL1hG =lXST -----END PGP SIGNATURE-----