diff options
Diffstat (limited to 'net-mail')
-rw-r--r-- | net-mail/courier-imap/Manifest | 1 | ||||
-rw-r--r-- | net-mail/courier-imap/courier-imap-5.0.8.ebuild | 254 |
2 files changed, 255 insertions, 0 deletions
diff --git a/net-mail/courier-imap/Manifest b/net-mail/courier-imap/Manifest index ee46b370dee2..d8de25f83d8a 100644 --- a/net-mail/courier-imap/Manifest +++ b/net-mail/courier-imap/Manifest @@ -1,3 +1,4 @@ DIST courier-imap-4.17.3.tar.bz2 3202534 BLAKE2B c42eb369bdcb65e7f904b3bd7b018e2785e48fddcc1690374ba254ce17a76b3191c301a81626f0fe44587f4f4b9e4f34edc06e8e8098c509b2c76e3830db2563 SHA512 3166cc703cdc09a71d33257671a662d95cfdb8977bc3b19e0218a4d25eb99a1a108d2868a6eb593106e6538aadf684f11ff0426cd58d522e3ca4b2988f0a88f1 DIST courier-imap-4.18.2.tar.bz2 3205230 BLAKE2B dd52c55698ac4307a52ef76ed6ca54d4289e00aacff487609cfe01bce351e180561b4bec4904e2701a0c05916bbac2e301409530ccbdcd08474b50be4c1365e3 SHA512 821f0151012f1a357faf705d938d8498a939cc994957398c0d5e2b7a619eabe202549f174e625161545ba6a94b753072458e9f0edc30cbb2443b15405740347e 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.8.ebuild b/net-mail/courier-imap/courier-imap-5.0.8.ebuild new file mode 100644 index 000000000000..f12cb6999da6 --- /dev/null +++ b/net-mail/courier-imap/courier-imap-5.0.8.ebuild @@ -0,0 +1,254 @@ +# 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" +) + +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 )" +} |