Virtual Mailboxes redux

Rob Hoelz
Tue, 06 Mar 2018 20:13:12 -0000

Hi there!

I've had success using "doveadm mailbox list" to verify that my
virtual mailboxes are showing up,
and using "doveadm search mailbox $VIRTUAL_MAILBOX" to print out which
mails are in a folder.

-Rob

On Tue, 6 Mar 2018 11:40:13 -0700
"@lbutlr" <kremels at kreme.com> wrote:

> I?ve created virtual mailboxes in dovecot, and they show up in
> various clients, but the folders contain no messages. (I will get an
> ?empty? folder icon named ?@virtual? and an empty folder icon named
> ?month? inside it. Is there a way I can verify what dovecot THINKS
> should be in the virtual folder via doveadm?
>
>
<https://www.dropbox.com/s/hd4wnjrs3y5iswi/Screenshot%202018-03-06%2011.38.25.png?dl=0>
>
>  # cat /usr/local/etc/dovecot/virtual/month/dovecot-vitual
> # ~/Maildir/virtual/month/dovecot-virtual
> *
>   all younger 2678400
>
>  # doveconf -n
> # 2.2.33.2 (d6601f4ec): /usr/local/etc/dovecot/dovecot.conf
> # Pigeonhole version 0.4.21 (92477967)
> # OS: FreeBSD 11.1-RELEASE-p4 i386
> auth_failure_delay = 5 secs
> auth_mechanisms = PLAIN LOGIN
> default_client_limit = 4096
> default_process_limit = 1024
> default_vsz_limit = 768 M
> disable_plaintext_auth = no
> first_valid_uid = 89
> imap_id_log = *
> lda_mailbox_autocreate = yes
> lda_mailbox_autosubscribe = yes
> login_log_format_elements = user=<%u> %r %m %c
> mail_location = maildir:~/Maildir
> mail_max_userip_connections = 90
> mail_plugins = " virtual"
> managesieve_notify_capability = mailto
> managesieve_sieve_capability = fileinto reject envelope
> encoded-character vacation subaddress comparator-i;ascii-numeric
> relational regex imap4flags copy include variables body enotify
> environment mailbox date index ihave duplicate mime foreverypart
> extracttext imapsieve vnd.dovecot.imapsieve namespace { location >
virtual:/usr/local/etc/dovecot/virtual:INDEX=~/Maildir/virtual:CONTROL=~/Maildir/virtual
> prefix = @virtual. separator = . } namespace inbox {
>   inbox = yes
>   location =
>   mailbox Archive {
>     auto = subscribe
>     special_use = \Archive
>   }
>   mailbox Drafts {
>     special_use = \Drafts
>   }
>   mailbox Junk {
>     auto = subscribe
>     special_use = \Junk
>   }
>   mailbox Sent {
>     special_use = \Sent
>   }
>   mailbox Trash {
>     special_use = \Trash
>   }
>   prefix =
> }
> passdb {
>   driver = pam
>   username_filter = !*@*
> }
> passdb {
>   args = /usr/local/etc/dovecot/dovecot-sql.conf.ext
>   driver = sql
> }
> plugin {
>   imapsieve_mailbox1_before >
file:/usr/lib/dovecot/sieve/report-spam.sieve
> imapsieve_mailbox1_causes = COPY imapsieve_mailbox1_name = Junk
>   imapsieve_mailbox2_before >
file:/usr/lib/dovecot/sieve/report-ham.sieve
> imapsieve_mailbox2_causes = COPY imapsieve_mailbox2_from = Junk
>   imapsieve_mailbox2_name = *
>   sieve_global_extensions = +vnd.dovecot.pipe +vnd.dovecot.environment
>   sieve_pipe_bin_dir = /usr/lib/dovecot/sieve
>   sieve_plugins = sieve_imapsieve sieve_extprograms
> }
> protocols = imap pop3
> service auth {
>   unix_listener /var/spool/postfix/private/auth {
>     mode = 0666
>   }
> }
> service imap-login {
>   inet_listener imaps {
>     port = 993
>     ssl = yes
>   }
> }
> service pop3-login {
>   inet_listener pop3 {
>     port = 0
>   }
>   inet_listener pop3s {
>     port = 995
>     ssl = yes
>   }
> }
> ssl_cert = </path/to/fullchain.pem
> ssl_key =  # hidden, use -P to show it
> ssl_protocols = !SSLv2 !SSLv3
> userdb {
>   driver = passwd
> }
> userdb {
>   args = /usr/local/etc/dovecot/dovecot-sql.conf.ext
>   default_fields = uid=vpopmail gid=vchkpw
> mail_location=/usr/local/virtual/%u
> mail=maildir:/usr/local/virtual/%u driver = sql }
> protocol imap {
>   mail_plugins = " virtual imap_sieve"
> }
>
>