#!/bin/sh set -e # On OpenBSD these are only /etc/mail/… ./userctl aliases > /usr/local/etc/mail/aliases ./userctl virtuals > /usr/local/etc/mail/virtuals ./userctl domains > /usr/local/etc/mail/domains ./userctl users > /usr/local/etc/mail/passwd ./userctl users.passwd > /usr/local/etc/dovecot/users m() { if [ ! -d "$1" ]; then mkdir "$1" chown vmail:vmail "$1" fi } # ensure the maildirs exists for dir in $(./userctl users.mdirs); do homedir=$(dirname "$dir") domdir=$(dirname "$homedir") m "$domdir" m "$homedir" m "$dir" done # eventually add something like # service dovecot restart # service smtpd restart # for FreeBSD or # rcctl restart dovecot smtpd # for OpenBSD.