Hello Timo, I'm trying to set up shared mailboxes with dovecot-1.2.11/Maildir. I previsouly used public namespaces with 1.1+ to somehow implement them but I'm looking at the real ones now. I've read the Wiki but I'm still confused or not 100% sure about the following (basic) points : 1. Namespaces prefixes My understanding is that a namespace prefix is just an escape mechanism for the client to access the mailboxes this namespace holds. So the real location is _only_ defined by the "location" directive, independently of what the prefix is. So, for example, If you've got : prefix="foo/bar/" location=maildir:/some/folder/%u mailboxes are physically in /some/folder/%u, not in /foo/bar/some/folder/%u or something am I correct ? 2. Other Users mailboxes RFC234 states that shared mailboxes (which they call "Other Users" mailboxes) are "mailboxes from the Personal Namespaces of other users." Dovecot's Wiki takes as an example : # User's private mail location. mail_location = maildir:~/Maildir # You need to create also a private namespace: namespace private { separator = / prefix = #location defaults to mail_location. inbox = yes } namespace shared { separator = / prefix = shared/%%u/ location = maildir:%%h/Maildir:INDEX=~/Maildir/shared/%%u subscriptions = no list = children } and states : "This creates a shared/ namespace under which each user's mailboxes are." My understanding is that # User's private mail location. mail_location = maildir:~/Maildir and location = maildir:%%h/Maildir implies that mailboxes in both the private and the shared/ namespace are physically in the same location (under the "$HOME/Maildir" directory of the user who shares his mailbox) . Am I correct ? I tried the following set up : namespace private { separator = / location = maildir:/courriel/boites/%u:CONTROL=/courriel/meta/%u:INDEX=/var/dovecot-test/indexes/%1u/%u inbox = yes hidden = no list = yes subscriptions = yes } namespace shared { separator = / prefix = "#shared/%%u/" location = maildir:/courriel/boites/%%u:INDEX=/var/dovecot-test/indexes/%1u/%u/shared/%%u subscriptions = no list = yes # will try children later } the user doveimap has the following mailboxes : # pwd /courriel/boites # ls -l doveimap total 64 drwx------ 5 doveimap Invites 4096 Oct 23 13:38 .Trash drwxr-xr-x 5 doveimap Invites 4096 Oct 27 17:00 .sous drwxr-xr-x 5 doveimap Invites 4096 Oct 27 17:00 .sous.arbo drwxr-xr-x 5 doveimap Invites 4096 Oct 27 17:00 .sous.arbo.rescence drwx------ 5 doveimap Invites 4096 Oct 23 13:43 .testcopy drwx------ 2 doveimap Invites 4096 Mar 15 17:08 cur drwx------ 2 doveimap Invites 4096 Mar 15 17:07 new drwx------ 2 doveimap Invites 4096 Mar 15 17:07 tmp I can perform for instance : * OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE STARTTLS AUTH=PLAIN] Dovecot test ready. x login doveimap xxxxxxxx x OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE SORT SORT=DISPLAY THREAD=REFERENCES THREAD=REFS MULTIAPPEND UNSELECT IDLE CHILDREN NAMESPACE UIDPLUS LIST-EXTENDED I18NLEVEL=1 CONDSTORE QRESYNC ESEARCH ESORT SEARCHRES WITHIN CONTEXT=SEARCH LIST-STATUS ACL RIGHTS=texk] Logged in 1 setacl INBOX dovepop rl 1 OK Setacl complete. But isn't a client like Thunderbird (3.0.3) supposed to . show me the #shared (even if no one shares mailboxes to me) "folder" (because of list = yes )? . let me share, let's say the .sous.arbo mailbox ? If yes, how ? Or should I first pre-set some acl files ??? For now, it says : "This is a personnal mail folder. It is not shared." Thanks -- Thomas Hummel | Institut Pasteur <hummel at pasteur.fr> | P?le informatique - syst?mes et r?seau
On Thu, Mar 18, 2010 at 05:50:44PM +0100, Thomas Hummel wrote:> But isn't a client like Thunderbird (3.0.3) supposed to > > . show me the #shared (even if no one shares mailboxes to me) "folder" (because of list = yes )? > > . let me share, let's say the .sous.arbo mailbox ? If yes, how ? Or should I first pre-set some acl files ??? > > For now, it says : "This is a personnal mail folder. It is not shared."I made some progress and managed to share a mailbox with my setup but : a) I wonder if TB even support the SETACL command since I don't see how I can modify an ACL through the TB UI. b) For things to work, I had to set up loose permissions on the maildirs and the shared-mailbox file. I've read on this list (from the 1.2 beta days) that it is supposed to be easier with virtual user (as opposed to system users) : why ? mailboxes end up being on the filesystem anyway... In fact, I don't really understand the difference between virtual and system users...Aren't they seen as almost the same for dovecot ? c) What's weird also is if I put a "dovecot-acl" file in a maildir I want to share, TB does not see it. But if I telnet and issue the SETACL command which end up generating the same dovecot-acl file, TB then sees the shared mailbox... Timo ? -- Thomas Hummel | Institut Pasteur <hummel at pasteur.fr> | P?le informatique - syst?mes et r?seau