-
Install dovecot with `brew install dovecot`
- Open /usr/local/etc/dovecot/dovecot.conf
# A comma separated list of IPs or hosts where to listen in for connections. # "*" listens in all IPv4 interfaces, "::" listens in all IPv6 interfaces. # If you want to specify non-default ports or anything more complex, # edit conf.d/master.conf. listen = 127.0.0.1 # Protocols we want to be serving. protocols = imap # Static passdb. # This can be used for situations where Dovecot doesn't need to verify the # username or the password, or if there is a single password for all users: passdb { driver = static args = password=CHANGE_THIS } # Location for users' mailboxes. The default is empty, which means that Dovecot # tries to find the mailboxes automatically. This won't work if the user # doesn't yet have any mail, so you should explicitly tell Dovecot the full # location. # # If you're using mbox, giving a path to the INBOX file (eg. /var/mail/%u) # isn't enough. You'll also need to tell Dovecot where the other mailboxes are # kept. This is called the "root mail directory", and it must be the first # path given in the mail_location setting. # # There are a few special variables you can use, eg.: # # %u - username # %n - user part in user@domain, same as %u if there's no domain # %d - domain part in user@domain, empty if there's no domain # %h - home directory # # See doc/wiki/Variables.txt for full list. Some examples: # # mail_location = maildir:~/Maildir # mail_location = mbox:~/mail:INBOX=/var/mail/%u # mail_location = mbox:/var/mail/%d/%1n/%n:INDEX=/var/indexes/%d/%1n/%n # # <doc wiki="" maillocation.txt=""> # mail_location = maildir:/Users/YOURUSERNAME/mail # System user and group used to access mails. If you use multiple, userdb # can override these by returning uid or gid fields. You can use either numbers # or names. <doc wiki="" userids.txt=""> mail_uid = YOURUSERNAME mail_gid = admin # SSL/TLS support: yes, no, required. <doc wiki="" ssl.txt=""> ssl = no # Login user is internally used by login processes. This is the most untrusted # user in Dovecot system. It shouldn't have access to anything at all. default_login_user = _dovenull # Internal user is used by unprivileged processes. It should be separate from # login user, so that login processes can't disturb other processes. default_internal_user = _dovecot # Internal group is expected to be the primary group of the default_internal_user. default_internal_group = mail # Setting limits. default_process_limit = 10 default_client_limit = 50Change the YOURUSERNAME to your local username
3. Run this command.
sudo brew services restart dovecot
Permission issues:
sudo chgrp /Users/YOURUSERNAME/mail mail
Logs are found here: sudo tail -f /usr/local/var/log/dovecot/dovecot.log