No matter what I do, I always get this error when trying to start Dovecot:

$ sudo /usr/local/opt/dovecot/sbin/dovecot
Warning: fd limit (ulimit -n) is lower than required under max. load (256 < 1000), because of default_client_limit
Fatal: service(stats) Group doesn't exist: dovecot (See service stats { unix_listener /usr/local/var/run/dovecot/stats-writer { group } } setting)

The user and group it should be using are _dovecot.

Config:

$ sudo /usr/local/opt/dovecot/sbin/dovecot -n
# 2.3.2.1 (0719df592): /usr/local/etc/dovecot/dovecot.conf
# OS: Darwin 18.2.0 x86_64  apfs
# Hostname: mailbordocomau-dr.local
doveconf: Error: t_readlink(/usr/local/var/run/dovecot/dovecot.conf) failed: readlink() failed: No such file or directory
default_internal_user = _dovenull
default_login_user = _dovecot
first_valid_gid = 0
first_valid_uid = 102
last_valid_gid = 500
last_valid_uid = 105
mail_gid = 102
mail_location = maildir:/usr/local/virtual/%d/%u
mail_uid = 102
namespace inbox {
  inbox = yes
  location = 
  mailbox Drafts {
    special_use = \Drafts
  }
  mailbox Junk {
    special_use = \Junk
  }
  mailbox Sent {
    special_use = \Sent
  }
  mailbox "Sent Messages" {
    special_use = \Sent
  }
  mailbox Trash {
    special_use = \Trash
  }
  prefix = 
}
passdb {
  args = /usr/local/etc/dovecot/dovecot-sql.conf.ext
  driver = sql
}
protocols = imap pop3
service auth {
  unix_listener /var/spool/postfix/private/auth {
    group = _postfix
    mode = 0660
    user = _postfix
  }
  unix_listener auth-userdb {
    mode = 0660
    user = _vmail
  }
}
ssl_cert = </usr/local/etc/dovecot/cert.pem
ssl_dh =  # hidden, use -P to show it
ssl_key =  # hidden, use -P to show it
userdb {
  driver = passwd
}
userdb {
  driver = prefetch
}
userdb {
  args = /usr/local/etc/dovecot/dovecot-sql.conf.ext
  driver = sql
}

Not sure why it’s looking for dovecot.conf in the wrong place.

Any suggestions?

thanks,

James.