How to unset namespace configuration from dovecot.conf in conf.d/99-cutom.conf?

Py Retta pyretta at mailbox.org
Tue Jun 9 11:03:43 EEST 2020


Dear all, 

my /etc/dovecot/dovecot.conf [0] that is shipped with the Linux
distro (Ubuntu 18.04, dovecot 2.3.10) has a namespace section:

namespace inbox { 
  ...
  mailbox Sent {
    ...
  }
  ...
}

I need to remove this whole section from the configuration, but I need
to do this in a file such as /etc/dovecot/conf.d/99-custom.conf because
I want this modification to be stable against automatic updates of
dovecot.conf shipped by the distro.

This raises the question, how do I "unset" an earlier namespace
configuration at a later point in the stack of config files? 


Speaking in terms of `doveconf -n`, snippet [1] below lists the original
configuration (including namespace setup) and [2] lists the desired
configuration that results from deleting the namespace passage from
dovecot.conf. However, I would like to achieve it without deleting it
from dovecot.conf but by adding sth to conf.d/99-custom.conf. 

Thanks a lot, Py


[0] original dovecot.conf (only relevant namespace section): 

# Default private namespace setup compatible with Courier-IMAP.

namespace inbox {
  separator = .
  prefix = INBOX.
  inbox = yes

  mailbox Sent {
    auto = subscribe # autocreate and autosubscribe the Sent mailbox
    special_use = \Sent
  }
  mailbox Spam {
    auto = create # autocreate Spam, but don't autosubscribe
    special_use = \Junk
  }
  mailbox Drafts {
    auto = create
    special_use = \Drafts
  }
  mailbox Trash {
    auto = create
    special_use = \Trash
  }
}




[1] `doveconf -n` for the original configuration:

# 2.3.10 (0da0eff44): /etc/dovecot/dovecot.conf
# Pigeonhole version 0.5.9 (db4e9a2f)
doveconf: Warning: service auth { client_limit=1000 } is lower than
required under max. load (2248) 
doveconf: Warning: service anvil {
client_limit=1000 } is lower than required under max. load (2251) 
# OS: Linux 4.15.0 x86_64 Ubuntu 18.04.4 LTS ext4 
# Hostname: ############
auth_mechanisms = #######################
auth_username_chars = ################
disable_plaintext_auth = ####
first_valid_uid = ####
imap_client_workarounds = delay-newmail
imap_logout_format = rcvd=%i, sent=%o
mail_home = ##################
mail_location = #####################
mail_log_prefix = "service=%s, user=%u, ip=[%r]. "
mail_plugins = " quota"
managesieve_logout_format = rcvd=%i, sent=%o
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 imapflags notify 
namespace inbox {
  inbox = yes
  location = 
  mailbox Drafts {
    auto = create
    special_use = \Drafts
  }
  mailbox Sent {
    auto = subscribe
    special_use = \Sent
  }
  mailbox Spam {
    auto = create
    special_use = \Junk
  }
  mailbox Trash {
    auto = create
    special_use = \Trash
  }
  prefix = INBOX.
  separator = .
}
passdb { 
  driver = plesk 
} 
plugin {
  quota = maildir:User quota
  quota_grace = 0
  quota_warning = storage=95%% quota-warning %u
  sieve = ~/.dovecot.sieve
  sieve_dir = ~/sieve
  sieve_extensions = +notify +imapflags
}
pop3_client_workarounds = outlook-no-nuls oe-ns-eoh
pop3_logout_format = rcvd=%i, sent=%o, top=%t/%p, retr=%r/%b,
del=%d/%m, size=%s 
protocols = imap pop3 sieve
service auth-worker {
  group = 
  user = 
}
service auth {
  group = 
  unix_listener auth-userdb {
    group = popuser
    mode = 0600
    user = popuser
  }
  user = 
}
service imap-login {
  process_limit = 1024
  service_count = 1
}
service imap {
  process_limit = 1024
  service_count = 1
}
service pop3-login {
  process_limit = 1024
  service_count = 1
}
service pop3 {
  process_limit = 1024
  service_count = 1
}
service quota-warning {
  executable = ################
  unix_listener quota-warning {
    user = popuser
  }
  user = popuser
}
service stats {
  unix_listener stats-writer {
    user = popuser
  }
}
ssl_cert = ################
ssl_cipher_list = #############
ssl_dh = # hidden, use -P to show it
ssl_key = # hidden, use -P to show it
ssl_prefer_server_ciphers = yes
userdb {
  args = uid=popuser gid=popuser
  driver = static
}
protocol imap {
  mail_plugins = " quota imap_quota"
}
protocol pop3 {
  pop3_uidl_format = UID%u-%v
}
protocol lda {
  mail_plugins = " quota sieve"
}



[2] `doveconf -n` for the desired configuration (with the namespace
section in dovecot.conf removed): 

# 2.3.10 (0da0eff44): /etc/dovecot/dovecot.conf
# Pigeonhole version 0.5.9 (db4e9a2f)
doveconf: Warning: service auth { client_limit=1000 } is lower than
required under max. load (2248) 
doveconf: Warning: service anvil {
client_limit=1000 } is lower than required under max. load (2251) 
# OS: Linux 4.15.0 x86_64 Ubuntu 18.04.4 LTS ext4 
# Hostname: ############
auth_mechanisms = #######################
auth_username_chars = ################
disable_plaintext_auth = ####
first_valid_uid = ####
imap_client_workarounds = delay-newmail
imap_logout_format = rcvd=%i, sent=%o
mail_home = ##################
mail_location = #####################
mail_log_prefix = "service=%s, user=%u, ip=[%r]. "
mail_plugins = " quota"
managesieve_logout_format = rcvd=%i, sent=%o
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 imapflags notify 
passdb { 
  driver = plesk 
} 
plugin {
  quota = maildir:User quota
  quota_grace = 0
  quota_warning = storage=95%% quota-warning %u
  sieve = ~/.dovecot.sieve
  sieve_dir = ~/sieve
  sieve_extensions = +notify +imapflags
}
pop3_client_workarounds = outlook-no-nuls oe-ns-eoh
pop3_logout_format = rcvd=%i, sent=%o, top=%t/%p, retr=%r/%b,
del=%d/%m, size=%s 
protocols = imap pop3 sieve
service auth-worker {
  group = 
  user = 
}
service auth {
  group = 
  unix_listener auth-userdb {
    group = popuser
    mode = 0600
    user = popuser
  }
  user = 
}
service imap-login {
  process_limit = 1024
  service_count = 1
}
service imap {
  process_limit = 1024
  service_count = 1
}
service pop3-login {
  process_limit = 1024
  service_count = 1
}
service pop3 {
  process_limit = 1024
  service_count = 1
}
service quota-warning {
  executable = ################
  unix_listener quota-warning {
    user = popuser
  }
  user = popuser
}
service stats {
  unix_listener stats-writer {
    user = popuser
  }
}
ssl_cert = ################
ssl_cipher_list = #############
ssl_dh = # hidden, use -P to show it
ssl_key = # hidden, use -P to show it
ssl_prefer_server_ciphers = yes
userdb {
  args = uid=popuser gid=popuser
  driver = static
}
protocol imap {
  mail_plugins = " quota imap_quota"
}
protocol pop3 {
  pop3_uidl_format = UID%u-%v
}
protocol lda {
  mail_plugins = " quota sieve"
}






More information about the dovecot mailing list