atom feed7 messages in net.sourceforge.lists.courier-usersRe: [courier-users] Question about ma...
FromSent OnAttachments
Carl BaldwinSep 9, 2002 8:56 pm 
Peter C. NortonSep 9, 2002 9:29 pm 
Andy CiordiaSep 10, 2002 5:46 am 
Luc BrouardSep 10, 2002 7:24 am 
Carl BaldwinSep 10, 2002 10:32 am 
Peter C. NortonSep 10, 2002 12:29 pm 
Binand Raj S.Sep 11, 2002 7:22 am 
Subject:Re: [courier-users] Question about mail folder hierarchy.
From:Carl Baldwin (ca@ecbaldwin.net)
Date:Sep 10, 2002 10:32:41 am
List:net.sourceforge.lists.courier-users

Well, I have received plenty of answers about how to use mutt with imap. This works somewhat. Here are some problems with using mutt with imap that I've encountered.

- It doesn't work with the mutt 'tunnel' variable. imapd should run by calling it from the command line and read/writing from its stdout/stdin. The tunnel variable specifies a command to be executed to run an imapd in this way on a remote (or even local) machine. mutt cannot login when using this method.

- I really want to run mutt on my maildir directories without going through imap. mutt is very fast in handling maildir directories especially doing regular expression searches and while imap is great for remote access to a mailbox I'm sorry to say that when I'm on a machine where the mailboxes are local imap slows this down considerably.

My biggest concern with the maildir format is that the tools that I use to read my mailboxes don't interact well together. There doesn't seem to be a defacto standard for doing hierarchy. Between my wife and I at home we depend on three different mail readers. These are imap, kmail and mutt. It is impossible to use any two of these (let alone all three) on the same hierarchy of folders. Here's the problem: (By the way if anyone knows of another mailing list where this would be more appropriate please tell me. I'm hoping that some courier developers who know something about this will get this. )

Let's say I want to have these three folders in a hierarchy under INBOX.

parent --> child --> grandchild

This is how the three mailers that I use would store this under the Maildir directory:

courier-imap: .parent/{new,cur,tmp} .parent.child/{new,cur,tmp} .parent.child.grandchild/{new,cur,tmp}

kmail: parent/{new,cur,tmp} .parent.directory/child/{new,cur,tmp} .parent.directory/.child.directory/grandchild/{new,cur,tmp}

mutt: parent/{new,cur,tmp} parent/child/{new,cur,tmp} parent/child/grandchild/{new,cur,tmp}

Does anyone else see the problem here? maildir was invented to completely avoid filelocking. This was done so that various mail delivery agents and mail readers would get along happily inside the same maildir folder. However, in implementing folder hierarchy, it seems that we've taken a step back from this ideal and made it even worse than the traditional mbox format.

Does anyone on this list have any insight into this? Has anyone actually done work on courier and know something why hierarchy was implemented the way that it was?

PS I guess at this point I'm not really looking for a short term solution. I'm looking for someone who knows something about the subject who might be able to tell me why things were done the way they were.

I am a potential convert from the traditional mbox format to the maildir format. However, I am confused on one point. From the maildirmake manpage included with the courier imap distribution:

Folders cannot be created directly within other folders. Running maildirmake -f Urgent mail/Maildir/.Drafts will not work. Instead, the period character is designated as a hierarchy separator, run maildirmake -f Drafts.Urgent mail/Maildir instead. This creates mail/Maildir/.Drafts.Urgent, and all mail software that supports enhanced maildirs will interpret it as a sub folder Urgent of the Drafts folder.

Why is this method of representing folder hierarchy used? Is there some fundamental problem with creating a sub-folder underneath an existing folder? Why not create INBOX.child.grandchild as <maildir>/.child/.grandchild/? This seems much more natural and elegant. Would someone please fill me in on what I'm missing?

My motivation for asking this question is that I use either mutt or imap to read my email. It just depends on where I am. I have liked mutt's handling of the maildir format in that when I create a sub-folder of an existing folder it is created as a sub-directory of the existing folder on the filesystem.

However, if I were to conform to Courier's idea of hierarchy this would make the use of mutt in these subdirectories sort of clunky. And, I simply cannot accept the idea that using courier or any other mail reader should prevent me from using another one at the same time. This was one thing that attracted me to maildir.

Anyway, any insight here would be appreciated.