[Dovecot] dovecot 1.2 plugin virtual and shared namespace with thunderbird / seems solved

Robert Schetterer robert at schetterer.org
Wed May 13 11:00:57 EEST 2009


Robert Schetterer schrieb:
> Robert Schetterer schrieb:
>> Robert Schetterer schrieb:
>>> Robert Schetterer schrieb:
>>>> Robert Schetterer schrieb:
>>>>> Timo Sirainen schrieb:
>>>>>> On Wed, 2009-04-29 at 20:59 +0200, Robert Schetterer wrote:
>>>>>>> no ,without virtual setup all works ok
>>>>>>> i.e normal private namespace and shared namespace
>>>>>>>
>>>>>>> it works with private and virtual setup
>>>>>>> but adding shared namespace then i get loose the
>>>>>>> private namespace with tb, specially subdirs of INBOX
>>>>>> Try talking IMAP directly. What does LIST "" * command show when it
>>>>>> works, and what does it show when it doesn't work?
>>>>>>
>>>>>> http://wiki.dovecot.org/TestInstallation
>>>>>>
>>>>> Hi Timo
>>>>> i will do and report, but if it should work
>>>>> its an Tb bug, and whatever i need a workaround then
>>>>> Best Regards
>>>> Hi Timo
>>>> telnet looks ok for me,
>>>> no idea why TB dont likes it
>>> small addition horde webmail imap
>>> does not work too, subfolder are not shown
>>>
>>>> c list "" *
>>>> * LIST (\HasNoChildren) "/" "Templates"
>>>> * LIST (\HasNoChildren) "/" "Sent"
>>>> * LIST (\HasChildren) "/" "Drafts"
>>>> * LIST (\HasNoChildren) "/" "Drafts/kkkk"
>>>> * LIST (\HasNoChildren) "/" "Test"
>>>> * LIST (\HasChildren) "/" "INBOX"
>>>> * LIST (\HasNoChildren) "/" "INBOX/pppp"
>>>> * LIST (\HasNoChildren) "/" "Junk"
>>>> * LIST (\HasNoChildren) "/" "Trash"
>>>> * LIST (\Noselect \HasChildren) "/" "shared/..........com/test at ......com"
>>>> * LIST (\HasNoChildren) "/" "shared/..........com/test at ........com/Trash"
>>>> c OK List completed.
>>>>
>>>> thx for your more verbosed debug for rawlog
>>>> in just now what ( might ) has hanged with it
>>>> in my setup the home variable is given from sql
>>>> its constructed like /usr/local/virtual/domain.de/user at domain.de/
>>>> as stated in rawlog example
>>>> it possible to give home also in the plugin section
>>>> with home=/usr/local/virtual/%d/%u
>>>> i have both
>>>>
>>>> rawlog worked with both entries before updates
>>>>
>>>> but now it has
>>>> rawlog:
>>>> maildir:/usr/local/virtual/domain.de/user at domain.de//dovecot.rawlog
>>>> doesn't exist
>>>>
>>>> but
>>>>
>>>> ls
>>>> /usr/local/virtual/domain.de/user at domain.de//dovecot.rawlog is ok
>>>> ( in linux // means normally the same as / i.e with ls )
>>>>
>>>> so now i know why rawlog stopped working but
>>>> i am not clear why it doesnt behave like ls and dont care about double
>>>> slashes in directory paths, in any case rawlog is more like a plugin and
>>>> for debug
>>>> the home variable in the plugin section should be prefered, if home is
>>>> also stated from elsewhere
>>>>
>>>> Regards
>> after the last update dovecot 1.2
>> the shared namespace disapeared in total in tb or imp
>> with telnet everything looks ok as ever
>> the subfolders of inbox are still not visable in tb or imp
>> guess last patch
>> http://hg.dovecot.org/dovecot-1.2/rev/e36a9edb5fb0
>> breaked more then it fixed
>>
>>
>>
>>
>>
> Hi Timo,
> disabling virtual plugin settings makes
> dovecot 1.2 work as expected again, subfolders of inbox are shown again
> as well as shared mailbox namespaces
> virtual plugin seems to me broken in some way
> 

Hi Timo, i had setup virtual plugin related to the wiki
http://wiki.dovecot.org/Plugins/Virtual
which says

--------
# The default namespace that is visible to IMAP clients
namespace private {
  prefix =
  separator = /
  list = yes
  hidden = yes
}

# Virtual namespace for the virtual INBOX.
namespace private {
  prefix = virtual/
  separator = /
  location = virtual:~/Maildir/virtual
  list = no
  hidden = yes
}

# Copy of the default namespace. We'll use this in dovecot-virtual file.
namespace private {
  prefix = RealMails/
  separator = /
  list = no
  hidden = yes
}

user_query = SELECT ..., \
  CASE '%s' WHEN 'pop3' THEN NULL ELSE 'yes' END AS namespace_1_inbox, \
  CASE '%s' WHEN 'pop3' THEN 'yes' ELSE NULL END AS namespace_2_inbox \
  WHERE ...

--------

this leads not seeing subfolders of inbox
and not seeing shared namespace with imap

my setup is now

-----------------

namespace private {
  separator = /
  prefix = ""
  location =
maildir:/usr/local/virtual/%d/%u/:CONTROL=/usr/local/virtual/%d/%u/:INDEX=/usr/local/virtual/%d/%u/:INBOX=/usr/local/virtual/%d/%u/
  list = yes

hidden = no <<<<<this is what i have changed now

  subscriptions = yes
}

namespace private {
  prefix = "virtual/"
  separator = /
  location = virtual:/etc/dovecot/virtual:LAYOUT=maildir++
  hidden = yes
  list = no
  subscriptions= no
}

namespace private {
  prefix = "RealMails/"
  separator = /
  list = no
  hidden = yes
  location =
maildir:/usr/local/virtual/%d/%u/:CONTROL=/usr/local/virtual/%d/%u/:INDEX=/usr/local/virtual/%d/%u/:INBOX=/usr/local/virtual/%d/%u/
}

namespace shared {
   separator = /
   prefix = "shared/%%d/%%u/"
   location = maildir:/usr/local/virtual/%d/%%u/:INDEX=~/shared/%%d/%%u/
   subscriptions = no
   list = children
   inbox = no
}

-----------

in a few tests now the setup with virtual plugin
works now like desired with Thunderbird
( havent tested aggressive all features yet i.e with other plugins
acl,autocreate ...)

i am not clear if the wiki should changed here, or exactly why it is
working now, perhaps it would be the best
to give the hidden = no parameter additionally
in i.e. mysql at non pop3 login, but i have no exact idea what syntax it
should be then

whats your meaning about all that stuff ?

-- 
Best Regards

MfG Robert Schetterer

Germany/Munich/Bavaria


More information about the dovecot mailing list