[Dovecot] viewing a subset of folders in dumb IMAP clients
I have several dozen IMAP folders (stored as Maildir++). When I'm on
the go with my iPhone, I only want to see a few of them.
My naive solution that didn't work:
create an alternate login that yields my existing permissions and
mail folder, but stores its own version of metadataconfigure the iPhone to use that login
subscribe to the folders I want
I test-drove the Dovecot config in a webmail app and it worked
exactly right, but it turns out the iPhone (running the latest,
1.1.3) apparently doesn't respect IMAP subscriptions.
My world-weary, clunkier, but seemingly working solution:
have the alternate login yield my existing permissions, but a
different mail folder and metadatacreate that mail folder, make its cur/new/tmp symlinks to the real
ones, and symlink in the other folders I care about
Is this safe? And is there a more elegant way to do what I want?
Thanks,
- Amitai
On Wed, 2008-01-30 at 22:51 -0500, Amitai Schlair wrote:
My world-weary, clunkier, but seemingly working solution:
have the alternate login yield my existing permissions, but a
different mail folder and metadatacreate that mail folder, make its cur/new/tmp symlinks to the real
ones, and symlink in the other folders I care aboutIs this safe?
Yes.
And is there a more elegant way to do what I want?
Why not symlink the entire maildirs so their metadata is shared as well?
Another possibility would be to write a plugin limiting what mailboxes LIST shows.
On Jan 31, 2008, at 8:40 AM, Timo Sirainen wrote:
On Wed, 2008-01-30 at 22:51 -0500, Amitai Schlair wrote:
My world-weary, clunkier, but seemingly working solution:
have the alternate login yield my existing permissions, but a different mail folder and metadata
create that mail folder, make its cur/new/tmp symlinks to the real ones, and symlink in the other folders I care about
Is this safe?
Yes.
And is there a more elegant way to do what I want?
Why not symlink the entire maildirs so their metadata is shared as
well?
I should've been clearer. That's what I did, except for the top-level
maildir (so as to avoid getting the whole hierarchy underneath it).
Like so:
$ ls -la Maildir-iphone total 1264 drwx------ 2 schmonz users 1024 Jan 31 00:37 . drwxr-xr-x 27 schmonz users 15872 Jan 30 21:59 .. lrwxr-xr-x 1 schmonz users 17 Jan 30 22:18 .Bills -> ../ Maildir/.Bills lrwxr-xr-x 1 schmonz users 17 Jan 30 22:19 .Blogs -> ../ Maildir/.Blogs lrwxr-xr-x 1 schmonz users 18 Jan 30 22:19 .Comics -> ../ Maildir/.Comics lrwxr-xr-x 1 schmonz users 18 Jan 30 22:14 .Drafts -> ../ Maildir/.Drafts lrwxr-xr-x 1 schmonz users 20 Jan 30 22:19 .Language -> ../ Maildir/.Language lrwxr-xr-x 1 schmonz users 18 Jan 30 22:19 .Movies -> ../ Maildir/.Movies lrwxr-xr-x 1 schmonz users 17 Jan 30 22:19 .Music -> ../ Maildir/.Music lrwxr-xr-x 1 schmonz users 16 Jan 30 22:19 .News -> ../ Maildir/.News lrwxr-xr-x 1 schmonz users 21 Jan 30 22:19 .Purchases -> ../ Maildir/.Purchases lrwxr-xr-x 1 schmonz users 16 Jan 30 22:13 .Sent -> ../ Maildir/.Sent lrwxr-xr-x 1 schmonz users 18 Jan 30 22:19 .Sports -> ../ Maildir/.Sports lrwxr-xr-x 1 schmonz users 20 Jan 30 22:19 .Sysadmin -> ../ Maildir/.Sysadmin lrwxr-xr-x 1 schmonz users 17 Jan 30 22:13 .Trash -> ../ Maildir/.Trash lrwxr-xr-x 1 schmonz users 14 Jan 30 22:06 cur -> ../Maildir/cur -rw------- 1 schmonz users 150 Jan 30 22:12 dovecot-keywords -rw------- 1 schmonz users 347373 Jan 30 22:12 dovecot-uidlist -rw------- 1 schmonz users 98464 Jan 30 22:12 dovecot.index -rw------- 1 schmonz users 81920 Jan 30 22:38 dovecot.index.cache -rw------- 1 schmonz users 64400 Jan 31 00:37 dovecot.index.log lrwxr-xr-x 1 schmonz users 14 Jan 30 22:06 new -> ../Maildir/new -rw------- 1 schmonz users 29 Jan 30 21:59 subscriptions lrwxr-xr-x 1 schmonz users 14 Jan 30 22:06 tmp -> ../Maildir/tmp
Another possibility would be to write a plugin limiting what mailboxes LIST shows.
Cool. A project for another day. :-)
Thanks,
- Amitai
participants (2)
-
Amitai Schlair
-
Timo Sirainen