Greetings,

I am unable to completely migrate my Dovecot 2.3 config to 2.4.1 as I'm unable to get past the following error:

Error: Namespace inbox: maildir: maildir settings: Failed to parse configuration: Failed to override configuration from userdb: Invalid maildir=${domain}/${user}/: Setting is a named filter, use 'maildir {'

I found a similar encounter at https://www.mail-archive.com/[email protected]/msg90843.html that points to https://doc.dovecot.org/2.4.0/core/config/mailbox/mail_location.html#per-user-mail-locations yet I still can't get my config to work. I've attached my doveconf at the end, including the ported 2.3 settings that used to work for me (commented out).

I would appreciate any advise.

# /etc/dovecot/dovecot.conf
dovecot_config_version = 2.4.1
dovecot_storage_version = 2.4.1

sql_driver = mysql
mysql /run/mysqld/mysqld.sock {
    user = mail
    password = mail
    dbname = mail
}
passdb sql {
    query = SELECT username AS user, \
      password FROM mailbox WHERE username = '%{user}' AND active='1'
    default_password_scheme = ARGON2I
}
userdb sql {
    query = SELECT maildir, \
      600 AS uid, \
      600 AS gid \
      FROM mailbox WHERE username = '%{user}' AND active='1'
    iterate_query = SELECT username AS user FROM mailbox
}
# previously:
# passdb {
#   driver = sql
#   args = /etc/dovecot/dovecot-sql.conf.ext
# }
# userdb {
#   driver = sql
#   args = /etc/dovecot/dovecot-sql.conf.ext
# }

# disable_plaintext_auth = yes
auth_username_format = %{user | lower} # previously: "auth_username_format = %Lu"
auth_mechanisms = plain login
auth_default_domain = mail.com # previously: "auth_default_realm = mail.com"
auth_debug = yes
auth_debug_passwords = yes

mail_privileged_group = mail
# previously: "mail_location = maildir:~/Maildir"
mail_driver = maildir
mail_path = %{home}/Maildir
mail_home = /var/vmail/%{user | domain}/%{user | username} # previously: "mail_home = /var/vmail/%d/%n/"

service lmtp {
  unix_listener /var/spool/postfix/private/dovecot-lmtp {
     mode = 0600
     user = postfix
     group = postfix
  }
}
service auth {
  unix_listener /var/spool/postfix/private/auth {
    mode = 0660
    user = postfix
    group = postfix
  }
}
service stats {
    unix_listener stats-reader {
    user = nginx
    group = nginx
    mode = 0660
}
unix_listener stats-writer {
    user = nginx
    group = nginx
    mode = 0660
  }
}

ssl = required
ssl_min_protocol = TLSv1.2
ssl_server_prefer_ciphers = server # previously: "ssl_prefer_server_ciphers = yes"
ssl_server {
    dh_file   = /etc/ssl/dovecot/dh.pem
    cert_file = /etc/ssl/dovecot/tls.pem
    key_file  = /etc/ssl/dovecot/tls.key
}
# previously:
# ssl_dh   = </etc/ssl/dovecot/dh.pem
# ssl_cert = </etc/ssl/dovecot/tls.pem
# ssl_key  = </etc/ssl/dovecot/tls.key

namespace inbox {
  inbox = yes
  mailbox Archive {
    auto = subscribe
    special_use = \Archive
  }
  mailbox Drafts {
    auto = subscribe
    special_use = \Drafts
  }
  mailbox Junk {
    auto = subscribe
    special_use = \Junk
  }
  mailbox Trash {
    auto = subscribe
    special_use = \Trash
  }
  mailbox Sent {
    auto = subscribe
    special_use = \Sent
  }
  mailbox "Sent Messages" {
    special_use = \Sent
  }
}

protocols = imap lmtp

# previously: /etc/dovecot/dovecot-sql.conf.ext
driver = mysql
connect = host=localhost dbname=mail user=mail password=mail
default_pass_scheme = ARGON2I
password_query = SELECT username AS user,password FROM mailbox WHERE username = '%u' AND active='1' user_query = SELECT maildir, 600 AS uid, 600 AS gid FROM mailbox WHERE username = '%u' AND active='1'
iterate_query = SELECT username AS user FROM mailbox
_______________________________________________
dovecot mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to