#!/bin/sh set -o errexit # First argument of this script is the package name # Reading system configuration informations, functions and package versions. source ../sysinfos source ../functions source ../packages-list # Applying patches (if any) apply_patches ${1} cd ${LFS_TMP}/${1} perl Makefile.PL -n \ CONTACT_ADDRESS="postmaster" \ ENABLE_SSL="no" \ RUN_NET_TESTS="no" make make install cat > /usr/local/bin/hv-sa-learn << "EOF" #!/bin/sh SA_LEARN="/usr/bin/sa-learn" SA_LEARN_FLAGS="--showdots --mbox" SA_USERS="hugo" USER_MAIL_FOLDER=".imap" for user in ${SA_USERS}; do if [ -f /home/${user}/${USER_MAIL_FOLDER}/SPAM ]; then echo "Scanning SPAM folder for user <${user}>:" ${SA_LEARN} ${SA_LEARN_FLAGS} -C /etc/mail/spamassassin --spam /home/${user}/${USER_MAIL_FOLDER}/SPAM || exit 1 fi if [ -f /home/${user}/${USER_MAIL_FOLDER}/HAM ]; then echo "Scanning HAM folder for user <${user}:>" ${SA_LEARN} ${SA_LEARN_FLAGS} -C /etc/mail/spamassassin --ham /home/${user}/${USER_MAIL_FOLDER}/HAM || exit 1 fi done echo "Scanning /var/mail/spam-sure..." ${SA_LEARN} ${SA_LEARN_FLAGS} -C /etc/mail/spamassassin --spam /var/mail/spam-sure || exit 1 echo "Scanning /var/mail/spam..." ${SA_LEARN} ${SA_LEARN_FLAGS} -C /etc/mail/spamassassin --spam /var/mail/spam || exit 1 echo "Scanning /var/mail/ham..." ${SA_LEARN} ${SA_LEARN_FLAGS} -C /etc/mail/spamassassin --ham /var/mail/ham || exit 1 exit $? EOF chmod 755 /usr/local/bin/hv-sa-learn # Addition to /etc/fcron/fcrontab string_add "# Run SpamAssassin sa-learn every hour + 25 minutes" /etc/fcron/fcrontab string_add "&mail(false) 25 * * * * /usr/local/bin/mail-if-fail /usr/local/bin/hv-sa-learn" \ /etc/fcron/fcrontab # Add rule to procmailrc... # Put spamassassin databases in /srv mkdir -v -p /srv/spamassassin sed -i -e "s!^bayes_path.*!bayes_path /srv/spamassassin/bayes!g" /etc/mail/spamassassin/local.cf exit $?