diff options
author | Brian Jackson <iggy@gentoo.org> | 2003-08-20 04:47:58 +0000 |
---|---|---|
committer | Brian Jackson <iggy@gentoo.org> | 2003-08-20 04:47:58 +0000 |
commit | aa5424aee18423fd0fc4d3f3f49046a7b46ecf8e (patch) | |
tree | 400f7f6cdced89f6d0eff4b302235a240d10aed6 /net-mail/courier | |
parent | courier-0.43.1 is out (diff) | |
download | gentoo-2-aa5424aee18423fd0fc4d3f3f49046a7b46ecf8e.tar.gz gentoo-2-aa5424aee18423fd0fc4d3f3f49046a7b46ecf8e.tar.bz2 gentoo-2-aa5424aee18423fd0fc4d3f3f49046a7b46ecf8e.zip |
courier-0.43.1 is out
Diffstat (limited to 'net-mail/courier')
-rw-r--r-- | net-mail/courier/ChangeLog | 8 | ||||
-rw-r--r-- | net-mail/courier/Manifest | 2 | ||||
-rw-r--r-- | net-mail/courier/courier-0.43.1.ebuild | 359 | ||||
-rw-r--r-- | net-mail/courier/files/digest-courier-0.43.1 | 1 |
4 files changed, 368 insertions, 2 deletions
diff --git a/net-mail/courier/ChangeLog b/net-mail/courier/ChangeLog index dfe0e5ebccc1..25ee551c8701 100644 --- a/net-mail/courier/ChangeLog +++ b/net-mail/courier/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for net-mail/courier # Copyright 2002-2003 Gentoo Technologies, Inc.; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-mail/courier/ChangeLog,v 1.31 2003/08/02 16:22:31 iggy Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-mail/courier/ChangeLog,v 1.32 2003/08/20 04:47:53 iggy Exp $ + +*courier-0.43.1 (19 Aug 2003) + + 19 Aug 2003; <iggy@gentoo.org> courier-0.43.1.ebuild: + courier-0.43.1 is out, just copied the 42.2-r3 ebuild, and updated the + postinst msgs a bit 02 Aug 2003; <iggy@gentoo.org> courier-0.42.2-r1.ebuild, courier-0.42.2-r2.ebuild, courier-0.42.2-r3.ebuild: diff --git a/net-mail/courier/Manifest b/net-mail/courier/Manifest index da3d8d1d7594..3023e8e383de 100644 --- a/net-mail/courier/Manifest +++ b/net-mail/courier/Manifest @@ -1,7 +1,7 @@ MD5 c15ae4bdd9eddc3184258c67482683bb courier-0.43.1.ebuild 10336 MD5 cde0b9d363f6d323dff0b3435d2e89d0 courier-0.42.2.ebuild 9694 MD5 636565aadd2a000d4ab59150d9aaa58d courier-0.42.2-r3.ebuild 10210 -MD5 6648267303d77b000cfb060f2bdf27c4 ChangeLog 5367 +MD5 418fc5bbd1846865b3f571cd6713944a ChangeLog 5550 MD5 891fa054ac6cfcaee491ccaae9b84a85 metadata.xml 463 MD5 52f032e570c6f5f9f69b4e4bdfa562a1 files/password.dist 247 MD5 a546a21f960e4f921e71f614f719a2ce files/bofh 23 diff --git a/net-mail/courier/courier-0.43.1.ebuild b/net-mail/courier/courier-0.43.1.ebuild new file mode 100644 index 000000000000..d531b44b84e1 --- /dev/null +++ b/net-mail/courier/courier-0.43.1.ebuild @@ -0,0 +1,359 @@ +# Copyright 1999-2003 Gentoo Technologies, Inc. +# Distributed under the terms of the GNU General Public License v2 +# $Header: /home/cvsroot/gentoo-x86/net-mail/courier/courier-0.41.0.ebuild + +inherit flag-o-matic eutils + +filter-flags -fomit-frame-pointer +filter-flags -funroll-loops + +DESCRIPTION="An MTA designed specifically for maildirs" +SRC_URI="mirror://sourceforge/courier/${P}.tar.bz2" +HOMEPAGE="http://www.courier-mta.org/" + +SLOT="0" +LICENSE="GPL-2" +KEYWORDS="~x86 -ppc -sparc" +IUSE="gdbm tcltk postgres ldap mysql pam nls tcltk ipv6 spell fax crypt" + +PROVIDE="virtual/mta + virtual/imapd" + +RDEPEND="virtual/glibc + >=dev-libs/openssl-0.9.6 + crypt? ( >=app-crypt/gnupg-1.0.4 ) + fax? ( >=media-libs/netpbm-9.12 + >=app-text/ghostscript-7.05.5 + >=net-dialup/mgetty-1.1.28 ) + pam? ( >=sys-libs/pam-0.75 ) + gdbm? ( >=sys-libs/gdbm-1.8.0 ) + mysql? ( >=dev-db/mysql-3.23.36 ) + ldap? ( >=net-nds/openldap-1.2.11 ) + postgres? ( >=dev-db/postgresql-7.1.3 ) + spell? ( virtual/aspell-dict ) + !virtual/imapd" + + # Removed these from RDEP until the tcltk situation is clarified. + # They are only necessary for non-virtual users to be able to change + # passwords via webmail. Hopefully not a highly used feature. + #>=dev-tcltk/expect-5.33.0 + #tcltk? ( >=dev-tcltk/expect-5.33.0 ) + + +DEPEND="${RDEPEND} + app-admin/fam-oss + dev-lang/perl + sys-apps/procps" + +src_compile() { + local myconf + use pam || myconf="${myconf} --without-authpam" + use ldap || myconf="${myconf} --without-authldap" + use mysql || myconf="${myconf} --without-authmysql" + use postgres || myconf="${myconf} --without-authpostgresql" + +# courier does not work well with db4, and we don't have a working fix yet to +# make it use db3 +# use berkdb \ +# && myconf="${myconf} --with-db=db" \ +# || myconf="${myconf} --with-db=gdbm" + myconf="${myconf} --with-db=gdbm" + + use ipv6 || myconf="${myconf} --without-ipv6" + use spell \ + && myconf="${myconf} --with-ispell" \ + || myconf="${myconf} --without-ispell" + + if [ -f /var/vpopmail/etc/lib_deps ]; then + myconf="${myconf} --with-authvchkpw" + else + myconf="${myconf} --without-authvchkpw" + fi + + # + # 1. If nls is enabled and ENABLE_UNICODE is not empty... + # enable the specified unicode sets + # 2. If nls is enabled and no unicode sets are specified, + # enable them all + # 3. If nls is disabled, disable unicode sets + # + if use nls && [ ! -z "$ENABLE_UNICODE" ]; then + myconf="${myconf} --enable-unicode=$ENABLE_UNICODE" + elif use nls; then + myconf="${myconf} --enable-unicode" + else + myconf="${myconf} --disable-unicode" + fi + + myconf="${myconf} debug=true" + + ./configure \ + --prefix=/usr \ + --disable-root-check \ + --mandir=/usr/share/man \ + --sysconfdir=/etc/courier \ + --libexecdir=/usr/lib/courier \ + --datadir=/usr/share/courier \ + --sharedstatedir=/var/lib/courier/com \ + --localstatedir=/var/lib/courier \ + --with-piddir=/var/run/courier \ + --with-authdaemonvar=/var/lib/courier/authdaemon \ + --with-mailuser=mail \ + --with-mailgroup=mail \ + --with-paranoid-smtpext \ + --disable-autorenamesent \ + --enable-mimetypes=/etc/apache/conf/mime.types \ + --enable-workarounds-for-imap-client-bugs \ + --host=${CHOST} ${myconf} || die "bad ./configure" + + emake || die "Compile problem" +} + +chg_cfg() { + file=${1} + key=${2} + value=${3} + + echo "changing ${file}: ${key} to ${value}" + sed -e "/\#\#NAME: ${key}/,+20 s|${key}=.*|${key}=\"${value}\"|g" ${file} > ${file}.tmp && chmod --reference ${file} ${file}.tmp && mv ${file}.tmp ${file} + rm -f ${f}.tmp 1>/dev/null 2>&1 +} + +set_mime() { + local files=$* + + chk_badmime='##NAME: BOFHBADMIME:0' + pos_badmime='##NAME: NOADDMSGID:0' + ins_badmime='\ +##NAME: BOFHBADMIME:0\ +#\ +# set BOFHBADMIME\ +# to \"reject\" to return mail with invalid MIME header\ +# to \"wrap\" to wrap mail with invalid MIME header in an attachmant\ +# to \"accept\" to pass mail with invalid MIME header untouched\ +\ +BOFHBADMIME=accept\ +' + + local f + for f in ${files} + do + if ! grep -q "${chk_badmime}" ${f} + then + echo "adding parameter ${chk_badmime} to ${f}" + sed -e"/${pos_badmime}/ i ${ins_badmime}" ${f} > ${f}.tmp && chmod --reference ${f} ${f}.tmp && mv -f ${f}.tmp ${f} + rm -f ${f}.tmp 1>/dev/null 2>&1 + fi + done +} + +set_maildir() { + local files=$* + + origmaildir='Maildir' + newmaildir='.maildir' + + local f + for f in ${files} + do + echo "changing ${origmaildir} in ${f} to ${newmaildir}" + sed -e"/^[^\#]/ s/${origmaildir}/${newmaildir}/g" ${f} > ${f}.tmp && chmod --reference ${f} ${f}.tmp && mv -f ${f}.tmp ${f} + rm -f ${f}.tmp 1> /dev/null 2>&1 + done +} + +src_install() { + dodir /var/lib/courier + dodir /etc/pam.d + make install DESTDIR=${D} || die + # fix bug #15873 bad owner on /var/run/courier + diropts -o mail -g mail + keepdir /var/run/courier + # make install creates a ton of dirs that we want to keep + # and we don't want to run keepdir 900 times + find ${D} -type d -exec touch {}/.keep + + local f + cd ${D}/etc/courier + mv imapd.authpam imap.authpam + mv pop3d.authpam pop3.authpam + for f in *.authpam + do + cp "${f}" "${D}/etc/pam.d/${f%%.authpam}" + done + + exeinto /etc/init.d + # we install the new single init script as courier + newexe ${FILESDIR}/courier-init courier + # and install the old main init script as courier-old if the old one + # is installed which it will be now, but for the future... + `grep DAEMONLIST /etc/init.d/courier >&/dev/null` && \ + newexe ${FILESDIR}/courier courier-old + # the rest of them don't need to be installed + + einfo "Setting up maildirs by default in the account skeleton ..." + diropts -m 755 -o root -g root + insinto /etc/skel + ${D}/usr/bin/maildirmake ${D}/etc/skel/.maildir + newins ${FILESDIR}/dot_courier .courier + fperms 644 /etc/skel/.courier + ${D}/usr/bin/maildirmake ${D}/var/spool/mail/.maildir + insinto /etc/courier + newins ${FILESDIR}/bofh bofh + newins ${FILESDIR}/locallowercase locallowercase + newins ${FILESDIR}/sizelimit sizelimit + newins ${FILESDIR}/apache-sqwebmail.inc apache-sqwebmail.inc + + touch ${D}/var/lib/courier/webmail-logincache/.keep + touch ${D}/var/lib/courier/tmp/broken/.keep + touch ${D}/var/lib/courier/msgs/.keep + touch ${D}/var/lib/courier/msgq/.keep + touch ${D}/var/lib/courier/filters/.keep + touch ${D}/var/lib/courier/faxtmp/.keep + touch ${D}/var/lib/courier/calendar/public/.keep + touch ${D}/var/lib/courier/calendar/private/.keep + touch ${D}/var/lib/courier/calendar/localcache/.keep + touch ${D}/var/lib/courier/calendar/.keep + touch ${D}/var/lib/courier/allfilters/.keep + + dodoc AUTHORS BENCHMARKS ChangeLog* NEWS README TODO + + # See bug #10574 + # file which describes the webadmin password file + insinto /etc/courier/webadmin + insopts -m 400 -o mail -g mail + doins ${FILESDIR}/password.dist + + # fixes bug#25028 courier doesn't symlink sendmail to /usr/sbin + dosym /usr/bin/sendmail /usr/sbin/sendmail + +} + +pkg_preinst() { + # avoid name collisions in /usr/sbin + local y + cd ${D}/usr/share/courier + set_maildir imapd imapd-ssl pop3d pop3d-ssl + + cd ${D}/usr/sbin + for y in imapd imapd-ssl pop3d pop3d-ssl + do + mv ${y} courier-${y} + done + + cd ${D}/etc/courier + for y in *.dist + do + cp ${y} ${y%%.dist} + done + touch esmtproutes + touch backuprelay + touch maildroprc + chown mail:root ldapaliasrc + chg_cfg imapd-ssl COURIERTLS /usr/bin/couriertls + chg_cfg authdaemonrc authmodulelist authpam + chg_cfg authdaemonrc version authdaemond.plain + set_mime esmtpd esmtpd-ssl esmtpd-msa + set_maildir courierd +} + +pkg_postinst() { + cd ${S} + make install-configure + + # fixes bug #15873 for upgrades, should be able to yank this sometime in + # the future + chown --recursive mail:mail ${ROOT}/var/run/courier + + # need to do this for new installs to be able to start courier + # without having to run rc-update ... + /etc/init.d/depscan.sh + + einfo "The following command will setup courier for you system:" + einfo "ebuild /var/db/pkg/${CATEGORY}/${PN}-${PV}/${PN}-${PV}.ebuild config" + echo + einfo "To enable webmail/webadmin, run the following commands:" + einfo "$ echo \"Include /etc/courier/apache-sqwebmail.inc\" >> /etc/apache*/conf/apache.conf" + einfo "$ chmod a+rx /usr/lib/courier/courier/webmail" + einfo "Then visit: http(s)://localhost/courier/webmail" + echo + einfo "imap behavior has changed, you may need to have you imap clients logoff" + einfo "and back on again" + echo + echo + ewarn "The init scripts for courier have changed." + ewarn "There is now one init script (/etc/init.d/courier). The rest" + ewarn "are obsolete. You can remove /etc/init.d/courier-*. You also" + ewarn "need to edit the following files in /etc/courier to enable" + ewarn "the different services:" + ewarn "imapd" + ewarn "pop3d" + ewarn "pop3d-ssl" + ewarn "esmtpd" + ewarn "imapd-ssl" + ewarn "esmtpd-msa" + ewarn "esmtpd-ssl" + ewarn "hint: look for a line at the bottom of the file that looks like so" + ewarn "ESMTPDSTART=NO" + ewarn "and change it to YES for the services that you use" + echo -ne "\a" ; sleep 1 + echo -ne "\a" ; sleep 1 + echo -ne "\a" ; sleep 1 + echo -ne "\a" ; sleep 1 + echo -ne "\a" ; sleep 1 +} + +pkg_config() { + mailhost=`hostname` + export mailhost + + domainname=`echo ${mailhost} | sed -e "s/[^\.]*\.\(.*\)/\1/"` + export domainname + + + if [ ${ROOT} = "/" ] ; then + file=${ROOT}/etc/courier/locals + if [ ! -f ${file} ] ; then + echo "localhost" > ${file}; + echo ${domainname} >> ${file}; + fi + file=${ROOT}/etc/courier/esmtpacceptmailfor.dir/${domainname} + if [ ! -f ${file} ] ; then + echo ${domainname} > ${file} + /usr/sbin/makeacceptmailfor + fi + + file=${ROOT}/etc/courier/smtpaccess/${domainname} + if [ ! -f ${file} ] + then + netstat -nr | grep "^[1-9]" | while read network gateway netmask rest + do + i=1 + net="" + TIFS=${IFS} + IFS="." + for o in ${netmask} + do + if [ ${o} == "255" ] + then + [ "_${net}" == "_" ] || net="${net}." + t=`echo ${network} | cut -d " " -f ${i}` + net="${net}${t}" + fi + i=$((${i} + 1)) + done + IFS=${TIFS} + echo "doing configuration - relay control for the network ${net} !" + echo "${net} allow,RELAYCLIENT" >> ${file} + done + /usr/sbin/makesmtpaccess + fi + fi + + echo "creating cert for esmtpd-ssl:" + /usr/sbin/mkesmtpdcert + echo "creating cert for imapd-ssl:" + /usr/sbin/mkpop3dcert + echo "creating cert for pop3d-ssl:" + /usr/sbin/mkimapdcert +} diff --git a/net-mail/courier/files/digest-courier-0.43.1 b/net-mail/courier/files/digest-courier-0.43.1 new file mode 100644 index 000000000000..d67b3ccf8fc5 --- /dev/null +++ b/net-mail/courier/files/digest-courier-0.43.1 @@ -0,0 +1 @@ +MD5 ff08b1be931fd720704a71d3045cb212 courier-0.43.1.tar.bz2 3422493 |