net-mail/courier-imap: version bump to 5.0.10
authorAlfredo Tupone <tupone@gentoo.org>
Sun, 24 May 2020 09:29:36 +0000 (11:29 +0200)
committerAlfredo Tupone <tupone@gentoo.org>
Sun, 24 May 2020 09:29:36 +0000 (11:29 +0200)
Closes: https://bugs.gentoo.org/724590
Package-Manager: Portage-2.3.99, Repoman-2.3.22
Signed-off-by: Alfredo Tupone <tupone@gentoo.org>
net-mail/courier-imap/Manifest
net-mail/courier-imap/courier-imap-5.0.10.ebuild [new file with mode: 0644]

index e1c826c1973ee47e940e563f7ca479bc49a29685..eac648ddd144994e8a6247bb3fa33cd3ffd08b9b 100644 (file)
@@ -1,2 +1,3 @@
+DIST courier-imap-5.0.10.tar.bz2 3324560 BLAKE2B f59034184c6423ba4c8a238e1756e431bc240a5e80db5abc62af10eb776446f7c6afcba2935dfd49a7cf5dfec83087f3cdfe98785b13faa23287b0c6d24a9bd9 SHA512 7b1bd179fb7d9ed99ea4a92414e13d1313d10239bd1d7ddef76d17bb618e6dfd5d51f11d1fdb2fcd6a204a5000e3756ecb30aa2c791c6063ab3991dde65a3590
 DIST courier-imap-5.0.7.tar.bz2 3296879 BLAKE2B 022522387cc667223c44354f4f3da822ac8abab19222bfc69a9dde4b7460665c97ca565b21705519f3bc0dfbe1d69bbd2ef288329bfa7b8d99e3251a4f9d3e98 SHA512 a0be5cb3e6bc42f4bf45b14132e7d4ad7e822c26aa3b3dd4bfefa7783a047b9c928ad503b462c8e832fddefb356af58b4adfa5ee91481bd024149992157a1aad
 DIST courier-imap-5.0.8.tar.bz2 3296810 BLAKE2B 43b9cf61253145c4f877ed350140159014d812c197f82cb2621db4484c66ae57e0c1a237ba0f13e0edb35439f562662557ca98d3193ba8b6e35e392dac00cd03 SHA512 bc60f4540da8db02758d593694ca4b7336a7d65fd3c48ea5c373e18abfc9973db836c505f77caf844529947ad0c4ef0dc276898e437ca60f0facb2ec6650702c
