-fs mkm $MAILPATH mail.$USER
-fs mkm $HOMEPATH/Maildir mail.$USER
-fs sa $MAILPATH $USER all
-fs sa $MAILPATH $USER.mailfilter all
+fs ls $MAILPATH || fs mkm $MAILPATH mail.$USER
+fs ls $HOMEPATH/Maildir || fs mkm $HOMEPATH/Maildir mail.$USER
+chown $USER:nogroup $MAILPATH
+chown $USER:nogroup $HOMEPATH/Maildir
+fs sa $MAILPATH $USER all
+fs sa $MAILPATH $USER.daemon all
+
+# Set up shared SpamAssassin folder
+if test -f $HOMEPATH/Maildir/shared-maildirs; then
+ # Deal with case where user rsync'd their Maildir from fyodor
+ pattern='^SpamAssassin /home/spamd'
+ file=$HOMEPATH/Maildir/shared-maildirs
+ if grep $pattern $file; then
+ sed -i -r -e \
+ 's!^(SpamAssassin )/home/spamd!\1/var/local/lib/spamd!1' \
+ $file
+ fi
+ NOTIFY=no
+ for dir in $HOMEPATH/Maildir/shared-folders/SpamAssassin/*; do
+ if ! test -d $dir; then
+ NOTIFY=yes
+ else
+ dest=/var/local/lib/spamd/Maildir/.$(basename $dir)
+ if test "$(readlink $dir/shared)" != "$dest"; then
+ ln -sf $dest $dir/shared
+ fi
+ fi
+ done
+ if test $NOTIFY = yes; then
+ # This is probably going overboard, but oh well
+ echo "$USER needs assistance on their shared spam dir" | \
+ mail -s "[create-user] $USER needs assistance" \
+ -e -a "From: admins@deleuze.hcoop.net" mwolson_admin
+ fi
+else
+ maildirmake --add SpamAssassin=/var/local/lib/spamd/Maildir \
+ $HOMEPATH/Maildir
+fi