summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--net-mail/courier-imap/ChangeLog11
-rw-r--r--net-mail/courier-imap/courier-imap-4.8.0-r1.ebuild225
-rw-r--r--net-mail/courier-imap/files/courier-authdaemond.service11
-rw-r--r--net-mail/courier-imap/files/courier-imapd-ssl.service13
-rw-r--r--net-mail/courier-imap/files/courier-imapd.service13
5 files changed, 271 insertions, 2 deletions
diff --git a/net-mail/courier-imap/ChangeLog b/net-mail/courier-imap/ChangeLog
index e86bb4ade1d9..1442b115dbed 100644
--- a/net-mail/courier-imap/ChangeLog
+++ b/net-mail/courier-imap/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for net-mail/courier-imap
-# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-mail/courier-imap/ChangeLog,v 1.191 2012/05/13 11:31:08 swift Exp $
+# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/net-mail/courier-imap/ChangeLog,v 1.192 2013/07/27 08:20:52 pacho Exp $
+
+*courier-imap-4.8.0-r1 (27 Jul 2013)
+
+ 27 Jul 2013; Pacho Ramos <pacho@gentoo.org> +courier-imap-4.8.0-r1.ebuild,
+ +files/courier-authdaemond.service, +files/courier-imapd-ssl.service,
+ +files/courier-imapd.service:
+ Install unit file #470746
13 May 2012; <swift@gentoo.org> courier-imap-4.0.6-r3.ebuild,
courier-imap-4.5.0.ebuild, courier-imap-4.6.0.ebuild,
diff --git a/net-mail/courier-imap/courier-imap-4.8.0-r1.ebuild b/net-mail/courier-imap/courier-imap-4.8.0-r1.ebuild
new file mode 100644
index 000000000000..e7b21230fd51
--- /dev/null
+++ b/net-mail/courier-imap/courier-imap-4.8.0-r1.ebuild
@@ -0,0 +1,225 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-mail/courier-imap/courier-imap-4.8.0-r1.ebuild,v 1.1 2013/07/27 08:20:52 pacho Exp $
+
+EAPI=5
+inherit autotools eutils multilib libtool systemd
+
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd"
+
+DESCRIPTION="An IMAP daemon designed specifically for maildirs."
+HOMEPAGE="http://www.courier-mta.org/"
+SRC_URI="mirror://sourceforge/courier/${P}.tar.bz2"
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="berkdb debug fam +gdbm ipv6 selinux gnutls trashquota"
+REQUIRED_USE="|| ( berkdb gdbm )"
+
+RDEPEND="gnutls? ( net-libs/gnutls )
+ !gnutls? ( >=dev-libs/openssl-0.9.6 )
+ >=net-libs/courier-authlib-0.61
+ >=net-mail/mailbase-0.00-r8
+ berkdb? ( sys-libs/db )
+ fam? ( virtual/fam )
+ gdbm? ( >=sys-libs/gdbm-1.8.0 )
+ selinux? ( sec-policy/selinux-courier )"
+DEPEND="${RDEPEND}
+ dev-lang/perl
+ !mail-mta/courier
+ userland_GNU? ( sys-process/procps )"
+
+# get rid of old style virtual - bug 350792
+# all blockers really needed?
+RDEPEND="${RDEPEND}
+ !mail-mta/courier
+ !net-mail/bincimap
+ !net-mail/cyrus-imapd
+ !net-mail/uw-imap"
+
+RC_VER="4.0.6-r1"
+INITD_VER="4.0.6-r1"
+
+src_prepare() {
+ # Bug #48838. Patch to enable/disable FAM support.
+ # 20 Aug 2004 langthang@gentoo.org
+ # This patch should fix bug #51540. fam USE flag is not needed for shared folder support.
+ epatch "${FILESDIR}"/${PN}-4.0.1-disable-fam-configure.in.patch
+
+ # Kill unneeded call to AC_PROG_SYSCONFTOOL (bug #168206).
+ epatch "${FILESDIR}"/${PN}-4.0.6-aclocal-fix.patch
+
+ # These patches should fix problems detecting BerkeleyDB.
+ # We now can compile with db4 support.
+ if use berkdb ; then
+ epatch "${FILESDIR}"/${PN}-4.0.6-db4-bdbobj_configure.in.patch
+ epatch "${FILESDIR}"/${PN}-4.0.6-db4-configure.in.patch
+ fi
+
+ eautoreconf
+}
+
+src_configure() {
+ local myconf=""
+
+ # 19 Aug 2004 langthang@gentoo.org
+ # Default to gdbm if both berkdb and gdbm are present.
+ if use gdbm ; then
+ einfo "Building with GDBM support"
+ myconf="${myconf} --with-db=gdbm"
+ elif use berkdb ; then
+ einfo "Building with BerkeleyDB support"
+ myconf="${myconf} --with-db=db"
+ fi
+
+ # Disabling unicode is no longer supported
+ # By default all available character sets are included
+ # Set ENABLE_UNICODE=iso-8859-1,utf-8,iso-8859-10
+ # to include only specified translation tables.
+ if [[ -z "${ENABLE_UNICODE}" ]] ; then
+ einfo "ENABLE_UNICODE is not set, building with all available character sets"
+ myconf="${myconf} --enable-unicode"
+ else
+ einfo "ENABLE_UNICODE is set, building with unicode=${ENABLE_UNICODE}"
+ myconf="${myconf} --enable-unicode=${ENABLE_UNICODE}"
+ fi
+
+ if use trashquota ; then
+ einfo "Building with Trash Quota Support"
+ myconf="${myconf} --with-trashquota"
+ fi
+
+ use debug && myconf="${myconf} debug=true"
+
+ # Do the actual build now
+ econf \
+ --disable-root-check \
+ --bindir=/usr/sbin \
+ --sysconfdir=/etc/${PN} \
+ --libexecdir=/usr/$(get_libdir)/${PN} \
+ --localstatedir=/var/lib/${PN} \
+ --with-authdaemonvar=/var/lib/${PN}/authdaemon \
+ --enable-workarounds-for-imap-client-bugs \
+ --with-mailuser=mail \
+ --with-mailgroup=mail \
+ $(use_with fam) \
+ $(use_with ipv6) \
+ $(use_with gnutls) \
+ ${myconf} || die "econf failed"
+
+ # Change the pem file location.
+ sed -i -e "s:^\(TLS_CERTFILE=\).*:\1/etc/courier-imap/imapd.pem:" \
+ imap/imapd-ssl.dist || \
+ die "sed failed"
+
+ sed -i -e "s:^\(TLS_CERTFILE=\).*:\1/etc/courier-imap/pop3d.pem:" \
+ imap/pop3d-ssl.dist || \
+ die "sed failed"
+}
+
+src_compile() {
+ # spurious failures with parallel compiles
+ emake -j1
+}
+
+src_install() {
+ dodir /var/lib/${PN} /etc/pam.d
+ emake DESTDIR="${D}" install
+ rm -Rf "${D}/etc/pam.d"
+
+ # Avoid name collisions in /usr/sbin wrt imapd and pop3d
+ cd "${D}/usr/sbin"
+ for name in imapd pop3d ; do
+ mv -f "${name}" "courier-${name}" || die "Failed to mv ${name} to courier-${name}"
+ done
+
+ # Hack /usr/lib/courier-imap/foo.rc to use ${MAILDIR} instead of
+ # 'Maildir', and to use /usr/sbin/courier-foo names.
+ cd "${D}/usr/$(get_libdir)/${PN}"
+ for service in {imapd,pop3d}{,-ssl} ; do
+ sed -i -e 's/Maildir/${MAILDIR}/' "${service}.rc" || die "sed failed"
+ sed -i -e "s/\/usr\/sbin\/${service}/\/usr\/sbin\/courier-${service}/" "${service}.rc" || die "sed failed"
+ done
+
+ # Rename the config files correctly and add a value for ${MAILDIR} to them.
+ cd "${D}/etc/${PN}"
+ for service in {imapd,pop3d}{,-ssl} ; do
+ mv -f "${service}.dist" "${service}" || die "Failed to mv ${service}.dist to ${service}"
+ echo -e '\n# Hardwire a value for ${MAILDIR}' >> "${service}"
+ echo 'MAILDIR=.maildir' >> "${service}"
+ echo 'MAILDIRPATH=.maildir' >> "${service}"
+ done
+ for service in imapd pop3d ; do
+ echo -e '# Put any program for ${PRERUN} here' >> "${service}"
+ echo 'PRERUN=' >> "${service}"
+ echo -e '# Put any program for ${LOGINRUN} here' >> "${service}"
+ echo -e '# this is for relay-ctrl-allow in 4*' >> "${service}"
+ echo 'LOGINRUN=' >> "${service}"
+ done
+
+ cd "${D}/usr/sbin"
+ for x in * ; do
+ if [[ -L "${x}" ]] ; then
+ rm -f "${x}" || die "Failed to rm ${x}"
+ fi
+ done
+
+ cd ../share
+ mv -f * ../sbin
+ mv -f ../sbin/man .
+ cd ..
+
+ for x in mkimapdcert mkpop3dcert ; do
+ mv -f "${D}/usr/sbin/${x}" "${D}/usr/sbin/${x}.orig" || die "Failed to mv /usr/sbin/${x} to /usr/sbin/${x}.orig"
+ done
+
+ exeinto /usr/sbin
+ doexe "${FILESDIR}/mkimapdcert" "${FILESDIR}/mkpop3dcert"
+
+ dosym /usr/sbin/courierlogger /usr/$(get_libdir)/${PN}/courierlogger
+
+ mkdir "${WORKDIR}/tmp" ; cd "${WORKDIR}/tmp"
+
+ for initd in courier-{imapd,pop3d}{,-ssl} ; do
+ sed -e "s:GENTOO_LIBDIR:$(get_libdir):g" "${FILESDIR}/${PN}-${INITD_VER}-${initd}.rc6" > "${initd}" || die "initd libdir-sed failed"
+ doinitd "${initd}"
+ done
+
+ systemd_dounit "${FILESDIR}"/courier-authdaemond.service
+ systemd_dounit "${FILESDIR}"/courier-imapd-ssl.service
+ systemd_dounit "${FILESDIR}"/courier-imapd.service
+
+ exeinto /usr/$(get_libdir)/${PN}
+ for exe in gentoo-{imapd,pop3d}{,-ssl}.rc courier-{imapd,pop3d}.indirect ; do
+ sed -e "s:GENTOO_LIBDIR:$(get_libdir):g" "${FILESDIR}/${PN}-${RC_VER}-${exe}" > "${exe}" || die "exe libdir-sed failed"
+ doexe "${exe}"
+ done
+
+ dodir /usr/bin
+ mv -f "${D}/usr/sbin/maildirmake" "${D}/usr/bin/maildirmake" || die "Failed to mv /usr/sbin/maildirmake to /usr/bin/maildirmake"
+
+ # Bug #45953, more docs.
+ cd "${S}"
+ dohtml -r "${S}"/*
+ dodoc "${S}"/{00README.NOW.OR.SUFFER,AUTHORS,INSTALL,NEWS,README,ChangeLog} "${FILESDIR}"/${PN}-gentoo.readme
+ docinto imap
+ dodoc "${S}"/imap/{ChangeLog,BUGS,BUGS.html,README}
+ docinto maildir
+ dodoc "${S}"/maildir/{AUTHORS,INSTALL,README.maildirquota.txt,README.sharedfolders.txt}
+ docinto tcpd
+ dodoc "${S}"/tcpd/README.couriertls
+}
+
+pkg_postinst() {
+ elog "Authdaemond is no longer provided by this package."
+ elog "Authentication libraries are now in courier-authlib."
+ elog "For a quick-start howto please refer to"
+ elog "${PN}-gentoo.readme in /usr/share/doc/${PF}"
+ # Some users have been reporting that permissions on this directory were
+ # getting scrambled, so let's ensure that they are sane.
+ chmod 0755 "${ROOT}/usr/$(get_libdir)/${PN}" || die "Failed to ensure sane permissions on ${ROOT}/usr/$(get_libdir)/${PN}"
+}
+
+src_test() {
+ ewarn "make check is not supported by this package due to the"
+ ewarn "--enable-workarounds-for-imap-client-bugs option."
+}
diff --git a/net-mail/courier-imap/files/courier-authdaemond.service b/net-mail/courier-imap/files/courier-authdaemond.service
new file mode 100644
index 000000000000..c4cbbf1c18c1
--- /dev/null
+++ b/net-mail/courier-imap/files/courier-authdaemond.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=Courier Authentification Daemon
+
+[Service]
+Type=forking
+ExecStart=/usr/sbin/courierlogger -pid=/var/run/authdaemon.pid -start /usr/lib/courier/courier-authlib/authdaemond
+ExecStop=/usr/sbin/courierlogger -pid=/var/run/authdaemon.pid -stop /usr/lib/courier/courier-authlib/authdaemond
+PIDFile=/var/run/authdaemon.pid
+
+[Install]
+WantedBy=courier-imap.service
diff --git a/net-mail/courier-imap/files/courier-imapd-ssl.service b/net-mail/courier-imap/files/courier-imapd-ssl.service
new file mode 100644
index 000000000000..395611399db3
--- /dev/null
+++ b/net-mail/courier-imap/files/courier-imapd-ssl.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=Courier IMAP Daemon
+After=network.target
+
+[Service]
+Type=forking
+EnvironmentFile=/etc/courier-imap/imapd-ssl
+ExecStart=/usr/lib/courier-imap/gentoo-imapd-ssl.rc
+ExecStop=/bin/kill $MAINPID
+PIDFile=/var/run/imapd-ssl.pid
+
+[Install]
+WantedBy=multi-user.target
diff --git a/net-mail/courier-imap/files/courier-imapd.service b/net-mail/courier-imap/files/courier-imapd.service
new file mode 100644
index 000000000000..e8780b63729b
--- /dev/null
+++ b/net-mail/courier-imap/files/courier-imapd.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=Courier IMAP Daemon
+After=network.target
+
+[Service]
+Type=forking
+EnvironmentFile=/etc/courier-imap/imapd
+ExecStart=/usr/lib/courier-imap/gentoo-imapd.rc
+ExecStop=/bin/kill $MAINPID
+PIDFile=/var/run/imapd.pid
+
+[Install]
+WantedBy=multi-user.target