diff --git a/net-mail/courier-imap/courier-imap-5.0.10.ebuild b/net-mail/courier-imap/courier-imap-5.0.10.ebuild
new file mode 100644 (file)
index 0000000..3d9b947
--- /dev/null
@@ -0,0 +1,255 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+inherit autotools libtool readme.gentoo-r1 systemd
+
+DESCRIPTION="An IMAP daemon designed specifically for maildirs"
+HOMEPAGE="https://www.courier-mta.org/imap/"
+SRC_URI="mirror://sourceforge/courier/${P}.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
+
+IUSE="berkdb debug fam +gdbm gnutls ipv6 libressl selinux trashquota"
+REQUIRED_USE="|| ( berkdb gdbm )"
+
+CDEPEND="
+       gnutls? ( net-libs/gnutls[tools] )
+       !gnutls? (
+               !libressl? ( dev-libs/openssl:0= )
+               libressl? ( dev-libs/libressl:0= )
+       )
+       >=net-libs/courier-authlib-0.66.4
+       >=net-libs/courier-unicode-2
+       >=net-mail/mailbase-0.00-r8
+       net-dns/libidn:=
+       berkdb? ( sys-libs/db:= )
+       fam? ( virtual/fam )
+       gdbm? ( >=sys-libs/gdbm-1.8.0 )
+"
+DEPEND="${CDEPEND}
+       dev-lang/perl
+       !mail-mta/courier
+       userland_GNU? ( sys-process/procps )
+"
+RDEPEND="${CDEPEND}
+       selinux? ( sec-policy/selinux-courier )
+"
+
+# get rid of old style virtual - bug 350792
+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"
+
+# make check is not supported by this package due to the
+# --enable-workarounds-for-imap-client-bugs option.
+RESTRICT="test"
+
+DISABLE_AUTOFORMATTING="yes"
+DOC_CONTENTS="
+Please read http://www.courier-mta.org/imap/INSTALL.html#upgrading
+and remove TLS_DHPARAMS from configuration files or run mkdhparams
+
+For a quick-start howto please refer to
+${PN}-gentoo.readme in /usr/share/doc/${PF}
+
+Please convert maildir to utf8
+and rerun mkdhparams if needed. Location has changed
+"
+
+PATCHES=(
+       "${FILESDIR}/${PN}-4.17-disable-fam-configure.ac.patch"
+       "${FILESDIR}/${PN}-4.17-aclocal-fix.patch"
+       "${FILESDIR}/${PN}-5.0.8-ar-fix.patch"
+)
+
+src_prepare() {
+       default
+
+       # These patches should fix problems detecting BerkeleyDB.
+       # We now can compile with db4 support.
+       if use berkdb ; then
+               eapply "${FILESDIR}/${PN}-4.17-db4-bdbobj_configure.ac.patch"
+               eapply "${FILESDIR}/${PN}-4.17-db4-configure.ac.patch"
+       fi
+
+       eautoreconf
+}
+
+src_configure() {
+       local myconf=""
+
+       # 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
+
+       if use trashquota ; then
+               einfo "Building with Trash Quota Support"
+               myconf="${myconf} --with-trashquota"
+       fi
+
+       use debug && myconf="${myconf} debug=true"
+
+       econf \
+               --with-notice=unicode \
+               --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 \
+               --with-certsdir="/etc/courier-imap" \
+               $(use_with fam) \
+               $(use_with ipv6) \
+               $(use_with gnutls) \
+               ${myconf}
+}
+
+#src_compile() {
+       # spurious failures with parallel compiles, bug #????
+#      emake -j1
+#}
+
+src_install() {
+       dodir "/var/lib/${PN}" /etc/pam.d
+       keepdir /var/lib/courier-imap
+
+       default
+       rm -r "${D}/etc/pam.d" || die
+
+       # Avoid name collisions in /usr/sbin wrt imapd and pop3d
+       for name in imapd pop3d ; do
+               mv "${D}/usr/sbin/"{,courier-}${name} \
+                       || die "failed to rename ${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.
+       for service in {imapd,pop3d}{,-ssl} ; do
+               sed -e 's/Maildir/${MAILDIR}/' \
+                       -i "${D}/usr/$(get_libdir)/${PN}/${service}.rc" \
+                       || die "sed failed"
+               sed -e "s/\/usr\/sbin\/${service}/\/usr\/sbin\/courier-${service}/" \
+                       -i "${D}/usr/$(get_libdir)/${PN}/${service}.rc" \
+                       || die "sed failed"
+       done
+
+       # Rename the config files correctly and add a value for ${MAILDIR}
+       # to them.
+       for service in {imapd,pop3d}{,-ssl} ; do
+               mv "${D}/etc/${PN}/${service}"{.dist,} \
+                       || die "failed to rename ${service}.dist to ${service}"
+               echo -e '\n# Hardwire a value for ${MAILDIR}' \
+                        >> "${D}/etc/${PN}/${service}"
+               echo 'MAILDIR=.maildir' >> "${D}/etc/${PN}/${service}"
+               echo 'MAILDIRPATH=.maildir' >> "${D}/etc/${PN}/${service}"
+       done
+
+       for service in imapd pop3d ; do
+               echo -e '# Put any program for ${PRERUN} here' \
+                        >> "${D}/etc/${PN}/${service}"
+               echo 'PRERUN=' >> "${D}/etc/${PN}/${service}"
+               echo -e '# Put any program for ${LOGINRUN} here' \
+                        >> "${D}/etc/${PN}/${service}"
+               echo -e '# this is for relay-ctrl-allow in 4*' \
+                        >> "${D}/etc/${PN}/${service}"
+               echo 'LOGINRUN=' >> "${D}/etc/${PN}/${service}"
+       done
+
+       for x in "${D}/usr/sbin"/* ; do
+               if [[ -L "${x}" ]] ; then
+                       rm "${x}" || die "failed to remove ${x}"
+               fi
+       done
+
+       mv "${D}/usr/share"/* "${D}/usr/sbin/" || die
+       mv "${D}/usr/sbin/man" "${D}/usr/share/" || die
+
+       rm "${D}/usr/sbin/"{mkimapdcert,mkpop3dcert} || die
+
+       dosbin "${FILESDIR}/mkimapdcert" "${FILESDIR}/mkpop3dcert"
+
+       dosym ../../sbin/courierlogger "/usr/$(get_libdir)/${PN}/courierlogger"
+
+       for initd in courier-{imapd,pop3d}{,-ssl} ; do
+               sed -e "s:GENTOO_LIBDIR:$(get_libdir):g" \
+                       "${FILESDIR}/${PN}-${INITD_VER}-${initd}.rc6" \
+                       > "${T}/${initd}" \
+                       || die "initd libdir-sed failed"
+               doinitd "${T}/${initd}"
+       done
+
+       cp "${FILESDIR}"/courier-*-r1.service .
+
+       sed -i \
+               -e "s:/usr/lib/:/usr/$(get_libdir)/:" \
+               courier-*-r1.service \
+               || die
+
+       systemd_newunit courier-authdaemond-r1.service \
+                                       courier-authdaemond.service
+       systemd_newunit courier-imapd-ssl-r1.service \
+                                       courier-imapd-ssl.service
+       systemd_newunit courier-imapd-r1.service \
+                                       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}" \
+                       > "${T}/${exe}" \
+                       || die "exe libdir-sed failed"
+               doexe "${T}/${exe}"
+       done
+
+       # Avoid a collision with mail-mta/netqmail, bug 482098.
+       mv "${D}/usr/sbin/"{,courier-}maildirmake \
+               || die "failed to rename maildirmake to courier-maildirmake"
+       mv "${D}/usr/share/man/man1/"{,courier-}maildirmake.1 \
+               || die "failed to rename maildirmake.1 to courier-maildirmake.1"
+
+       dodoc AUTHORS INSTALL NEWS README ChangeLog
+       readme.gentoo_create_doc
+       dodoc "${FILESDIR}/${PN}-gentoo.readme"
+       docinto imap
+       dodoc libs/imap/ChangeLog libs/imap/BUGS* libs/imap/README*
+       docinto maildir
+       dodoc libs/maildir/AUTHORS libs/maildir/*.html libs/maildir/README*
+       docinto rfc2045
+       dodoc libs/rfc2045/*.html
+       docinto tcpd
+       dodoc libs/tcpd/README* libs/tcpd/*.html
+       exeinto /etc/cron.monthly
+       newexe "${FILESDIR}"/${PN}.cron ${PN}
+}
+
+pkg_postinst() {
+       # Some users have been reporting that permissions on this directory were
+       # getting scrambled, so let's ensure that they are sane.
+       fperms 0755 "${ROOT}/usr/$(get_libdir)/${PN}"
+
+       readme.gentoo_print_elog
+
+       elog ""
+       elog "Courier Imap now run as user mail:mail."
+       elog ""
+       elog "This require you to enable read/write access to the caches:"
+       elog "/var/lib/courier-imap/courierssl*cache (chown mail:mail)"
+       elog "and read access to the certificates (e.g. /etc/courier-imap/pop3d.pem )"
+}