[Dovecot] .mailboxlist -> .subscriptions

Steve Campbell campbell at cnpapers.com
Thu Mar 15 13:21:17 EET 2012



On 3/14/2012 7:33 PM, Joseph Tam wrote:
> Steve Campbell <campbell at cnpapers.com> writes:
>
>> Their imap folders, the ones that they create using an imap client or
>> webmail, are either in ~ or ~/mail. Their original .mailboxlist is
>> always in ~. Based on that, I should probably copy any imap folders not
>> in ~/mail to that folder, duplicate ~/.mailboxlist to the file
>> ~/mail/.subscriptions, and amend any .subscriptions file contents to
>> just have the name of the folders (without any "mail/folder" reference
>> in it).
>>
>> My example would then be as follows
>>
>> /home/steve    =    folder
>> /home/steve/Drafts      =   original folder
>> /home/steve/AnyFolder  =  original folder
>> /home/steve/.mailboxlist    =    original file
>> /home/steve/mail    =   folder (either original or created)
>> /home/steve/mail/.subscriptions    =     copied contents of .mailboxlist
>> file
>> /home/steve/mail/Drafts     =    copied folder of original
>> /home/steve/mail/AnyFolder    =  copied folder of original
>>
>> Contents of original .mailboxlist and new .subscriptions:
>>
>> Drafts
>> AnyFolder
>>
>> If the imap folders were in ~/mail, then the original .mailboxlist would
>> have been
>>
>> mail/Drafts
>> mail/AnyFolder
>>
>> but after the corrections to the .subscriptions file, they would be as
>> above (without reference to the mail folder).
>>
>> Is this correct?
>
> That depends -- are you aliasing namespaces so that prefix={"",
> "mail/", etc.} all map to a user's ~/mail folder?  You may be creating a
> confusing situation where a client with a null IMAP prefix has 2 copies
> of a mailbox.
>
> Joseph Tam <jtam.home at gmail.com>
I have the following set:

mail_location = mbox:~/mail:INBOX=/var/spool/mail/%u

  namespace {
   type = private
   separator = /
   prefix = "#mbox/"
   location = mbox:~/mail:INBOX=/var/mail/%u
   inbox = yes
   hidden = yes
   list = no
}
namespace  {
   type = private
   separator = /
   prefix = mail/
   hidden = yes
   list = no  # for v1.1+
}
namespace  {
   type = private
   separator = /
   prefix = ~/mail/
   hidden = yes
   list = yes   # for v1.1+
   location = mbox:~/mail:INBOX=/var/mail/%u
}
namespace  {
   type = private
   separator = /
   prefix = ~%u/mail/
   hidden = yes
   list = no   # for v1.1+
}

These are mostly what's defined as the "Backward Compatability" 
namespaces in the wiki.

Are you saying that I should probably have something like the following 
then:

namespace {
   type = private
   separator = /
   prefix =
   location = mbox:~/mail:INBOX=/var/mail/%u
   inbox = yes
   hidden = yes
   list = no
}

And is the multiple "inbox = yes" in the differing namespaces a no-no? 
Based on the comments in the 10-mail.conf file, it seems to say it is a 
problem, but if a user has any prefix defined, even the blank prefix, 
wouldn't that mean they use only that set of parameters defined in the 
namespace being used?

So far, I've only changed one prefix in the building to the #mbox prefix 
and that was because of the weird layout of files they had.

I'm hoping one day to understand all of this. Dovecot, as I stated 
before, is much more complex that the imap server used previously. It 
allows one to use all of the facilities of the imap protocol, and much 
more, but unfortunately, for admins like me that are just moving to 
these new imap servers, most of those extras were either unknown to me 
or unused.

Again, thanks all for the patience and help.

steve





More information about the dovecot mailing list