CVS: moonbase/mail/exim4 BUILD, NONE, 1.1 CONFIGURE, NONE,
1.1 CONFLICTS, NONE, 1.1 DEPENDS, NONE, 1.1 DETAILS, NONE,
1.1 POST_INSTALL, NONE, 1.1 PRE_REMOVE, NONE, 1.1 services,
NONE, 1.1
Terry Chan
tchan at lunar-linux.org
Mon Nov 10 23:38:41 GMT 2003
Update of /var/cvs/lunar/moonbase/mail/exim4
In directory dbguin.lunar-linux.org:/tmp/cvs-serv2113/exim4
Added Files:
BUILD CONFIGURE CONFLICTS DEPENDS DETAILS POST_INSTALL
PRE_REMOVE services
Log Message:
Here are the changes needed for an exim4 module. It tries to run the automatic
conversion script on /etc/exim.conf to get that file into exim4 format, but the
output MUST be checked as the script can NOT handle complex exim setups.
Exim4 should stay as a separate module and not a version subdir. Added exim4
to the CONFLICTS files for sendmail, postfix, and exim. Good luck working
on your new /etc/exim.conf files the new exim4 manual is $60 U.S. Your old
exim.conf file has been backed up to /etc/exim.conf.3
--- NEW FILE: BUILD ---
(
add_priv_user mail:mail
mkdir -p /var/spool/mail
chmod 1777 /var/spool/mail
chown mail:mail /var/spool/mail
mkdir Local
if module_installed xfree86 ; then
cp src/EDITME Local/Makefile
cp exim_monitor/EDITME Local/eximon.conf
else
grep -v "EXIM_MONITOR=" src/EDITME > Local/Makefile
fi
if module_installed tcp_wrappers ; then
echo "USE_TCP_WRAPPERS=yes" >> Local/Makefile
echo "EXTRALIBS=-lwrap" >> Local/Makefile
fi
if module_installed Linux-PAM ; then
echo "SUPPORT_PAM=yes" >> Local/Makefile
if module_installed tcp_wrappers ; then
echo "EXTRALIBS=-lpam -ldl -lwrap" >> Local/Makefile
else
echo "EXTRALIBS=-lpam -ldl" >> Local/Makefile
fi
fi
if module_installed mysql; then
echo "LOOKUP_MYSQL=yes" >> Local/Makefile
echo "LOOKUP_INCLUDE=-I /usr/include/mysql" >> Local/Makefile
echo "LOOKUP_LIBS=-lmysqlclient" >> Local/Makefile
fi
echo "EXIM_USER=mail" >> Local/Makefile
echo "BIN_DIRECTORY=/usr/sbin" >> Local/Makefile
echo "CONFIGURE_FILE=/etc/exim.conf" >> Local/Makefile
echo "SPOOL_DIRECTORY=/var/spool/mail" >> Local/Makefile
echo "CFLAGS=$CFLAGS" >> Local/Makefile
echo "AUTH_CRAM_MD5=yes" >> Local/Makefile
echo "AUTH_PLAINTEXT=yes" >> Local/Makefile
echo "LOOKUP_NIS=yes" >> Local/Makefile
default_make
) > $C_FIFO 2>&1 && (
ln -sf ../sbin/exim /usr/lib/sendmail
ln -sf exim /usr/sbin/sendmail
sedit "s:var/mail:var/spool/mail:" /etc/exim.conf
sedit "s/\# group = mail/ group = mail/" /etc/exim.conf
sedit "s/\# mode = 0660/ mode = 0660/" /etc/exim.conf
if [ "$IDENT_QUERIES" == "n" ] &&
! grep -q "rfc1413_query_timeout" /etc/exim.conf
then
cp /etc/exim.conf /tmp/exim.conf
awk '{
sub(/host_lookup = \*/,
"&\nrfc1413_query_timeout = 0s");
print
}' /tmp/exim.conf > /etc/exim.conf
rm /tmp/exim.conf
fi
touch /etc/aliases
)
--- NEW FILE: CONFIGURE ---
if ! grep -q "CRON=" $MODULE_CONFIG; then
message "Exim can use either hc-cron or or fcron" \
"to periodically attempt to resend undelivered mail."
if query "Attempt to resend undelivered via hc-cron?" y
then echo "CRON=h" >> $MODULE_CONFIG
else echo "CRON=f" >> $MODULE_CONFIG
fi
fi
if ! grep -q "IDENT_QUERIES=" $MODULE_CONFIG; then
message "Exim, by default, queries the ident server of"
message "the connecting host. Timeout value is 30 seconds."
message "If there is no identd running at the connecting"
message "host, that 30 seconds becomes a connection delay"
message "for every new connection."
if query "Do you want to enable ident queries?" y
then echo "IDENT_QUERIES=y" >> $MODULE_CONFIG
else echo "IDENT_QUERIES=n" >> $MODULE_CONFIG
fi
fi
--- NEW FILE: CONFLICTS ---
conflicts postfix &&
conflicts sendmail &&
conflicts exim
--- NEW FILE: DEPENDS ---
depends db &&
depends gawk &&
case $CRON in
f) depends fcron ;;
*) depends hc-cron ;;
esac &&
optional_depends tcp_wrappers "" "" "for controlling remote access"
optional_depends mysql "" "" "for mysql lookup tables"
--- NEW FILE: DETAILS ---
MODULE=exim4
VERSION=4.24
#VERSION=4.22
SOURCE=exim-$VERSION.tar.bz2
SOURCE_DIRECTORY=$BUILD_DIRECTORY/exim-$VERSION
SOURCE_URL[0]=ftp://ftp.csx.cam.ac.uk/pub/software/email/exim/exim4/$SOURCE
WEB_SITE=http://www.exim.org
ENTERED=20030923
UPDATED=20031110
MAINTAINER="tchan at lunar-linux.org"
SHORT="exim is an Email server."
PSAFE=no
cat << EOF
Exim is a message transfer agent (MTA) developed at the University of
Cambridge for use on Unix systems connected to the Internet. It is
freely available under the terms of the GNU General Public Licence. In
style it is similar to Smail 3, but its facilities are more extensive,
and in particular it has some defences against mail bombs and
unsolicited junk mail in the form of options for refusing messages from
particular hosts, networks, or senders.
EOF
--- NEW FILE: POST_INSTALL ---
EXIM_SCHEDULE="0 * * * * /usr/sbin/exim -q"
case $CRON in
f) echo -e "`fcrontab -l 2>/dev/null |
grep -v exim`\n$EXIM_SCHEDULE" |
fcrontab - 2>/dev/null
;;
*) echo -e "`crontab -l |
sed -n 4~1p |
grep -v exim`\n$EXIM_SCHEDULE" |
crontab -
;;
esac
cat /etc/exim.conf | $SOURCE_DIRECTORY/build-Linux-i386/convert4r4 > exim.conf &&
mv /etc/exim.conf /etc/exim.conf.3 &&
mv exim.conf /etc/exim.conf
--- NEW FILE: PRE_REMOVE ---
if module_installed fcron; then
fcrontab -l 2>/dev/null |
grep -v exim |
fcrontab - 2>/dev/null
fi
if module_installed hc-cron; then
crontab -l |
sed -n 4~1p |
grep -v exim |
crontab -
fi
--- NEW FILE: services ---
smtp 25/tcp
More information about the Lunar-commits
mailing list