summaryrefslogtreecommitdiff
path: root/user-init
diff options
context:
space:
mode:
Diffstat (limited to 'user-init')
-rwxr-xr-xuser-init21
1 files changed, 14 insertions, 7 deletions
diff --git a/user-init b/user-init
index 2d61ad9..5c26766 100755
--- a/user-init
+++ b/user-init
@@ -146,10 +146,21 @@ for user in $USERS; do
chmod u=rwX,go=rX "$HOME"
# Mail handling
- if [ -n "$MAILDIR" ]; then
- if [ ! -e "$HOME/.procmailrc" ]; then
- echo 'DEFAULT=$HOME/Maildir/' > "$HOME/.procmailrc"
+ maildir="$MAILDIR"
+ if [ -f "$HOME/.procmailrc" ]; then
+ # Drop simple maildir-enabling procmail file when default
+ if [ -n "$MAILDIR" ] && test "`md5sum \"$HOME/.procmailrc\" | awk '{print $1}'`" = "03ea802caaa5ce6f2a9be8d56eaf8ff5"; then
+ rm "$HOME/.procmailrc"
+ else
+ chown "$user": "$HOME/.procmailrc"
+ chmod 0640 "$HOME/.procmailrc"
+ # Check if this one account exceptionally uses maildir
+ if [ -z "$maildir" ] && egrep -q '^DEFAULT=\$HOME/Maildir/$' "$HOME/.procmailrc"; then
+ maildir="yes"
+ fi
fi
+ fi
+ if [ -n "$maildir" ]; then
mkdir -p "$HOME/Maildir/cur" "$HOME/Maildir/new" "$HOME/Maildir/tmp"
chown -R "$user": "$HOME/Maildir"
chmod -R u=rw,go=,u+X "$HOME/Maildir"
@@ -183,10 +194,6 @@ for user in $USERS; do
chown "$user": "$HOME/.forward"
chmod 0640 "$HOME/.forward"
fi
- if [ -f "$HOME/.procmailrc" ]; then
- chown "$user": "$HOME/.procmailrc"
- chmod 0640 "$HOME/.procmailrc"
- fi
# MySQL handling
if [ -f "$HOME/.my.cnf" ]; then