From 9452a6e87b6c2c70513bc47a2470bf9f1168920e Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sat, 13 Jun 2020 10:39:22 +0100 Subject: gentoo resync : 13.06.2020 --- mail-mta/Manifest.gz | Bin 2229 -> 2391 bytes mail-mta/exim/Manifest | 6 + mail-mta/exim/exim-4.94-r1.ebuild | 592 +++++++++++++++++++++ .../exim/files/exim-4.94-localscan_dlopen.patch | 269 ++++++++++ mail-mta/exim/files/exim-4.94-maildir.patch | 13 + .../exim/files/exim-4.94-taint-pam-expansion.patch | 35 ++ mail-mta/msmtp/Manifest | 4 +- mail-mta/msmtp/msmtp-1.8.11.ebuild | 145 +++++ mail-mta/msmtp/msmtp-1.8.8.ebuild | 145 ----- mail-mta/netqmail/Manifest | 3 +- mail-mta/netqmail/netqmail-1.06-r12.ebuild | 199 ------- mail-mta/netqmail/netqmail-1.06-r13.ebuild | 2 +- mail-mta/notqmail/Manifest | 10 + mail-mta/notqmail/metadata.xml | 23 + mail-mta/notqmail/notqmail-1.08.ebuild | 186 +++++++ mail-mta/notqmail/notqmail-9999.ebuild | 186 +++++++ mail-mta/nullmailer/Manifest | 5 - mail-mta/nullmailer/files/init.d-nullmailer-r4 | 50 -- mail-mta/nullmailer/files/init.d-nullmailer-r5 | 51 -- .../files/nullmailer-1.13-unistd.h.patch | 28 - mail-mta/nullmailer/files/nullmailer.service | 17 - mail-mta/nullmailer/files/remotes.sample-1.13 | 29 - mail-mta/postfix/Manifest | 4 +- mail-mta/postfix/postfix-3.6_pre20200523.ebuild | 293 ---------- mail-mta/postfix/postfix-3.6_pre20200610.ebuild | 293 ++++++++++ 25 files changed, 1764 insertions(+), 824 deletions(-) create mode 100644 mail-mta/exim/exim-4.94-r1.ebuild create mode 100644 mail-mta/exim/files/exim-4.94-localscan_dlopen.patch create mode 100644 mail-mta/exim/files/exim-4.94-maildir.patch create mode 100644 mail-mta/exim/files/exim-4.94-taint-pam-expansion.patch create mode 100644 mail-mta/msmtp/msmtp-1.8.11.ebuild delete mode 100644 mail-mta/msmtp/msmtp-1.8.8.ebuild delete mode 100644 mail-mta/netqmail/netqmail-1.06-r12.ebuild create mode 100644 mail-mta/notqmail/Manifest create mode 100644 mail-mta/notqmail/metadata.xml create mode 100644 mail-mta/notqmail/notqmail-1.08.ebuild create mode 100644 mail-mta/notqmail/notqmail-9999.ebuild delete mode 100644 mail-mta/nullmailer/files/init.d-nullmailer-r4 delete mode 100644 mail-mta/nullmailer/files/init.d-nullmailer-r5 delete mode 100644 mail-mta/nullmailer/files/nullmailer-1.13-unistd.h.patch delete mode 100644 mail-mta/nullmailer/files/nullmailer.service delete mode 100644 mail-mta/nullmailer/files/remotes.sample-1.13 delete mode 100644 mail-mta/postfix/postfix-3.6_pre20200523.ebuild create mode 100644 mail-mta/postfix/postfix-3.6_pre20200610.ebuild (limited to 'mail-mta') diff --git a/mail-mta/Manifest.gz b/mail-mta/Manifest.gz index 9a1b57830e97..fa71ed19265e 100644 Binary files a/mail-mta/Manifest.gz and b/mail-mta/Manifest.gz differ diff --git a/mail-mta/exim/Manifest b/mail-mta/exim/Manifest index eb428fbd0191..3aca0f74a67f 100644 --- a/mail-mta/exim/Manifest +++ b/mail-mta/exim/Manifest @@ -10,6 +10,9 @@ AUX exim-4.93-as-needed-ldflags.patch 6013 BLAKE2B 2de473f089a36cabd5481020524dc AUX exim-4.93-fno-common.patch 767 BLAKE2B cd66b56d88badd97c1d081c3458adf294352b9f34dc0faee820d75ed4b97be8a5f313c4ba46ea08d4c3ba4744badf3759393bea1455a3e7fc04d80939d5ec49e SHA512 5fc5cab9091296e0bc7665e9e08f5232decef4585c7504abab104a8a7cf1c69aee4f535f1e1214b94aeb856b8f5620c42608f35e7c7ff26667de88a8719bd301 AUX exim-4.93-localscan_dlopen.patch 9585 BLAKE2B 02b11e75c94d70a787973e89dc329fc006b263d4411ccfb177acf596fd3832cc471004394cf126a9299b62113dc25fcf61bff9bb63d39c19f60ca7203c732be3 SHA512 5de142c1da26cd60e9e05de25e7c7de1f338591b3d73ea9ff151dc446ca45a2361841a28776e9680e77183f2071a7cac68063d5f83e79257b7b4a4884e1e9110 AUX exim-4.93-radius.patch 2791 BLAKE2B 94edcc141e9ed4b8f669298fc9af5e2fdc2835488567917721c7061835e7d7980c3944cb21b2cdb46041be7e8f93d57fc4d26cda0aa9583b98a594ee6c11260a SHA512 8393bddb5f85879e6fb3e4a8272df8583d99600f5ef25abbcea429743e9e396248e47c2dabeba7c6178d2a4d21f82ae68cde92a50bcb9598370bd0b3d8bc220f +AUX exim-4.94-localscan_dlopen.patch 9595 BLAKE2B c48eaaf486585890dc4028beaca7a39d5b1d965323468c4c317d099ccf0e2e983e9366cb923e0b34546a66ac718ee15e8f682a65cdcd771de8164f76b86c0aa2 SHA512 bd7872473ad1ab9eca41757ca6ee7dd8628bddfa145191aea6a5ac4b62b0e4e3539803cf75fcb22b8bfdcca33a7d2f71ff58ca1862f456960e6b7e4d262ba6ef +AUX exim-4.94-maildir.patch 316 BLAKE2B fe0b27712e77eba83244434c33372cec47fa317026d159de7a0ac37f2563999a6470df2dc203c1fcda8e7074c949133a0311c2b94c4b48bbc46d64c7c486202c SHA512 13863226883f79dcc781fe8eb3b50ad3c5511af130cf6e41ce40e8543d46832668bd7d746a2cc67842748cdf26144bef4aece49397d3168819215eac93ca1e6e +AUX exim-4.94-taint-pam-expansion.patch 1275 BLAKE2B 1faba96ebb9bb7cb786a78e2bd8f7cc8f2839aa0fcfcfc7159c3d2ca4fa098710ceb810aa6d2bba578cb349eb1615cd3d78bf260313c9b7c509e4a864f997e84 SHA512 677eefa8fea6d4e3f7f37002bf12c6ca44392e7371cac7a5a7a28d10f02429a243c955b5108ba42c5183f1b1ef0f992446976f88f489303e5cf190102debf909 AUX exim-submission.socket 161 BLAKE2B 409a5a687897af369a6a2ff0c30564096cc6b308dbc5d0afb6742df44d2aa972e45bad9681d2cb72be9731b260d23fdadb80bae644e7b875af5e34e9c8b8b40f SHA512 4a233761793e3510e9efa5aad3a6098c41b757f13133a7ea825680f2b393aba8d7935f16bf1dd065dde884fe7ba45639a8d398333a7d9bf0a6b72f88c8f2a09d AUX exim-submission_at.service 360 BLAKE2B 9ebcac1ab0f01a8264141843a4e711d77f634bdd910406bd466a0c197fdad8a9ff4bc31b9b28ef73c810aaff3e549eb60c0a2546507910dfc800da154eb1da00 SHA512 dc28698f15e8eaa4614ae81fc8cb76d92fed1110ce02f7a6ee8feace418dbb194711eb2d4dd444cf818628c11721e21d80b7b974879ab6ddd78cc717cce17c2f AUX exim.confd 141 BLAKE2B bc200e6121544d17e7feb0e162b5f6a5157647c3323492218da1556a19f3a2febf89a698e157a6dc657540d2f46088a9b1e34700655c715fbeaf0c201bc4aa9f SHA512 cb5e4aa71d3f0b7945e9806064f6a3ab64cb894381654ead40c73a49ae2d1bbb3dc587919952a09b2c81b9fcf8784f73d59c12081cda96a5b7210442f5088998 @@ -19,7 +22,10 @@ AUX exim.service 229 BLAKE2B 6d6396ef98b8e7c4fcfa28e24223bd58393387abedfb960284d AUX exim.socket 139 BLAKE2B bb8281a98fdac1b52031d5250fd1e658bf5a2c32e24b49ed0daa857d0d32285abf6db23c3d717992c43443ab4bcd97a19ec3811f182200a2d99a48ced6cfb6bc SHA512 db621116907ceb573e6f34581f47c91f751bff593054d7ddc32397b34c7f2405bec184bdb0589d2ac457fa3a61bcba072761e3a6293a99c9c764d2d9fd6069ae AUX exim_at.service 140 BLAKE2B 8624f4a555e2acdc7aaf917952c4152ad00dc063a51076aefa1d023d47d5f7fe8b268f3308734f363ed9628cd8551ccac7fc369657e0fdf65507d2e6419f704c SHA512 11c8133ee15b3e5193c9b1c59aed66c81b6e045dd23310bede9fcde6c88905db5ef08afdb798b53b75a7465915ea1247e980edf95db07a7f9b7bb58ce95fbb5a DIST exim-4.93.0.4.tar.xz 1804696 BLAKE2B 721336101104d9c71b3bb6f432e382c28ad17d80cdb50d04213989e65a719d906caf8eb95639bfaf7a1bfdd62c7000d9df14484953446ecfca901fd7c708514e SHA512 84951849b69399d6f187d2801760dc0cb9e61c88c7c88aaca4e07e48120199a6be94b2236d058ffeacb8d611dd84056b610d480353c301a3ad5799768dd39d96 +DIST exim-4.94.tar.xz 1828824 BLAKE2B 3836ae6427830b16fa366f5ca35431144eb48b922b699da20f3a5e423c9c8266def981afa008e50a879ac3583f3491d8f9c449e67c66053dc45e8612e38e836f SHA512 3bf95ade30902327403e7308089a3e423761da5b0745397dace7c7fd15ba3838d93e0ee418f1fed57606f79e57b793c7c7407e5c0d526146f0036126d5d95316 DIST exim-pdf-4.93.0.4.tar.xz 2069744 BLAKE2B 28730134293d87b16d672df66119ff97aaf2d796cf28842bb5bf6831a0be6a186a5cce503200b9fc985aaa14386053ca83c259625949634c5a28937b285247ca SHA512 929b4198a3e8764a64478e7ff5a9c7398ad1990114206b68494b1f1f563c23405c7b440e2f21a9f777e9e3cd3a3398d6faea3b882407f731ef3a767c27fd9361 +DIST exim-pdf-4.94.tar.xz 2089804 BLAKE2B 08f4631e903f1344d76da8dc1dcfd122cd5963bb2efbd54a486e7cf95df9e7ef06aa31dead1243a007656f05c18993f3fda18ba16ba1fde9377ac33324d5fe99 SHA512 d56666b619ba850dfa68de90afc7435bae741d72d18b5837762781ba18032878323ad40978e0113d4b88a01fd7a1d07213e6a74c38d699371d62796b6c3c35cc DIST system_filter.exim.gz 3075 BLAKE2B d05e872b5cef377d29126cda03fc0a74c8777b2119b76ff43da6e8de808035eb9bfcb034a85d81824f135d484e864bfc0629fc1af2c228a7277d5ee7cf9cde79 SHA512 cb358d3ce2499a0bb5920d962a06f2af8486e55ec90c8c928bd8e3aefb279aa57f5f960d5adfcef68bd94110b405eaa144e9629cfe6014a529c79c544600bbf3 EBUILD exim-4.93.0.4-r1.ebuild 14020 BLAKE2B 2d97b3d39774320271507fdf50f93d9dac88bdaa54b0d8387b2baeb6fff6baee9bc4185b86591f12053f3210b18514f027a6de9a103daad81d871fee837a9c7e SHA512 382c09462376ff6a156ede33316585c38e93a4e5474271f06bd141be20567af2df4e0a26539a219d09cd3b760a754dfc187fd75c712637cc60723b5d2e7f5526 +EBUILD exim-4.94-r1.ebuild 14071 BLAKE2B 45c3311c8b1b6f13c15d5d43bf0ed5713008955c39f29191e2890b97cbed568ea473c1ff41277006735d08ea2d0c410d8ed73457c367dc7fc26a64a7c5824028 SHA512 f1a8b2a59de39c586b1df3370750e9c2daf8cad753120e63edfcecd09471d146896007e7fa7b478c7fcdd908d9929a0dd693f30d323302a942736cf2c28028fd MISC metadata.xml 2457 BLAKE2B c1dcbaedd069b41c4cfb190806b44014229d53cf6d6f72e04b99dc91f223567cb4f30100792aae72658780da0579fa26e6fb8a0266565bcc0c307996d59ac3ed SHA512 9044abccd15525c7676fc218b62d9b663bd155482894eced9c0cfc8a22e8cd7353009adc75a9f3de15b14f267e6ee6b4f4c91d8bd9260931c0b9de6bf48c762f diff --git a/mail-mta/exim/exim-4.94-r1.ebuild b/mail-mta/exim/exim-4.94-r1.ebuild new file mode 100644 index 000000000000..52358f32bef5 --- /dev/null +++ b/mail-mta/exim/exim-4.94-r1.ebuild @@ -0,0 +1,592 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" + +inherit db-use toolchain-funcs multilib pam systemd + +IUSE="arc +dane dcc +dkim dlfunc dmarc +dnsdb doc dovecot-sasl dsn elibc_glibc exiscan-acl gnutls idn ipv6 ldap libressl lmtp maildir mbx mysql nis pam perl pkcs11 postgres +prdr proxy radius redis sasl selinux spf sqlite srs +ssl syslog tcpd +tpda X" +REQUIRED_USE=" + arc? ( dkim spf ) + dane? ( ssl !gnutls ) + dmarc? ( dkim spf ) + dkim? ( ssl !gnutls ) + gnutls? ( ssl ) + pkcs11? ( ssl ) + spf? ( exiscan-acl ) + srs? ( exiscan-acl ) +" +# NOTE on USE="gnutls dane", gnutls[dane] is masked in base, unmasked +# for x86 and amd64 only, due to this, repoman won't allow depending on +# gnutls[dane] for all else. Because we cannot express USE=dane when +# USE=gnutls is in effect only in package.use.mask, the only option we +# have left is to a) ignore the dependency (but that results in bug +# #661164) or b) mask the usage of USE=dane with USE=gnutls. Both are +# incorrect, but b) is the only "correct" view from repoman. + +SDIR=$([[ ${PV} == *_rc* ]] && echo /test + [[ ${PV} == *.*.*.* ]] && echo /fixes) +COMM_URI="https://downloads.exim.org/exim4${SDIR}" + +DESCRIPTION="A highly configurable, drop-in replacement for sendmail" +SRC_URI="${COMM_URI}/${P//_rc/-RC}.tar.xz + mirror://gentoo/system_filter.exim.gz + doc? ( ${COMM_URI}/${PN}-pdf-${PV//_rc/-RC}.tar.xz )" +HOMEPAGE="https://www.exim.org/" + +SLOT="0" +LICENSE="GPL-2" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-solaris" + +COMMON_DEPEND=">=sys-apps/sed-4.0.5 + ( >=sys-libs/db-3.2:= =net-nds/openldap-2.0.7 ) + nis? ( + elibc_glibc? ( + net-libs/libtirpc + >=net-libs/libnsl-1:= + ) + ) + mysql? ( dev-db/mysql-connector-c:= ) + postgres? ( dev-db/postgresql:= ) + sasl? ( >=dev-libs/cyrus-sasl-2.1.26-r2 ) + redis? ( dev-libs/hiredis ) + spf? ( >=mail-filter/libspf2-1.2.5-r1 ) + dmarc? ( mail-filter/opendmarc ) + srs? ( mail-filter/libsrs_alt ) + X? ( + x11-libs/libX11 + x11-libs/libXmu + x11-libs/libXt + x11-libs/libXaw + ) + sqlite? ( dev-db/sqlite ) + radius? ( net-dialup/freeradius-client ) + virtual/libiconv + elibc_glibc? ( net-libs/libnsl ) + " + # added X check for #57206 +BDEPEND="virtual/pkgconfig" +DEPEND="${COMMON_DEPEND}" +RDEPEND="${COMMON_DEPEND} + !mail-mta/courier + !mail-mta/esmtp + !mail-mta/mini-qmail + !=mail-mta/msmtp-1.4.19-r1[mta] + !mail-mta/netqmail + !mail-mta/nullmailer + !mail-mta/postfix + !mail-mta/qmail-ldap + !mail-mta/sendmail + !mail-mta/opensmtpd + !=mail-mta/ssmtp-2.64-r2[mta] + !net-mail/mailwrapper + >=net-mail/mailbase-0.00-r5 + virtual/logger + dcc? ( mail-filter/dcc ) + selinux? ( sec-policy/selinux-exim ) + " + +S=${WORKDIR}/${P//_rc/-RC} + +src_prepare() { + # Legacy patches which need a respin for -p1 + eapply -p0 "${FILESDIR}"/exim-4.14-tail.patch + eapply -p0 "${FILESDIR}"/exim-4.74-radius-db-ENV-clash.patch # 287426 + eapply "${FILESDIR}"/exim-4.93-as-needed-ldflags.patch # 352265, 391279 + eapply -p0 "${FILESDIR}"/exim-4.76-crosscompile.patch # 266591 + eapply "${FILESDIR}"/exim-4.69-r1.27021.patch + eapply "${FILESDIR}"/exim-4.94-localscan_dlopen.patch + eapply -p2 "${FILESDIR}"/exim-4.94-taint-pam-expansion.patch # drop on NR + + if use maildir ; then + eapply "${FILESDIR}"/exim-4.94-maildir.patch + else + eapply -p0 "${FILESDIR}"/exim-4.80-spool-mail-group.patch # 438606 + fi + + eapply_user + + # user Exim believes it should be + MAILUSER=mail + MAILGROUP=mail + if use prefix && [[ ${EUID} != 0 ]] ; then + MAILUSER=$(id -un) + MAILGROUP=$(id -gn) + fi +} + +src_configure() { + # general config and paths + + local aliases="${EPREFIX}/etc/mail/aliases" + sed -i \ + -e "/SYSTEM_ALIASES_FILE/s'SYSTEM_ALIASES_FILE'${aliases}'" \ + src/configure.default || die + + sed -i -e 's/^buildname=.*/buildname=exim-gentoo/' Makefile || die + + if use elibc_musl; then + sed -i -e 's/^LIBS = -lnsl/LIBS =/g' OS/Makefile-Linux || die + fi + + local conffile="${EPREFIX}/etc/exim/exim.conf" + sed -e "48i\CFLAGS=${CFLAGS}" \ + -e "s:BIN_DIRECTORY=/usr/exim/bin:BIN_DIRECTORY=${EPREFIX}/usr/sbin:" \ + -e "s;EXIM_USER=;EXIM_USER=ref:${MAILUSER};" \ + -e "s:CONFIGURE_FILE=.*$:CONFIGURE_FILE=${conffile}:" \ + -e "s:ZCAT_COMMAND=.*$:ZCAT_COMMAND=${EPREFIX}/bin/zcat:" \ + -e "s:COMPRESS_COMMAND=.*$:COMPRESS_COMMAND=${EPREFIX}/bin/gzip:" \ + src/EDITME > Local/Makefile || die + + # work on Local/Makefile from now on + cd Local + + cat >> Makefile <<- EOC + INFO_DIRECTORY=${EPREFIX}/usr/share/info + PID_FILE_PATH=${EPREFIX}/run/exim.pid + SPOOL_DIRECTORY=${EPREFIX}/var/spool/exim + HAVE_ICONV=yes + EOC + + # if we use libiconv, now is the time to tell so + if use !elibc_glibc && use !elibc_musl ; then + cat >> Makefile <<- EOC + EXTRALIBS_EXIM=-liconv + EOC + fi + + # support for IPv6 + if use ipv6; then + cat >> Makefile <<- EOC + HAVE_IPV6=YES + EOC + fi + + # support i18n/IDNA + if use idn; then + cat >> Makefile <<- EOC + SUPPORT_I18N=yes + SUPPORT_I18N_2008=yes + EXTRALIBS_EXIM += -lidn -lidn2 + EOC + fi + + # + # mail storage formats + # + + # mailstore is Exim's traditional storage format + cat >> Makefile <<- EOC + SUPPORT_MAILSTORE=yes + EOC + + # mbox + if use mbx; then + cat >> Makefile <<- EOC + SUPPORT_MBX=yes + EOC + fi + + # maildir + if use maildir; then + cat >> Makefile <<- EOC + SUPPORT_MAILDIR=yes + EOC + fi + + # + # lookup methods + + # use the "native" interfaces to the DBM and CDB libraries, support + # passwd and directory lookups by default + local DB_VERS="5.3 5.1 4.8 4.7 4.6 4.5 4.4 4.3 4.2 3.2" + cat >> Makefile <<- EOC + USE_DB=yes + LOOKUP_CDB=yes + LOOKUP_PASSWD=yes + LOOKUP_DSEARCH=yes + # keep include in CFLAGS because exim.h -> dbstuff.h -> db.h + CFLAGS += -I$(db_includedir ${DB_VERS}) + DBMLIB = -l$(db_libname ${DB_VERS}) + EOC + + if ! use dnsdb; then + # DNSDB lookup is enabled by default + sed -i -e 's:^LOOKUP_DNSDB=yes:# LOOKUP_DNSDB=yes:' Makefile || die + fi + + if use ldap; then + cat >> Makefile <<- EOC + LOOKUP_LDAP=yes + LDAP_LIB_TYPE=OPENLDAP2 + LOOKUP_INCLUDE += -I"${EPREFIX}"/usr/include/ldap + LOOKUP_LIBS += -lldap -llber + EOC + fi + + if use mysql; then + cat >> Makefile <<- EOC + LOOKUP_MYSQL=yes + LOOKUP_INCLUDE += $(mysql_config --include) + LOOKUP_LIBS += $(mysql_config --libs) + EOC + fi + + if use nis; then + cat >> Makefile <<- EOC + LOOKUP_NIS=yes + LOOKUP_NISPLUS=yes + EOC + if use elibc_glibc ; then + cat >> Makefile <<- EOC + LOOKUP_INCLUDE += -I"${EPREFIX}"/usr/include/tirpc + LOOKUP_LIBS += -lnsl + EOC + fi + fi + + if use postgres; then + cat >> Makefile <<- EOC + LOOKUP_PGSQL=yes + LOOKUP_INCLUDE += -I$(pg_config --includedir) + LOOKUP_LIBS += -L$(pg_config --libdir) -lpq + EOC + fi + + if use sqlite; then + cat >> Makefile <<- EOC + LOOKUP_SQLITE=yes + LOOKUP_SQLITE_PC=sqlite3 + EOC + fi + + if use redis; then + cat >> Makefile <<- EOC + LOOKUP_REDIS=yes + LOOKUP_LIBS += -lhiredis + EOC + fi + + # Exim monitor, enabled by default, controlled via X USE-flag, + # disable if not requested, bug #46778 + if use X; then + cp ../exim_monitor/EDITME eximon.conf || die + cat >> Makefile <<- EOC + EXIM_MONITOR=eximon.bin + EOC + fi + + # + # features + # + + # content scanning support + if use exiscan-acl; then + cat >> Makefile <<- EOC + WITH_CONTENT_SCAN=yes + EOC + fi + + # DomainKeys Identified Mail, RFC4871 + if ! use dkim; then + # DKIM is enabled by default + cat >> Makefile <<- EOC + DISABLE_DKIM=yes + EOC + fi + + # Per-Recipient-Data-Response + if ! use prdr; then + # PRDR is enabled by default + cat >> Makefile <<- EOC + DISABLE_PRDR=yes + EOC + fi + + # Transport post-delivery actions + if use !tpda && use !dane; then + # EVENT is enabled by default + cat >> Makefile <<- EOC + DISABLE_EVENT=yes + EOC + fi + + # log to syslog + if use syslog; then + local eximlog="${EPREFIX}/var/log/exim/exim_%s.log" + sed -i \ + -e "s:LOG_FILE_PATH=${eximlog}:LOG_FILE_PATH=syslog:" \ + Makefile || die + cat >> Makefile <<- EOC + LOG_FILE_PATH=syslog + EOC + else + cat >> Makefile <<- EOC + LOG_FILE_PATH=${EPREFIX}/var/log/exim/exim_%s.log + EOC + fi + + # starttls support (ssl) + if use ssl; then + if use gnutls; then + echo "USE_GNUTLS=yes" >> Makefile + echo "USE_GNUTLS_PC=gnutls $(use dane && echo gnutls-dane)" \ + >> Makefile + use pkcs11 || echo "AVOID_GNUTLS_PKCS11=yes" >> Makefile + else + echo "USE_OPENSSL=yes" >> Makefile + echo "USE_OPENSSL_PC=openssl" >> Makefile + fi + else + echo "DISABLE_TLS=yes" >> Makefile + fi + + # TCP wrappers + if use tcpd; then + cat >> Makefile <<- EOC + USE_TCP_WRAPPERS=yes + EXTRALIBS_EXIM += -lwrap + EOC + fi + + # Light Mail Transport Protocol + if use lmtp; then + cat >> Makefile <<- EOC + TRANSPORT_LMTP=yes + EOC + fi + + # embedded Perl + if use perl; then + cat >> Makefile <<- EOC + EXIM_PERL=perl.o + EOC + fi + + # dlfunc + if use dlfunc; then + cat >> Makefile <<- EOC + EXPAND_DLFUNC=yes + HAVE_LOCAL_SCAN=yes + DLOPEN_LOCAL_SCAN=yes + EOC + fi + + # Proxy Protocol + if use proxy; then + cat >> Makefile <<- EOC + SUPPORT_PROXY=yes + EOC + fi + + # DANE + if use !dane; then + # DANE is enabled by default + sed -i -e 's:^SUPPORT_DANE=yes:# SUPPORT_DANE=yes:' Makefile || die + fi + + # DMARC + if use dmarc; then + cat >> Makefile <<- EOC + SUPPORT_DMARC=yes + EXTRALIBS_EXIM += -lopendmarc + EOC + fi + + # Sender Policy Framework + if use spf; then + cat >> Makefile <<- EOC + SUPPORT_SPF=yes + EXTRALIBS_EXIM += -lspf2 + EOC + fi + + # + # experimental features + # + + # Authenticated Receive Chain + if use arc; then + echo "EXPERIMENTAL_ARC=yes">> Makefile + fi + + # Distributed Checksum Clearinghouse + if use dcc; then + echo "EXPERIMENTAL_DCC=yes">> Makefile + fi + + # Sender Rewriting Scheme + if use srs; then + cat >> Makefile <<- EOC + EXPERIMENTAL_SRS=yes + EXTRALIBS_EXIM += -lsrs_alt + EOC + fi + + # Delivery Sender Notifications extra information in fail message + if use dsn; then + cat >> Makefile <<- EOC + EXPERIMENTAL_DSN_INFO=yes + EOC + fi + + # + # authentication (SMTP AUTH) + # + + # standard bits + cat >> Makefile <<- EOC + AUTH_SPA=yes + AUTH_CRAM_MD5=yes + AUTH_PLAINTEXT=yes + EOC + + # Cyrus SASL + if use sasl; then + cat >> Makefile <<- EOC + CYRUS_SASLAUTHD_SOCKET=${EPREFIX}/run/saslauthd/mux + AUTH_CYRUS_SASL=yes + AUTH_LIBS += -lsasl2 + EOC + fi + + # Dovecot + if use dovecot-sasl; then + cat >> Makefile <<- EOC + AUTH_DOVECOT=yes + EOC + fi + + # Pluggable Authentication Modules + if use pam; then + cat >> Makefile <<- EOC + SUPPORT_PAM=yes + AUTH_LIBS += -lpam + EOC + fi + + # Radius + if use radius; then + cat >> Makefile <<- EOC + RADIUS_CONFIG_FILE=${EPREFIX}/etc/radiusclient/radiusclient.conf + RADIUS_LIB_TYPE=RADIUSCLIENTNEW + AUTH_LIBS += -lfreeradius-client + EOC + fi +} + +src_compile() { + emake CC="$(tc-getCC)" HOSTCC="$(tc-getBUILD_CC)" \ + AR="$(tc-getAR) cq" RANLIB="$(tc-getRANLIB)" FULLECHO='' +} + +src_install() { + cd "${S}"/build-exim-gentoo || die + dosbin exim + if use X; then + dosbin eximon.bin + dosbin eximon + fi + fperms 4755 /usr/sbin/exim + + dosym exim /usr/sbin/sendmail + dosym exim /usr/sbin/rsmtp + dosym exim /usr/sbin/rmail + dosym ../sbin/exim /usr/bin/mailq + dosym ../sbin/exim /usr/bin/newaliases + dosym ../sbin/sendmail /usr/lib/sendmail + + for i in exicyclog exim_dbmbuild exim_dumpdb exim_fixdb exim_lock \ + exim_tidydb exinext exiwhat exigrep eximstats exiqsumm exiqgrep \ + convert4r3 convert4r4 exipick + do + dosbin $i + done + + dodoc -r "${S}"/doc/. + doman "${S}"/doc/exim.8 + use dsn && dodoc "${S}"/README.DSN + use doc && dodoc "${WORKDIR}"/${PN}-pdf-${PV//rc/RC}/doc/*.pdf + + # conf files + insinto /etc/exim + newins "${S}"/src/configure.default exim.conf.dist + if use exiscan-acl; then + newins "${S}"/src/configure.default exim.conf.exiscan-acl + fi + doins "${WORKDIR}"/system_filter.exim + doins "${FILESDIR}"/auth_conf.sub + + pamd_mimic system-auth exim auth account + + # headers, #436406 + if use dlfunc ; then + # fixup includes so they actually can be found when including + sed -i \ + -e '/#include "\(config\|store\|mytypes\).h"/s:"\(.\+\)"::' \ + local_scan.h || die + insinto /usr/include/exim + doins {config,local_scan}.h ../src/{mytypes,store}.h + fi + + insinto /etc/logrotate.d + newins "${FILESDIR}/exim.logrotate" exim + + newinitd "${FILESDIR}"/exim.rc10 exim + newconfd "${FILESDIR}"/exim.confd exim + + systemd_dounit \ + "${FILESDIR}"/{exim.service,exim.socket,exim-submission.socket} + systemd_newunit \ + "${FILESDIR}"/exim_at.service 'exim@.service' + systemd_newunit \ + "${FILESDIR}"/exim-submission_at.service 'exim-submission@.service' + + diropts -m 0750 -o ${MAILUSER} -g ${MAILGROUP} + keepdir /var/log/${PN} +} + +pkg_postinst() { + if [[ ! -f ${EROOT}/etc/exim/exim.conf ]] ; then + einfo "${EROOT}/etc/exim/system_filter.exim is a sample system_filter." + einfo "${EROOT}/etc/exim/auth_conf.sub contains the configuration sub" + einfo "for using smtp auth." + einfo "Please create ${EROOT}/etc/exim/exim.conf from" + einfo " ${EROOT}/etc/exim/exim.conf.dist." + fi + if use dmarc ; then + einfo "DMARC support requires ${EROOT}/etc/exim/opendmarc.tlds" + einfo "you can populate this file with the contents downloaded from" + einfo " https://publicsuffix.org/list/public_suffix_list.dat" + fi + if use dcc ; then + einfo "DCC support is experimental, you can find some limited" + einfo "documentation at the bottom of this prerelease message:" + einfo " http://article.gmane.org/gmane.mail.exim.devel/3579" + fi + use srs && einfo "SRS support is experimental" + use dsn && einfo "extra information in fail DSN message is experimental" + elog "The obsolete acl condition 'demime' is removed, the replacements" + elog "are the ACLs acl_smtp_mime and acl_not_smtp_mime" + einfo + elog "Note that \$local_part is renamed to \$local_part_data, please" + elog "update your affected sections, such as local_delivery transport" +} diff --git a/mail-mta/exim/files/exim-4.94-localscan_dlopen.patch b/mail-mta/exim/files/exim-4.94-localscan_dlopen.patch new file mode 100644 index 000000000000..68ff48ac2a33 --- /dev/null +++ b/mail-mta/exim/files/exim-4.94-localscan_dlopen.patch @@ -0,0 +1,269 @@ +diff -ur exim-4.92.orig/src/config.h.defaults exim-4.92/src/config.h.defaults +--- exim-4.92.orig/src/config.h.defaults 2019-01-30 14:59:52.000000000 +0100 ++++ exim-4.92/src/config.h.defaults 2019-02-16 18:17:24.547216157 +0100 +@@ -32,6 +32,8 @@ + + #define AUTH_VARS 3 + ++#define DLOPEN_LOCAL_SCAN ++ + #define BIN_DIRECTORY + + #define CONFIGURE_FILE +Only in exim-4.92/src: config.h.defaults.orig +diff -ur exim-4.92.orig/src/EDITME exim-4.92/src/EDITME +--- exim-4.92.orig/src/EDITME 2019-01-30 14:59:52.000000000 +0100 ++++ exim-4.92/src/EDITME 2019-02-16 18:17:24.547216157 +0100 +@@ -824,6 +824,24 @@ + + + #------------------------------------------------------------------------------ ++# On systems which support dynamic loading of shared libraries, Exim can ++# load a local_scan function specified in its config file instead of having ++# to be recompiled with the desired local_scan function. For a full ++# description of the API to this function, see the Exim specification. ++ ++#DLOPEN_LOCAL_SCAN=yes ++ ++# If you set DLOPEN_LOCAL_SCAN, then you need to include -rdynamic in the ++# linker flags. Without it, the loaded .so won't be able to access any ++# functions from exim. ++ ++LFLAGS = -rdynamic ++ifeq ($(OSTYPE),Linux) ++LFLAGS += -ldl ++endif ++ ++ ++#------------------------------------------------------------------------------ + # The default distribution of Exim contains only the plain text form of the + # documentation. Other forms are available separately. If you want to install + # the documentation in "info" format, first fetch the Texinfo documentation +Only in exim-4.92/src: EDITME.orig +diff -ur exim-4.92.orig/src/globals.c exim-4.92/src/globals.c +--- exim-4.92.orig/src/globals.c 2019-01-30 14:59:52.000000000 +0100 ++++ exim-4.92/src/globals.c 2019-02-16 18:17:24.549216150 +0100 +@@ -41,6 +41,10 @@ + + uschar *no_aliases = NULL; + ++#ifdef DLOPEN_LOCAL_SCAN ++uschar *local_scan_path = NULL; ++#endif ++ + + /* For comments on these variables, see globals.h. I'm too idle to + duplicate them here... */ +Only in exim-4.92/src: globals.c.orig +diff -ur exim-4.92.orig/src/globals.h exim-4.92/src/globals.h +--- exim-4.92.orig/src/globals.h 2019-01-30 14:59:52.000000000 +0100 ++++ exim-4.92/src/globals.h 2019-02-16 18:17:24.549216150 +0100 +@@ -152,6 +152,9 @@ + extern int (*receive_ferror)(void); + extern BOOL (*receive_smtp_buffered)(void); + ++#ifdef DLOPEN_LOCAL_SCAN ++extern uschar *local_scan_path; /* Path to local_scan() library */ ++#endif + + /* For clearing, saving, restoring address expansion variables. We have to have + the size of this vector set explicitly, because it is referenced from more than +Only in exim-4.92/src: globals.h.orig +diff -ur exim-4.92.orig/src/local_scan.c exim-4.92/src/local_scan.c +--- exim-4.92.orig/src/local_scan.c 2019-01-30 14:59:52.000000000 +0100 ++++ exim-4.92/src/local_scan.c 2019-02-16 18:29:56.832732592 +0100 +@@ -5,61 +5,133 @@ + /* Copyright (c) University of Cambridge 1995 - 2009 */ + /* See the file NOTICE for conditions of use and distribution. */ + ++#include "local_scan.h" + +-/****************************************************************************** +-This file contains a template local_scan() function that just returns ACCEPT. +-If you want to implement your own version, you should copy this file to, say +-Local/local_scan.c, and edit the copy. To use your version instead of the +-default, you must set +- +-HAVE_LOCAL_SCAN=yes +-LOCAL_SCAN_SOURCE=Local/local_scan.c +- +-in your Local/Makefile. This makes it easy to copy your version for use with +-subsequent Exim releases. +- +-For a full description of the API to this function, see the Exim specification. +-******************************************************************************/ +- +- +-/* This is the only Exim header that you should include. The effect of +-including any other Exim header is not defined, and may change from release to +-release. Use only the documented interface! */ +- +-#include "local_scan.h" +- +- +-/* This is a "do-nothing" version of a local_scan() function. The arguments +-are: +- +- fd The file descriptor of the open -D file, which contains the +- body of the message. The file is open for reading and +- writing, but modifying it is dangerous and not recommended. +- +- return_text A pointer to an unsigned char* variable which you can set in +- order to return a text string. It is initialized to NULL. +- +-The return values of this function are: +- +- LOCAL_SCAN_ACCEPT +- The message is to be accepted. The return_text argument is +- saved in $local_scan_data. +- +- LOCAL_SCAN_REJECT +- The message is to be rejected. The returned text is used +- in the rejection message. +- +- LOCAL_SCAN_TEMPREJECT +- This specifies a temporary rejection. The returned text +- is used in the rejection message. +-*/ ++#ifdef DLOPEN_LOCAL_SCAN ++#include ++#include ++static int (*local_scan_fn)(int fd, uschar **return_text) = NULL; ++static int load_local_scan_library(void); ++extern uschar *local_scan_path; /* Path to local_scan() library */ ++#endif + + int + local_scan(int fd, uschar **return_text) + { + fd = fd; /* Keep picky compilers happy */ + return_text = return_text; +-return LOCAL_SCAN_ACCEPT; ++#ifdef DLOPEN_LOCAL_SCAN ++/* local_scan_path is defined AND not the empty string */ ++if (local_scan_path && *local_scan_path) ++ { ++ if (!local_scan_fn) ++ { ++ if (!load_local_scan_library()) ++ { ++ char *base_msg , *error_msg , *final_msg ; ++ int final_length = -1 ; ++ ++ base_msg=US"Local configuration error - local_scan() library failure\n"; ++ error_msg = dlerror() ; ++ ++ final_length = strlen(base_msg) + strlen(error_msg) + 1 ; ++ final_msg = (char*)malloc( final_length*sizeof(char) ) ; ++ *final_msg = '\0' ; ++ ++ strcat( final_msg , base_msg ) ; ++ strcat( final_msg , error_msg ) ; ++ ++ *return_text = final_msg ; ++ return LOCAL_SCAN_TEMPREJECT; ++ } ++ } ++ return local_scan_fn(fd, return_text); ++ } ++else ++#endif ++ return LOCAL_SCAN_ACCEPT; ++} ++ ++#ifdef DLOPEN_LOCAL_SCAN ++ ++static int load_local_scan_library(void) ++{ ++/* No point in keeping local_scan_lib since we'll never dlclose() anyway */ ++void *local_scan_lib = NULL; ++int (*local_scan_version_fn)(void); ++int vers_maj; ++int vers_min; ++ ++local_scan_lib = dlopen(local_scan_path, RTLD_NOW); ++if (!local_scan_lib) ++ { ++ log_write(0, LOG_MAIN|LOG_REJECT, "local_scan() library open failed - " ++ "message temporarily rejected"); ++ return FALSE; ++ } ++ ++local_scan_version_fn = dlsym(local_scan_lib, "local_scan_version_major"); ++if (!local_scan_version_fn) ++ { ++ dlclose(local_scan_lib); ++ log_write(0, LOG_MAIN|LOG_REJECT, "local_scan() library doesn't contain " ++ "local_scan_version_major() function - message temporarily rejected"); ++ return FALSE; ++ } ++ ++/* The major number is increased when the ABI is changed in a non ++ backward compatible way. */ ++vers_maj = local_scan_version_fn(); ++ ++local_scan_version_fn = dlsym(local_scan_lib, "local_scan_version_minor"); ++if (!local_scan_version_fn) ++ { ++ dlclose(local_scan_lib); ++ log_write(0, LOG_MAIN|LOG_REJECT, "local_scan() library doesn't contain " ++ "local_scan_version_minor() function - message temporarily rejected"); ++ return FALSE; ++ } ++ ++/* The minor number is increased each time a new feature is added (in a ++ way that doesn't break backward compatibility) -- Marc */ ++vers_min = local_scan_version_fn(); ++ ++ ++if (vers_maj != LOCAL_SCAN_ABI_VERSION_MAJOR) ++ { ++ dlclose(local_scan_lib); ++ local_scan_lib = NULL; ++ log_write(0, LOG_MAIN|LOG_REJECT, "local_scan() has an incompatible major" ++ "version number, you need to recompile your module for this version" ++ "of exim (The module was compiled for version %d.%d and this exim provides" ++ "ABI version %d.%d)", vers_maj, vers_min, LOCAL_SCAN_ABI_VERSION_MAJOR, ++ LOCAL_SCAN_ABI_VERSION_MINOR); ++ return FALSE; ++ } ++else if (vers_min > LOCAL_SCAN_ABI_VERSION_MINOR) ++ { ++ dlclose(local_scan_lib); ++ local_scan_lib = NULL; ++ log_write(0, LOG_MAIN|LOG_REJECT, "local_scan() has an incompatible minor" ++ "version number, you need to recompile your module for this version" ++ "of exim (The module was compiled for version %d.%d and this exim provides" ++ "ABI version %d.%d)", vers_maj, vers_min, LOCAL_SCAN_ABI_VERSION_MAJOR, ++ LOCAL_SCAN_ABI_VERSION_MINOR); ++ return FALSE; ++ } ++ ++local_scan_fn = dlsym(local_scan_lib, "local_scan"); ++if (!local_scan_fn) ++ { ++ dlclose(local_scan_lib); ++ log_write(0, LOG_MAIN|LOG_REJECT, "local_scan() library doesn't contain " ++ "local_scan() function - message temporarily rejected"); ++ return FALSE; ++ } ++ ++return TRUE; + } + ++#endif /* DLOPEN_LOCAL_SCAN */ ++ + /* End of local_scan.c */ +diff -ur exim-4.92.orig/src/readconf.c exim-4.92/src/readconf.c +--- exim-4.92.orig/src/readconf.c 2019-01-30 14:59:52.000000000 +0100 ++++ exim-4.92/src/readconf.c 2019-02-16 18:18:46.013947455 +0100 +@@ -205,6 +205,9 @@ + { "local_from_prefix", opt_stringptr, {&local_from_prefix} }, + { "local_from_suffix", opt_stringptr, {&local_from_suffix} }, + { "local_interfaces", opt_stringptr, {&local_interfaces} }, ++#ifdef DLOPEN_LOCAL_SCAN ++ { "local_scan_path", opt_stringptr, {&local_scan_path} }, ++#endif + #ifdef HAVE_LOCAL_SCAN + { "local_scan_timeout", opt_time, {&local_scan_timeout} }, + #endif diff --git a/mail-mta/exim/files/exim-4.94-maildir.patch b/mail-mta/exim/files/exim-4.94-maildir.patch new file mode 100644 index 000000000000..a1a728158ac7 --- /dev/null +++ b/mail-mta/exim/files/exim-4.94-maildir.patch @@ -0,0 +1,13 @@ +--- a/src/configure.default ++++ b/src/configure.default +@@ -873,7 +873,9 @@ + + local_delivery: + driver = appendfile +- file = /var/mail/$local_part_data ++# file = /var/mail/$local_part_data ++ directory = /home/$local_part_data/.maildir ++ maildir_format + delivery_date_add + envelope_to_add + return_path_add diff --git a/mail-mta/exim/files/exim-4.94-taint-pam-expansion.patch b/mail-mta/exim/files/exim-4.94-taint-pam-expansion.patch new file mode 100644 index 000000000000..81863d340edb --- /dev/null +++ b/mail-mta/exim/files/exim-4.94-taint-pam-expansion.patch @@ -0,0 +1,35 @@ +From f7f933a199be8bb7362c715e0040545b514cddca Mon Sep 17 00:00:00 2001 +From: Jeremy Harris +Date: Tue, 2 Jun 2020 14:50:31 +0100 +Subject: [PATCH] Taint: fix pam expansion condition. Bug 2587 + +--- + doc/doc-txt/ChangeLog | 5 +++++ + src/src/auths/call_pam.c | 5 ++--- + 2 files changed, 7 insertions(+), 3 deletions(-) + +modified for gentoo so the patch applies by dropping Changelog part + +diff --git a/src/src/auths/call_pam.c b/src/src/auths/call_pam.c +index 2959cbbf3..80bb23ec3 100644 +--- a/src/src/auths/call_pam.c ++++ b/src/src/auths/call_pam.c +@@ -83,8 +83,7 @@ for (int i = 0; i < num_msg; i++) + { + case PAM_PROMPT_ECHO_ON: + case PAM_PROMPT_ECHO_OFF: +- arg = string_nextinlist(&pam_args, &sep, big_buffer, big_buffer_size); +- if (!arg) ++ if (!(arg = string_nextinlist(&pam_args, &sep, NULL, 0))) + { + arg = US""; + pam_arg_ended = TRUE; +@@ -155,7 +154,7 @@ pam_arg_ended = FALSE; + fail. PAM doesn't support authentication with an empty user (it prompts for it, + causing a potential mis-interpretation). */ + +-user = string_nextinlist(&pam_args, &sep, big_buffer, big_buffer_size); ++user = string_nextinlist(&pam_args, &sep, NULL, 0); + if (user == NULL || user[0] == 0) return FAIL; + + /* Start off PAM interaction */ diff --git a/mail-mta/msmtp/Manifest b/mail-mta/msmtp/Manifest index bdafea22e261..00d411c39b17 100644 --- a/mail-mta/msmtp/Manifest +++ b/mail-mta/msmtp/Manifest @@ -1,9 +1,9 @@ AUX msmtpd.confd 518 BLAKE2B e537ca90e9c4debd53936b227352b73f5ca1e7114ba8daa3121f1979dfc3495996a820276292ec6da63ce79d8f42bafb45c74daacb6778e5b56656aa9688ecbd SHA512 e6f4f39da73aace9f5a4f8e080ca897f51265b8806836366121d61f5367596955eefca377c5fe9c4094f3a9ecbe04801cf38fcc6017c73a9e4b7a68fc9a81528 AUX msmtpd.init 347 BLAKE2B 9faea920dc23ebcdb62b05595acf4f70dd3d654645ed0f5ba6f76316762986c9951905f675c2e527c5e0b5eee2bcf53a14e018d8d64080b97e82da4e3abaa0b8 SHA512 e3080dc1fb7b72b6332ebcd4f807780dc04d32b8d3e5740b62f618d5d8f39f7c2a119604e26282e1d98c1365fff7920944401c399267461fab7ae2cdfdac44d7 DIST msmtp-1.8.10.tar.xz 355364 BLAKE2B b70143e28da8b64035448cbb61e133a5a1d35bc472316a3e164f2f168d67ef71455c583610afdfe522d33b77dea1a7ff55f9d6c200c6b1d9b3e2fcadb4fa10c1 SHA512 0d2280772ded3ed33036f7a9047c054f413e34f8264a82df26b85dc48000fa318d5400201ce0b888f3d821c629e25e17e5cf6b69b3e452b14e6883904b4ad83b +DIST msmtp-1.8.11.tar.xz 356492 BLAKE2B 0ee4b9ee859b21c35776c037fa93a3b104a86103a5543b0a0c035d3c3a285d7e6cf7eb38e56b172c4dcd6cc536274b6d6661297b2e160b1e9eed659fadfb5e17 SHA512 77595ca3d06781aa908677edae08bef92840e69dde5db8eedb555327b671d87cde441181fa17342f5b9492e76f0520a49bfa86dafce9d93844137ae7f96eac16 DIST msmtp-1.8.7.tar.xz 340908 BLAKE2B 5241acf54d5a6af6ccf2c3bfd33954a5235af2d2cb467e4134401538e60e1847489a7a599359e2d13202ea9637c32a67ec5180372b139e06f6d47f060cba6c8f SHA512 5a079cb90b48853ad812125e8b341f5bcd5f5ba4725d62c37210050896527b63f993aa6393f1d4107636153bf0ed84b0288e88a7e78a119c66b2d58f1e69a67d -DIST msmtp-1.8.8.tar.xz 349740 BLAKE2B 005056e2bfeb97ccf2c86670a172157b6ba43e44bf1738fa9d75e6ca8bb7d952f118155b17a80db61ee4f10bdd009a72c2a7adf26b01296409b8998ac698f1ef SHA512 e519e04b0065e410007f6e47df435b7c5bde99ca7a1a2e9ff7528848c68f9809691cdf2c5b793d4e3e17a650a25ee31be66b0be47410f83972f281cf76926771 EBUILD msmtp-1.8.10.ebuild 3323 BLAKE2B 2f7bd8c8ad6fd70c1de994853ab2d34a2443f61c6984867d8966dba842ee71722212599e05c24c3cbaa316790eafd7ccd1d101d9ad1d10f1f7e19ab966f00325 SHA512 d1ad9e0b259ad56eb6c19bd722cf18a048910d79b01b2d1d5688ccdfd919b36fd765d66477ebc968aedb211e0382d2e1072ef4f50b9e8071f0bf80d470be74fa +EBUILD msmtp-1.8.11.ebuild 3323 BLAKE2B 2f7bd8c8ad6fd70c1de994853ab2d34a2443f61c6984867d8966dba842ee71722212599e05c24c3cbaa316790eafd7ccd1d101d9ad1d10f1f7e19ab966f00325 SHA512 d1ad9e0b259ad56eb6c19bd722cf18a048910d79b01b2d1d5688ccdfd919b36fd765d66477ebc968aedb211e0382d2e1072ef4f50b9e8071f0bf80d470be74fa EBUILD msmtp-1.8.7-r1.ebuild 3318 BLAKE2B 4457fc5562fe18b025597a8d965204d6fec8c97b027857496cf441e0ef465e8d1217a8b2c0eb20fe319e7da9cedca51183a73b90dc4528a7fba090b41d46b0ec SHA512 f722e6f382f8620603183bfc12e7d4b9f855d1054a09686c5f42a0bba7d35a5dc28a03de93ea26e89ae65907ec8981dc07f839e41be33584875c5ba424b11ce9 -EBUILD msmtp-1.8.8.ebuild 3323 BLAKE2B 2f7bd8c8ad6fd70c1de994853ab2d34a2443f61c6984867d8966dba842ee71722212599e05c24c3cbaa316790eafd7ccd1d101d9ad1d10f1f7e19ab966f00325 SHA512 d1ad9e0b259ad56eb6c19bd722cf18a048910d79b01b2d1d5688ccdfd919b36fd765d66477ebc968aedb211e0382d2e1072ef4f50b9e8071f0bf80d470be74fa MISC metadata.xml 470 BLAKE2B 3ea3fcc232512a92126ff900dddf558c06194e473b172655c6960c165669c2323115a2ebf4472c5cbae57062d203b97aeac9b9d65fee5f8a0d6071416325f868 SHA512 c117c6d7f7f28d32dc411049d6a7f7bd70e1b70ff0030c85db2a2df86d1f82353230ca1713d2be7bb10e450d09e9a5749ab2e511b93b39dfe0091eeba41246c9 diff --git a/mail-mta/msmtp/msmtp-1.8.11.ebuild b/mail-mta/msmtp/msmtp-1.8.11.ebuild new file mode 100644 index 000000000000..9c112ec7abde --- /dev/null +++ b/mail-mta/msmtp/msmtp-1.8.11.ebuild @@ -0,0 +1,145 @@ +# Copyright 2004-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit fcaps multilib + +DESCRIPTION="An SMTP client and SMTP plugin for mail user agents such as Mutt" +HOMEPAGE="https://marlam.de/msmtp/" +SRC_URI="https://marlam.de/msmtp/releases/${P}.tar.xz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos" +IUSE="daemon doc gnome-keyring idn +mta nls sasl ssl vim-syntax" + +# fcaps.eclass unconditionally defines "filecaps" USE flag which we need for +# USE="daemon" in order to set the caps we need. +REQUIRED_USE="daemon? ( filecaps )" + +# Upstream discourages usage of openssl. See also +# https://marlam.de/msmtp/news/openssl-discouraged/ +DEPEND=" + gnome-keyring? ( app-crypt/libsecret ) + nls? ( virtual/libintl ) + sasl? ( virtual/gsasl ) + ssl? ( net-libs/gnutls[idn?] ) + !ssl? ( idn? ( net-dns/libidn2:= ) ) +" + +RDEPEND="${DEPEND} + net-mail/mailbase + daemon? ( + acct-group/msmtpd + acct-user/msmtpd + ) + mta? ( + !mail-mta/courier + !mail-mta/esmtp + !mail-mta/exim + !mail-mta/mini-qmail + !mail-mta/netqmail + !mail-mta/nullmailer + !mail-mta/postfix + !mail-mta/qmail-ldap + !mail-mta/sendmail + !mail-mta/opensmtpd + !=mail-mta/ssmtp-2.64-r2[mta] + ) +" + +BDEPEND=" + doc? ( virtual/texi2dvi ) + nls? ( sys-devel/gettext ) + virtual/pkgconfig +" + +DOCS="AUTHORS ChangeLog NEWS README THANKS doc/msmtprc*" + +src_prepare() { + # Use default Gentoo location for mail aliases + sed 's:/etc/aliases:/etc/mail/aliases:' \ + -i scripts/find_alias/find_alias_for_msmtp.sh || die + + default +} + +src_configure() { + local myeconfargs=( + --disable-gai-idn + $(use_enable nls) + $(use_with daemon msmtpd) + $(use_with gnome-keyring libsecret) + $(use_with idn libidn) + $(use_with sasl libgsasl) + $(use_with ssl tls gnutls) + ) + econf "${myeconfargs[@]}" +} + +src_compile() { + default + + if use doc ; then + cd doc || die + emake html pdf + fi +} + +src_install() { + default + + if use daemon ; then + fcaps CAP_NET_BIND_SERVICE usr/bin/msmtpd + newinitd "${FILESDIR}"/msmtpd.init msmtpd + newconfd "${FILESDIR}"/msmtpd.confd msmtpd + fi + + if use doc ; then + dodoc doc/msmtp.{html,pdf} + fi + + if use mta ; then + dosym ../bin/msmtp /usr/sbin/sendmail + dosym ../bin/msmtp /usr/$(get_libdir)/sendmail + fi + + if use vim-syntax ; then + insinto /usr/share/vim/vimfiles/syntax + doins scripts/vim/msmtp.vim + fi + + insinto /etc + newins doc/msmtprc-system.example msmtprc + + src_install_contrib find_alias find_alias_for_msmtp.sh + src_install_contrib msmtpqueue "*.sh" "README ChangeLog" + src_install_contrib msmtpq "msmtpq msmtp-queue" README.msmtpq + src_install_contrib set_sendmail set_sendmail.sh set_sendmail.conf +} + +pkg_postinst() { + if [[ -z ${REPLACING_VERSIONS} ]]; then + einfo "Please edit ${EROOT}/etc/msmtprc before first use." + einfo "In addition, per user configuration files can be placed" + einfo "as '~/.msmtprc'. See the msmtprc-user.example file under" + einfo "/usr/share/doc/${PF}/ for an example." + fi +} + +src_install_contrib() { + subdir="$1" + bins="$2" + docs="$3" + local dir=/usr/share/${PN}/${subdir} + insinto ${dir} + exeinto ${dir} + for i in ${bins} ; do + doexe scripts/${subdir}/${i} + done + for i in ${docs} ; do + newdoc scripts/${subdir}/${i} ${subdir}.${i} + done +} diff --git a/mail-mta/msmtp/msmtp-1.8.8.ebuild b/mail-mta/msmtp/msmtp-1.8.8.ebuild deleted file mode 100644 index 9c112ec7abde..000000000000 --- a/mail-mta/msmtp/msmtp-1.8.8.ebuild +++ /dev/null @@ -1,145 +0,0 @@ -# Copyright 2004-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit fcaps multilib - -DESCRIPTION="An SMTP client and SMTP plugin for mail user agents such as Mutt" -HOMEPAGE="https://marlam.de/msmtp/" -SRC_URI="https://marlam.de/msmtp/releases/${P}.tar.xz" - -LICENSE="GPL-3" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos" -IUSE="daemon doc gnome-keyring idn +mta nls sasl ssl vim-syntax" - -# fcaps.eclass unconditionally defines "filecaps" USE flag which we need for -# USE="daemon" in order to set the caps we need. -REQUIRED_USE="daemon? ( filecaps )" - -# Upstream discourages usage of openssl. See also -# https://marlam.de/msmtp/news/openssl-discouraged/ -DEPEND=" - gnome-keyring? ( app-crypt/libsecret ) - nls? ( virtual/libintl ) - sasl? ( virtual/gsasl ) - ssl? ( net-libs/gnutls[idn?] ) - !ssl? ( idn? ( net-dns/libidn2:= ) ) -" - -RDEPEND="${DEPEND} - net-mail/mailbase - daemon? ( - acct-group/msmtpd - acct-user/msmtpd - ) - mta? ( - !mail-mta/courier - !mail-mta/esmtp - !mail-mta/exim - !mail-mta/mini-qmail - !mail-mta/netqmail - !mail-mta/nullmailer - !mail-mta/postfix - !mail-mta/qmail-ldap - !mail-mta/sendmail - !mail-mta/opensmtpd - !=mail-mta/ssmtp-2.64-r2[mta] - ) -" - -BDEPEND=" - doc? ( virtual/texi2dvi ) - nls? ( sys-devel/gettext ) - virtual/pkgconfig -" - -DOCS="AUTHORS ChangeLog NEWS README THANKS doc/msmtprc*" - -src_prepare() { - # Use default Gentoo location for mail aliases - sed 's:/etc/aliases:/etc/mail/aliases:' \ - -i scripts/find_alias/find_alias_for_msmtp.sh || die - - default -} - -src_configure() { - local myeconfargs=( - --disable-gai-idn - $(use_enable nls) - $(use_with daemon msmtpd) - $(use_with gnome-keyring libsecret) - $(use_with idn libidn) - $(use_with sasl libgsasl) - $(use_with ssl tls gnutls) - ) - econf "${myeconfargs[@]}" -} - -src_compile() { - default - - if use doc ; then - cd doc || die - emake html pdf - fi -} - -src_install() { - default - - if use daemon ; then - fcaps CAP_NET_BIND_SERVICE usr/bin/msmtpd - newinitd "${FILESDIR}"/msmtpd.init msmtpd - newconfd "${FILESDIR}"/msmtpd.confd msmtpd - fi - - if use doc ; then - dodoc doc/msmtp.{html,pdf} - fi - - if use mta ; then - dosym ../bin/msmtp /usr/sbin/sendmail - dosym ../bin/msmtp /usr/$(get_libdir)/sendmail - fi - - if use vim-syntax ; then - insinto /usr/share/vim/vimfiles/syntax - doins scripts/vim/msmtp.vim - fi - - insinto /etc - newins doc/msmtprc-system.example msmtprc - - src_install_contrib find_alias find_alias_for_msmtp.sh - src_install_contrib msmtpqueue "*.sh" "README ChangeLog" - src_install_contrib msmtpq "msmtpq msmtp-queue" README.msmtpq - src_install_contrib set_sendmail set_sendmail.sh set_sendmail.conf -} - -pkg_postinst() { - if [[ -z ${REPLACING_VERSIONS} ]]; then - einfo "Please edit ${EROOT}/etc/msmtprc before first use." - einfo "In addition, per user configuration files can be placed" - einfo "as '~/.msmtprc'. See the msmtprc-user.example file under" - einfo "/usr/share/doc/${PF}/ for an example." - fi -} - -src_install_contrib() { - subdir="$1" - bins="$2" - docs="$3" - local dir=/usr/share/${PN}/${subdir} - insinto ${dir} - exeinto ${dir} - for i in ${bins} ; do - doexe scripts/${subdir}/${i} - done - for i in ${docs} ; do - newdoc scripts/${subdir}/${i} ${subdir}.${i} - done -} diff --git a/mail-mta/netqmail/Manifest b/mail-mta/netqmail/Manifest index f57b6812d1e5..3e575b88146b 100644 --- a/mail-mta/netqmail/Manifest +++ b/mail-mta/netqmail/Manifest @@ -17,6 +17,5 @@ DIST qmail-103.patch 2104 BLAKE2B 23721b3331c719f3b6deca8b2603bf824b66068d3901a8 DIST qmail-smtputf8.patch 6693 BLAKE2B 1b9cd78e63ab9f2f8ca9f49c49406f603efb31d323bb4423aaa8b970c2c26a7e76496a449a98501765dc1a5e6659d9bfd49a6dafbdba14db9a9594e1d1c9b94f SHA512 8cafdf1a4f1fd41e6b11ee2abddac5c3da4a1d2ab17b5d3847433875a91f867a26eb358ae8c41791f1e77758e5a2c311134a286d888ccd23fbede6d9f0b475c4 DIST qmail-spp-0.42.tar.gz 18689 BLAKE2B df67f10f6daf9601fd074c774c5be4decca59f3e790774d502c28ebd495f9d7523ecebfd37abd333e347151647364d08d3ccc25099c82748bf7b7ea84bb18977 SHA512 03449862886a0ca20fbadab4c94b34b55d185f8df3261bd68aea99e9ded9edfab4477c6b38a8e0295e9b38b0045615da8b1a906a458f28745eadd3c4d882bcbf DIST vu555316.patch 617 BLAKE2B fa98c360cb199fc4367c668d605399cc53ab2d26668f5ed6bbf0c26449fdf584f71fd415d80ba7babb6593dc842ec342aba4f7357ae838e6556d43f1dc76b6d9 SHA512 5d7810360e5eaa8e8ee141fe92c765d9458aa12198a8d0ac702e0630e08d060ad4a1d33690d434f20f5aff79eb200cd8173bebc334c411e340c0198b5d8d1a65 -EBUILD netqmail-1.06-r12.ebuild 4558 BLAKE2B 9adfc66473fb61f908cb90f881fa3f23341df3d2e734e997164c3d6151fc540db39efd6680c289c0f86e3d78ba1fdc49e8f6ba2ef325562ffbf177024af2d3fa SHA512 736fab292b62cd258357a612159485adf80681e1244aa9057d8eb7b8ec2069b5538654653f9ca5d4132139151dcb935c54a9e8395a8aa0517e2f92654ab0d4f5 -EBUILD netqmail-1.06-r13.ebuild 4716 BLAKE2B caa266393bebd340fe69c0db66340b5b58545da63d0118f6dabf247f0f8dd887b394fd1900b5e808499d410fc31ab9e24d602164f9c1b62450958c0e8032607c SHA512 99d405d30686b2fd603b2d93acac021057305aa369a536494232f2499901005b43dde2483de79024a7c4328d2e3a901e3f217699ec66b6edcaa40fa2df6e2c13 +EBUILD netqmail-1.06-r13.ebuild 4714 BLAKE2B 8178f44b4ed5d20febead83d867eb73ae5aba9543e3e8061b217806f952605a13747114b2352a13aaaf40bfb677314d4f47f0a20de11db5f7f76eeaffddbf127 SHA512 f87dea38d11d0f2f869bbd1531bee17951c6274bfb8c8eed138d69771e5faf4604773f6f42f67486e65b6da912087ed90c1b376711fc2cf0b388620ae2178a7f MISC metadata.xml 720 BLAKE2B 9bd0209a0db8075a22507fb63fa9f045959323da3b4c53e3d9da9d412fd39ff3576dc29c6d2af9db949e5fee4e98e166bbc41ce1d48ba0f8964e85fbe99728bb SHA512 57330a6fa33d3c65b0fe1289f89d356bebca6e7c8ba47cb5edfe53cd74938646ca60e3d001facab1fa5c4071fee7c3a8e0ad2ba2b4604aea3a8525c391991715 diff --git a/mail-mta/netqmail/netqmail-1.06-r12.ebuild b/mail-mta/netqmail/netqmail-1.06-r12.ebuild deleted file mode 100644 index 997d508db9fe..000000000000 --- a/mail-mta/netqmail/netqmail-1.06-r12.ebuild +++ /dev/null @@ -1,199 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -GENQMAIL_PV=20191010 -QMAIL_SPP_PV=0.42 - -QMAIL_TLS_PV=20190114 -QMAIL_TLS_F=${PN}-1.05-tls-smtpauth-${QMAIL_TLS_PV}.patch -QMAIL_TLS_CVE=vu555316.patch - -QMAIL_BIGTODO_PV=103 -QMAIL_BIGTODO_F=big-todo.${QMAIL_BIGTODO_PV}.patch - -QMAIL_LARGE_DNS='qmail-103.patch' - -QMAIL_SMTPUTF8='qmail-smtputf8.patch' - -inherit qmail - -DESCRIPTION="qmail -- a secure, reliable, efficient, simple message transfer agent" -HOMEPAGE=" - http://netqmail.org - https://cr.yp.to/qmail.html - http://qmail.org -" -SRC_URI="mirror://qmail/${P}.tar.gz - https://github.com/DerDakon/genqmail/releases/download/genqmail-${GENQMAIL_PV}/${GENQMAIL_F} - https://www.ckdhr.com/ckd/${QMAIL_LARGE_DNS} - !vanilla? ( - highvolume? ( mirror://qmail/${QMAIL_BIGTODO_F} ) - qmail-spp? ( mirror://sourceforge/qmail-spp/${QMAIL_SPP_F} ) - ssl? ( - https://mirror.alexh.name/qmail/netqmail/${QMAIL_TLS_F} - http://inoa.net/qmail-tls/${QMAIL_TLS_CVE} - https://arnt.gulbrandsen.priv.no/qmail/qmail-smtputf8.patch - ) - ) -" - -LICENSE="public-domain" -SLOT="0" -KEYWORDS="~alpha amd64 arm hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86" -IUSE="authcram gencertdaily highvolume libressl pop3 qmail-spp ssl vanilla" -REQUIRED_USE="vanilla? ( !ssl !qmail-spp !highvolume )" -RESTRICT="test" - -DEPEND=" - acct-group/nofiles - acct-group/qmail - acct-user/alias - acct-user/qmaild - acct-user/qmaill - acct-user/qmailp - acct-user/qmailq - acct-user/qmailr - acct-user/qmails - net-dns/libidn2 - net-mail/queue-repair - sys-apps/gentoo-functions - sys-apps/groff - ssl? ( - !libressl? ( >=dev-libs/openssl-1.1:0= ) - libressl? ( dev-libs/libressl:= ) - ) -" -RDEPEND="${DEPEND} - sys-apps/ucspi-tcp - virtual/checkpassword - virtual/daemontools - authcram? ( >=net-mail/cmd5checkpw-0.30 ) - ssl? ( - pop3? ( sys-apps/ucspi-ssl ) - ) - !mail-mta/courier - !mail-mta/esmtp - !mail-mta/exim - !mail-mta/mini-qmail - !mail-mta/msmtp[mta] - !mail-mta/nullmailer - !mail-mta/opensmtpd - !mail-mta/postfix - !mail-mta/qmail-ldap - !mail-mta/sendmail - !mail-mta/ssmtp[mta] -" - -pkg_setup() { - if [[ -n "${QMAIL_PATCH_DIR}" ]]; then - eerror - eerror "The QMAIL_PATCH_DIR variable for custom patches" - eerror "has been removed from ${PN}. If you need custom patches" - eerror "see 'user patches' in the portage manual." - eerror - die "QMAIL_PATCH_DIR is not supported anymore" - fi -} - -src_unpack() { - genqmail_src_unpack - use qmail-spp && qmail_spp_src_unpack - - unpack ${P}.tar.gz -} - -PATCHES=( - "${FILESDIR}/${PV}-exit.patch" - "${FILESDIR}/${PV}-readwrite.patch" - "${DISTDIR}/${QMAIL_LARGE_DNS}" - "${FILESDIR}/${PV}-fbsd-utmpx.patch" - "${FILESDIR}/${P}-ipme-multiple.patch" - "${FILESDIR}/${P}-any-to-cname.patch" -) - -src_prepare() { - if ! use vanilla; then - if use ssl; then - # This patch contains relative paths and needs to be cleaned up. - sed 's~^--- \.\./\.\./~--- ~g' \ - < "${DISTDIR}"/${QMAIL_TLS_F} \ - > "${T}"/${QMAIL_TLS_F} || die - PATCHES+=( "${T}/${QMAIL_TLS_F}" - "${DISTDIR}/${QMAIL_TLS_CVE}" - "${FILESDIR}/qmail-smtputf8.patch" - "${FILESDIR}/qmail-smtputf8-crlf-fix.patch" - ) - fi - if use highvolume; then - PATCHES+=( "${DISTDIR}/${QMAIL_BIGTODO_F}" ) - fi - - if use qmail-spp; then - if use ssl; then - SPP_PATCH="${QMAIL_SPP_S}/qmail-spp-smtpauth-tls-20060105.diff" - else - SPP_PATCH="${QMAIL_SPP_S}/netqmail-spp.diff" - fi - # make the patch work with "-p1" - sed -e 's#^--- \([Mq]\)#--- a/\1#' -e 's#^+++ \([Mq]\)#+++ b/\1#' -i ${SPP_PATCH} || die - - PATCHES+=( "${SPP_PATCH}" ) - fi - fi - - default - - qmail_src_postunpack - - # Fix bug #33818 but for netqmail (Bug 137015) - if ! use authcram; then - einfo "Disabled CRAM_MD5 support" - sed -e 's,^#define CRAM_MD5$,/*&*/,' -i "${S}"/qmail-smtpd.c || die - else - einfo "Enabled CRAM_MD5 support" - fi - - ht_fix_file Makefile* -} - -src_compile() { - qmail_src_compile - use qmail-spp && qmail_spp_src_compile -} - -src_install() { - qmail_src_install -} - -pkg_postinst() { - qmail_queue_setup - qmail_rootmail_fixup - qmail_tcprules_build - - qmail_config_notice - qmail_supervise_config_notice - elog - elog "If you are looking for documentation, check those links:" - elog "https://wiki.gentoo.org/wiki/Virtual_mail_hosting_with_qmail" - elog " -- qmail/vpopmail Virtual Mail Hosting System Guide" - elog "http://www.lifewithqmail.com/" - elog " -- Life with qmail" - elog -} - -pkg_preinst() { - qmail_tcprules_fixup -} - -pkg_config() { - # avoid some weird locale problems - export LC_ALL=C - - qmail_config_fast - qmail_tcprules_config - qmail_tcprules_build - - use ssl && qmail_ssl_generate -} diff --git a/mail-mta/netqmail/netqmail-1.06-r13.ebuild b/mail-mta/netqmail/netqmail-1.06-r13.ebuild index ae21c36a52c5..738fa4800d1f 100644 --- a/mail-mta/netqmail/netqmail-1.06-r13.ebuild +++ b/mail-mta/netqmail/netqmail-1.06-r13.ebuild @@ -41,7 +41,7 @@ SRC_URI="mirror://qmail/${P}.tar.gz LICENSE="public-domain" SLOT="0" -KEYWORDS="~alpha amd64 ~arm hppa ~ia64 ~mips ppc ppc64 ~s390 sparc ~x86" +KEYWORDS="~alpha amd64 arm hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86" IUSE="authcram gencertdaily highvolume libressl pop3 qmail-spp ssl vanilla" REQUIRED_USE="vanilla? ( !ssl !qmail-spp !highvolume )" RESTRICT="test" diff --git a/mail-mta/notqmail/Manifest b/mail-mta/notqmail/Manifest new file mode 100644 index 000000000000..546c6bc6bf91 --- /dev/null +++ b/mail-mta/notqmail/Manifest @@ -0,0 +1,10 @@ +DIST genqmail-20191010.tar.bz2 10063 BLAKE2B bd1b664fca9fdb92aba49930b1d0c336097f2bad56ea814014c0d811d9d96fb861925dd0b016ce4ef1edd0473481fa807e81be17b7169688bfbd72a72e287718 SHA512 8d19a25b8745a04f7bdb378259dcee7b43f62cf90e7a7d8f4843d39169f8221cd8c5b9c332b37e5ecc7917366093e56f34bc4362b8ab0dd1785a6d0f12687a4b +DIST notqmail-1.08-auth.patch 71183 BLAKE2B c980475ef7a2ad6e05d71f494293579e5082b63606fd0bbbd51fff5d067912b1548b4033f36de8030d60b195a684ff0845afe022d316ad835b1ad0b360cafbd6 SHA512 697b8b2a26a10c0029918193046dd2758bb3e84af97fb2e99f29bfb23efb0a9e0ee6ecca0431369e348d1414ef70bc5c446420b4f019ba427d16d0f07f23f6e3 +DIST notqmail-1.08-big-todo.patch 7179 BLAKE2B f7582d0193096f17316feb15e65c2b841545e274309351fc2921120ec3a4fb35b1998fbd8b8ca573c7dbd690ab7197f4b4f9105671f7d299687bf339b747deb2 SHA512 8444c8b4558410682d46e4954973721a1fb5e90585c9a3a4d7603448faf68cc0d07d2b5d51977ce72d35551b5c43b03014638251b542e48fe9cbef327cacc7c6 +DIST notqmail-1.08-tls-20200107.patch 50123 BLAKE2B 94bbab86bd089c6ac032bfabc300eb89b367c239ae7a60256c417a2abfa583984e6273eae6df22d44b98dcefce4904f6db9625ff2a57f4b30a8fff8c629d374b SHA512 bdccdf98024f811802504872b8e3f3ac3010c1f218a0ec79bb12e635c35bfa15471c2b7e499c14e6bec9b5d3e48f1e584e26ba2ca01f1ce73a347a338de2a304 +DIST notqmail-1.08.tar.xz 179500 BLAKE2B 6c774037b257849aea65e7761a6f6c9918079faa490c0ed027d73a8b32de5d5907a54a59162b9b68479229c4b92a23fe28cd2f334123cfe674a94502b90a3635 SHA512 c18d09e28c2e580522eea144e5344e814811108b12f3272b4cf10ad58d9d3d8e666616dcfea2f369e226b68db4fe8cf67cbae994b242d36e9e07c289a0539394 +DIST qmail-103.patch 2104 BLAKE2B 23721b3331c719f3b6deca8b2603bf824b66068d3901a84dda9edbe33b506d0c2b6e711364e2426d9e393453a54485f0286d4668f99cf6b9acabf10a5dc59b0a SHA512 b81062bb0b0023f474c0b6af40601926e1c04ad395de480d114809e48a8060c06d99bdbdeb6f44d9e24ae1acedabb094b979193d305371aed958f18fc6eee354 +DIST qmail-spp-0.42.tar.gz 18689 BLAKE2B df67f10f6daf9601fd074c774c5be4decca59f3e790774d502c28ebd495f9d7523ecebfd37abd333e347151647364d08d3ccc25099c82748bf7b7ea84bb18977 SHA512 03449862886a0ca20fbadab4c94b34b55d185f8df3261bd68aea99e9ded9edfab4477c6b38a8e0295e9b38b0045615da8b1a906a458f28745eadd3c4d882bcbf +EBUILD notqmail-1.08.ebuild 4098 BLAKE2B 9815f834ffabc5217b37d43a117c076f9b0bab5aa45e07af33e32027e99198c32a7cd37e793205eb36991dec593c5e3bd4c1aa955aeb318798a3c164bc0ee323 SHA512 c312ed265254d51d93a69282ceeacdd38c8f32922da02fbc97eb5067a46984423a98877dffd864b78cf296936e4d296a664311dea624b7862525bf124c530eaa +EBUILD notqmail-9999.ebuild 4092 BLAKE2B 7c9dcec9d31bfbbc56fa6f21ebfb4eb5938f7cea5174e053aa1400142f47ef082ab2b950b8dd903ebf3d8ff18a92ec219cf66dfb7a328c97e794574e80004c98 SHA512 6060e6c560d8f4e7d4213a7617fad634ac62cd76d48de16ed0c2b01146fc92d3cbb0044c717b1b434f5da5e96d9bd0eeb796f4ef3e75dca4a788ac4c0de939d6 +MISC metadata.xml 777 BLAKE2B 8e69eece4987057c0ba550b3e82d92f28dc308c77e71db483146a7e3b09fcd8bb22938d44009ac1dbb437c8cfdf44ddee07fc9b76feefa83e018249311537cb7 SHA512 54cff14308dc5240e9288cb63490cc1dad34d76963d166f94cce00a86ae1fd31e4e0be3144a9dede5bf7973d89dafa2f3acc5b438d95a594400a1a56cdf6f5b0 diff --git a/mail-mta/notqmail/metadata.xml b/mail-mta/notqmail/metadata.xml new file mode 100644 index 000000000000..1547ff2797a9 --- /dev/null +++ b/mail-mta/notqmail/metadata.xml @@ -0,0 +1,23 @@ + + + + + eike@sf-mail.de + Rolf Eike Beer + + + proxy-maint@gentoo.org + Proxy Maintainers + + + Enable AUTHCRAM support + Generate SSL certificates daily instead of + hourly + Prepare notqmail for high volume servers + Include POP3 server + + + notqmail/notqmail + qmail-spp + + diff --git a/mail-mta/notqmail/notqmail-1.08.ebuild b/mail-mta/notqmail/notqmail-1.08.ebuild new file mode 100644 index 000000000000..f0c38be6c756 --- /dev/null +++ b/mail-mta/notqmail/notqmail-1.08.ebuild @@ -0,0 +1,186 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +GENQMAIL_PV=20191010 +QMAIL_SPP_PV=0.42 + +QMAIL_TLS_PV=20200107 +QMAIL_TLS_F=notqmail-1.08-tls-${QMAIL_TLS_PV}.patch + +QMAIL_BIGTODO_F=notqmail-1.08-big-todo.patch + +QMAIL_LARGE_DNS="qmail-103.patch" + +inherit qmail + +if [[ ${PV} == "9999" ]] ; then + EGIT_REPO_URI="https://github.com/notqmail/notqmail.git" + inherit git-r3 +else + KEYWORDS="~amd64 ~hppa ~ia64 ~sparc" + SRC_URI="https://github.com/notqmail/notqmail/releases/download/${P}/${P}.tar.xz" +fi + +DESCRIPTION="qmail -- a secure, reliable, efficient, simple message transfer agent" +HOMEPAGE=" + https://notqmail.org + https://cr.yp.to/qmail.html + http://qmail.org +" +SRC_URI="${SRC_URI} + https://github.com/DerDakon/genqmail/releases/download/genqmail-${GENQMAIL_PV}/${GENQMAIL_F} + https://www.ckdhr.com/ckd/${QMAIL_LARGE_DNS} + !vanilla? ( + highvolume? ( + https://github.com/notqmail/notqmail/commit/3a22b45974ddd1230da0dfa21f886c3401bee020.patch -> ${QMAIL_BIGTODO_F} + ) + qmail-spp? ( mirror://sourceforge/qmail-spp/${QMAIL_SPP_F} ) + https://github.com/notqmail/notqmail/commit/b224a3ceb63ff8ebc57648bf304e079d0bf55023.patch -> ${PN}-1.08-auth.patch + ssl? ( + https://github.com/notqmail/notqmail/commit/ed58c2eff21612037bbcc633f4b3a8e708f522a0.patch -> ${QMAIL_TLS_F} + ) + ) +" + +LICENSE="public-domain" +SLOT="0" +IUSE="authcram gencertdaily highvolume libressl -pop3 qmail-spp ssl test vanilla" +REQUIRED_USE="vanilla? ( !ssl !qmail-spp !highvolume )" +RESTRICT="!test? ( test )" + +DEPEND=" + net-dns/libidn2 + net-mail/queue-repair + sys-apps/gentoo-functions + sys-apps/groff + ssl? ( + !libressl? ( >=dev-libs/openssl-1.1:0= ) + libressl? ( dev-libs/libressl:= ) + ) + test? ( dev-libs/check ) +" +RDEPEND="${DEPEND} + acct-group/nofiles + acct-group/qmail + acct-user/alias + acct-user/qmaild + acct-user/qmaill + acct-user/qmailp + acct-user/qmailq + acct-user/qmailr + acct-user/qmails + sys-apps/ucspi-tcp + virtual/checkpassword + virtual/daemontools + authcram? ( >=net-mail/cmd5checkpw-0.30 ) + ssl? ( + pop3? ( sys-apps/ucspi-ssl ) + ) + !mail-mta/courier + !mail-mta/esmtp + !mail-mta/exim + !mail-mta/msmtp[mta] + !mail-mta/nullmailer + !mail-mta/opensmtpd + !mail-mta/postfix + !mail-mta/qmail-ldap + !mail-mta/netqmail + !mail-mta/sendmail + !mail-mta/ssmtp[mta] +" + +src_unpack() { + genqmail_src_unpack + use qmail-spp && qmail_spp_src_unpack + + [[ ${PV} == "9999" ]] && git-r3_src_unpack + [[ ${PV} != "9999" ]] && default +} + +PATCHES=( + "${DISTDIR}/${QMAIL_LARGE_DNS}" +) + +src_prepare() { + if ! use vanilla; then + if use ssl; then + PATCHES+=( "${DISTDIR}/${QMAIL_TLS_F}" ) + else + PATCHES+=( "${DISTDIR}/${P}-auth.patch" ) + fi + if use highvolume; then + PATCHES+=( "${DISTDIR}/${QMAIL_BIGTODO_F}" ) + fi + + if use qmail-spp; then + if use ssl; then + SPP_PATCH="${QMAIL_SPP_S}/qmail-spp-smtpauth-tls-20060105.diff" + else + SPP_PATCH="${QMAIL_SPP_S}/netqmail-spp.diff" + fi + # make the patch work with "-p1" + sed -e 's#^--- \([Mq]\)#--- a/\1#' -e 's#^+++ \([Mq]\)#+++ b/\1#' -i ${SPP_PATCH} || die + + PATCHES+=( "${SPP_PATCH}" ) + fi + fi + + default + + qmail_src_postunpack + + if ! use authcram; then + einfo "Disabled CRAM_MD5 support" + sed -e 's,^#define CRAM_MD5$,/*&*/,' -i "${S}"/qmail-smtpd.c || die + else + einfo "Enabled CRAM_MD5 support" + fi + + ht_fix_file Makefile* +} + +src_compile() { + qmail_src_compile + use qmail-spp && qmail_spp_src_compile +} + +src_install() { + qmail_src_install +} + +src_test() { + emake test +} + +pkg_postinst() { + qmail_queue_setup + qmail_rootmail_fixup + qmail_tcprules_build + + qmail_config_notice + qmail_supervise_config_notice + elog + elog "If you are looking for documentation, check those links:" + elog "https://wiki.gentoo.org/wiki/Virtual_mail_hosting_with_qmail" + elog " -- qmail/vpopmail Virtual Mail Hosting System Guide" + elog "http://www.lifewithqmail.com/" + elog " -- Life with qmail" + elog +} + +pkg_preinst() { + qmail_tcprules_fixup +} + +pkg_config() { + # avoid some weird locale problems + export LC_ALL=C + + qmail_config_fast + qmail_tcprules_config + qmail_tcprules_build + + use ssl && qmail_ssl_generate +} diff --git a/mail-mta/notqmail/notqmail-9999.ebuild b/mail-mta/notqmail/notqmail-9999.ebuild new file mode 100644 index 000000000000..6332e8b46af5 --- /dev/null +++ b/mail-mta/notqmail/notqmail-9999.ebuild @@ -0,0 +1,186 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +GENQMAIL_PV=20191010 +QMAIL_SPP_PV=0.42 + +QMAIL_TLS_PV=20200107 +QMAIL_TLS_F=notqmail-1.08-tls-${QMAIL_TLS_PV}.patch + +QMAIL_BIGTODO_F=notqmail-1.08-big-todo.patch + +QMAIL_LARGE_DNS="qmail-103.patch" + +inherit qmail + +if [[ ${PV} == "9999" ]] ; then + EGIT_REPO_URI="https://github.com/notqmail/notqmail.git" + inherit git-r3 +else + KEYWORDS="~amd64 ~hppa ~sparc" + SRC_URI="https://github.com/notqmail/notqmail/releases/download/${P}/${P}.tar.xz" +fi + +DESCRIPTION="qmail -- a secure, reliable, efficient, simple message transfer agent" +HOMEPAGE=" + https://notqmail.org + https://cr.yp.to/qmail.html + http://qmail.org +" +SRC_URI="${SRC_URI} + https://github.com/DerDakon/genqmail/releases/download/genqmail-${GENQMAIL_PV}/${GENQMAIL_F} + https://www.ckdhr.com/ckd/${QMAIL_LARGE_DNS} + !vanilla? ( + highvolume? ( + https://github.com/notqmail/notqmail/commit/3a22b45974ddd1230da0dfa21f886c3401bee020.patch -> ${QMAIL_BIGTODO_F} + ) + qmail-spp? ( mirror://sourceforge/qmail-spp/${QMAIL_SPP_F} ) + https://github.com/notqmail/notqmail/commit/b224a3ceb63ff8ebc57648bf304e079d0bf55023.patch -> ${PN}-1.08-auth.patch + ssl? ( + https://github.com/notqmail/notqmail/commit/ed58c2eff21612037bbcc633f4b3a8e708f522a0.patch -> ${QMAIL_TLS_F} + ) + ) +" + +LICENSE="public-domain" +SLOT="0" +IUSE="authcram gencertdaily highvolume libressl -pop3 qmail-spp ssl test vanilla" +REQUIRED_USE="vanilla? ( !ssl !qmail-spp !highvolume )" +RESTRICT="!test? ( test )" + +DEPEND=" + net-dns/libidn2 + net-mail/queue-repair + sys-apps/gentoo-functions + sys-apps/groff + ssl? ( + !libressl? ( >=dev-libs/openssl-1.1:0= ) + libressl? ( dev-libs/libressl:= ) + ) + test? ( dev-libs/check ) +" +RDEPEND="${DEPEND} + acct-group/nofiles + acct-group/qmail + acct-user/alias + acct-user/qmaild + acct-user/qmaill + acct-user/qmailp + acct-user/qmailq + acct-user/qmailr + acct-user/qmails + sys-apps/ucspi-tcp + virtual/checkpassword + virtual/daemontools + authcram? ( >=net-mail/cmd5checkpw-0.30 ) + ssl? ( + pop3? ( sys-apps/ucspi-ssl ) + ) + !mail-mta/courier + !mail-mta/esmtp + !mail-mta/exim + !mail-mta/msmtp[mta] + !mail-mta/nullmailer + !mail-mta/opensmtpd + !mail-mta/postfix + !mail-mta/qmail-ldap + !mail-mta/netqmail + !mail-mta/sendmail + !mail-mta/ssmtp[mta] +" + +src_unpack() { + genqmail_src_unpack + use qmail-spp && qmail_spp_src_unpack + + [[ ${PV} == "9999" ]] && git-r3_src_unpack + [[ ${PV} != "9999" ]] && default +} + +PATCHES=( + "${DISTDIR}/${QMAIL_LARGE_DNS}" +) + +src_prepare() { + if ! use vanilla; then + if use ssl; then + PATCHES+=( "${DISTDIR}/${QMAIL_TLS_F}" ) + else + PATCHES+=( "${DISTDIR}/${P}-auth.patch" ) + fi + if use highvolume; then + PATCHES+=( "${DISTDIR}/${QMAIL_BIGTODO_F}" ) + fi + + if use qmail-spp; then + if use ssl; then + SPP_PATCH="${QMAIL_SPP_S}/qmail-spp-smtpauth-tls-20060105.diff" + else + SPP_PATCH="${QMAIL_SPP_S}/netqmail-spp.diff" + fi + # make the patch work with "-p1" + sed -e 's#^--- \([Mq]\)#--- a/\1#' -e 's#^+++ \([Mq]\)#+++ b/\1#' -i ${SPP_PATCH} || die + + PATCHES+=( "${SPP_PATCH}" ) + fi + fi + + default + + qmail_src_postunpack + + if ! use authcram; then + einfo "Disabled CRAM_MD5 support" + sed -e 's,^#define CRAM_MD5$,/*&*/,' -i "${S}"/qmail-smtpd.c || die + else + einfo "Enabled CRAM_MD5 support" + fi + + ht_fix_file Makefile* +} + +src_compile() { + qmail_src_compile + use qmail-spp && qmail_spp_src_compile +} + +src_install() { + qmail_src_install +} + +src_test() { + emake test +} + +pkg_postinst() { + qmail_queue_setup + qmail_rootmail_fixup + qmail_tcprules_build + + qmail_config_notice + qmail_supervise_config_notice + elog + elog "If you are looking for documentation, check those links:" + elog "https://wiki.gentoo.org/wiki/Virtual_mail_hosting_with_qmail" + elog " -- qmail/vpopmail Virtual Mail Hosting System Guide" + elog "http://www.lifewithqmail.com/" + elog " -- Life with qmail" + elog +} + +pkg_preinst() { + qmail_tcprules_fixup +} + +pkg_config() { + # avoid some weird locale problems + export LC_ALL=C + + qmail_config_fast + qmail_tcprules_config + qmail_tcprules_build + + use ssl && qmail_ssl_generate +} diff --git a/mail-mta/nullmailer/Manifest b/mail-mta/nullmailer/Manifest index a1e39d488825..4decdc50a47c 100644 --- a/mail-mta/nullmailer/Manifest +++ b/mail-mta/nullmailer/Manifest @@ -1,12 +1,7 @@ -AUX init.d-nullmailer-r4 976 BLAKE2B bef0e403a51808dcb1a6d08a5a06746e8f164b8d1e2ce94cf6d4269df1addc1b6e8d61d945e4da20b08d565a327232eaa4926029a8f2c07bf89e3847aab36a29 SHA512 e08847554d483e2feb69296747b267585d7960b057ae12f4440a452cb9c1954b5c54bb0d0c4884563b31d83b252a11897cc599a47ec782ea740fc282e9f6c512 -AUX init.d-nullmailer-r5 1132 BLAKE2B 2ce6f056f336013fa8786523e3f32359ca5bbdd47343f2ef943b855569a9754d12f65e35ce4d49bf9425cf0d40b628d407b8f2064c0ddc0a742578a852c1c60f SHA512 34a31a53f5f7f1bec4b5cc25bd50e2928cd658360d8430256a5a80a87609a3858a2f2252fce0e5258ac85f1957286c9b449fb1ddb14ace2cfc0dc75cb53aefb9 AUX init.d-nullmailer-r6 1180 BLAKE2B fdfc17abfac24faa184d9cfe8fe3597f09bfe258ca44c41db05d91e0a086c8b52ed12f722f0ce5ecf1b9b5b11fc420cf13cc9127b849150be87fdd7bce94d859 SHA512 951313ba50dacfbfef440ad32bb4196e276bbe9fb636f05d8e311bd7bfea8e89f135a8e48c9df797031517125c848421dddb41215553144e384d98587c74be8d -AUX nullmailer-1.13-unistd.h.patch 867 BLAKE2B 758af8df9518938f930f4095ce71c7c088b2ebcbd6a2814a2eba91521d4507df50f3d92a526cbb8f2a94df4cc080ef115c4d1b81dd0a31fb20c3949961ef91d7 SHA512 0a46f6a10a380a3b5b1527d60eef768f2e1b94b2848c4d866bf3088f9b1592b3fc464c69d2559309adfae6fc8f46f3897585d736b37947239106090c3449aaf3 AUX nullmailer-2.2-disable-dns-using-test.patch 895 BLAKE2B 5b37129452e13c526a391580fb4816bf81c0db7adbed56d2e51f2948fe43e67bb7e1167ebf1ed1d589194204942efc985f18e14e5d2cd495a20f6df051519fa3 SHA512 d16592477612a716a8883ada1f18c34a4add81cfcfdda252705090e1f0b59f22a9bda9fe26bf950a78e21b9a69d20662825461669db72269280b7f82a1f8f8d9 AUX nullmailer-2.2-disable-smtp-auth-tests.patch 2383 BLAKE2B 07f2fc7517df280fac5db9dc1db1d8937f6773a26668444df71ffb3593d6da4d0a35f74b51d66c019a84e6ef146da12fe60bc5517f543adcc5984060feebe95b SHA512 fc3bbcd8accd5a37b8292c6fb3e935ab1cd35d4a67bb224eadf48ff54b3b00508d6496e3d40c4546a966ce5dd6c297822a4e76a6b9e69d0ce47dd4e0e3883e47 AUX nullmailer-2.2-fix-test-racecondition.patch 890 BLAKE2B 7d12af8a9b6071f11e70c6aedbe0471f042c2c2e611eedf768071715b7f42a94b2b41e814a87dd87777810cbb823d20138d40f6aa3aba93ebaec89ebb6d9e2f3 SHA512 10873e538dbc89e8899047e732515d30108b25fd0ff6bb2fc695f5790a94ac32629f41c470a2fec951357169fead36ee4512f543ad0e02c52f09799334b815c7 -AUX nullmailer.service 401 BLAKE2B cca2fbdad581638f52a59caea902ca5701ca69e8b0e4a7c8fd87b8bfe3b9c233422ed0d93c0c583778e25998758c70cdf1602e35316739fa27018a590e28c8a5 SHA512 5aebb237972a7ff20a34d40d53d8d3146966c8f12b20695aa718831a6b32ecf4a0cc9d5af41067952c454166d02d52226fcb397b48310907b81deaa2d874adb7 -AUX remotes.sample-1.13 969 BLAKE2B f973a3866a31b5d6bf1ac227340df4484b570039c7237a7c4e44516b2ca796c627cd00473f42e1c017865915cf8933f4d3df856ead3439d9e1e97bdded8bf81e SHA512 379d307dc28b60e759ebe701d43508b45bc66560879ba2baa30c11c0a57ff67e55151624b5dd67962cb72b22702d14c309f6b6be59a5dd2d030576cb691bcbc6 AUX remotes.sample-2.0 920 BLAKE2B 26e777624086267e543354f130d3abc9591d832afbd80b8efd1fd2ce2391ed16641877077d90cef7d491a844e94fec3cba0a45dd452aa7f29151dd5873871200 SHA512 21694c7cceb3bdd743e30e2241b5e3293a3ad0fcdc4345d200f2e81c26b72b8a53c6cc3912a4e5f1de6411658a2144803746b44b59d48024cb3de33d72238354 DIST nullmailer-2.2.tar.gz 257740 BLAKE2B 18821caa1a377a899e3fedc84530d7c672f345cafb627da05e6c7bcd7d2708d54fc4ff4b761a6a23b2ddbabe73514473a5ec2abf3182dce2f5d3d4fbe3618fed SHA512 21b29d59f3c386c13ce4541ae11dc5cd69f842085479d7fc9a69a540abc608ce5c1825f06bd3566536b392931f7eeb1b2d35addd816849e6f431877bb18c8268 EBUILD nullmailer-2.2-r1.ebuild 4277 BLAKE2B d854bb6a9b83c14213b3dad8ed304e9f7fd468bd1d987e1ad6d6aa29f84f810ce2c882ed6cec10063d45e70b521928777c638a4821e0d662a88af1c3dfc16670 SHA512 c6b520cee7decd5f8100bf79c4428029838673711539cd98af775ac97b87a1b0639a4aa0cde0f64f9cde4f0b922b5c55391c9a2b6534f2de5c61d9c4a168ade2 diff --git a/mail-mta/nullmailer/files/init.d-nullmailer-r4 b/mail-mta/nullmailer/files/init.d-nullmailer-r4 deleted file mode 100644 index 3a6e049f8257..000000000000 --- a/mail-mta/nullmailer/files/init.d-nullmailer-r4 +++ /dev/null @@ -1,50 +0,0 @@ -#!/sbin/openrc-run -# Copyright 1999-2014 Gentoo Foundation -# Distributed under the terms of the GNU General Public License, v2 or later - -command="/usr/sbin/nullmailer-send" - -start_stop_daemon_args="--chdir /var/nullmailer --user nullmail:nullmail" - -required_dirs="/var/nullmailer" -pidfile="/run/nullmailer.pid" -command_background="true" -command_args="-s" - -depend() { - use net logger -} - -checkconfig() { - local error=0 - local f=/etc/nullmailer/me - if [ ! -s ${f} ]; then - eerror "${f} does not exist" - error=1 - fi - f=/etc/nullmailer/defaultdomain - if [ ! -s ${f} ]; then - eerror "${f} does not exist" - error=1 - fi - if [ ${error} -eq 1 ]; then - einfo "You need to run 'emerge --config nullmailer'!" - fi - if [ -e /service/nullmailer ]; then - eerror "Nullmailer is already running under svscan!" - error=2 - fi - if [ ${error} -ne 0 ]; then - return 1 - else - return 0 - fi -} - -start_pre() { - checkconfig -} - -stop_pre() { - checkconfig # to avoid init.d stopping svscan instance -} diff --git a/mail-mta/nullmailer/files/init.d-nullmailer-r5 b/mail-mta/nullmailer/files/init.d-nullmailer-r5 deleted file mode 100644 index 38ab1319df52..000000000000 --- a/mail-mta/nullmailer/files/init.d-nullmailer-r5 +++ /dev/null @@ -1,51 +0,0 @@ -#!/sbin/openrc-run -# Copyright 1999-2016 Gentoo Foundation -# Distributed under the terms of the GNU General Public License, v2 or later - -command="/usr/sbin/nullmailer-send" - -start_stop_daemon_args="--chdir /var/spool/nullmailer --user nullmail:nullmail" -start_stop_daemon_args+=" --stdout /var/log/nullmailer/nullmailer.log" -start_stop_daemon_args+=" --stderr /var/log/nullmailer/nullmailer.log" - -required_dirs="/var/spool/nullmailer /var/log/nullmailer" -pidfile="/run/nullmailer.pid" -command_background="true" - -depend() { - use net logger -} - -checkconfig() { - local error=0 - local f=/etc/nullmailer/me - if [ ! -s ${f} ]; then - eerror "${f} does not exist" - error=1 - fi - f=/etc/nullmailer/defaultdomain - if [ ! -s ${f} ]; then - eerror "${f} does not exist" - error=1 - fi - if [ ${error} -eq 1 ]; then - einfo "You need to run 'emerge --config nullmailer'!" - fi - if [ -e /service/nullmailer ]; then - eerror "Nullmailer is already running under svscan!" - error=2 - fi - if [ ${error} -ne 0 ]; then - return 1 - else - return 0 - fi -} - -start_pre() { - checkconfig -} - -stop_pre() { - checkconfig # to avoid init.d stopping svscan instance -} diff --git a/mail-mta/nullmailer/files/nullmailer-1.13-unistd.h.patch b/mail-mta/nullmailer/files/nullmailer-1.13-unistd.h.patch deleted file mode 100644 index 8199b9627f47..000000000000 --- a/mail-mta/nullmailer/files/nullmailer-1.13-unistd.h.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 5e9316c669e752fcd9058b28952919bccd967640 Mon Sep 17 00:00:00 2001 -From: "Anthony G. Basile" -Date: Sat, 31 Jan 2015 23:55:48 +0000 -Subject: [PATCH] lib/fdbuf/fdbuf.h: include - -class fdobuf in lib/fdbuf/fdobuf.h makes use of uid_t and gid_t, -but these are defined in according to POSIX. With libc's -that adhere strictly to standards, like musl, this breaks the build. - -We add to fdbuf.h which is included by fdbuf.h. - -Signed-off-by: Anthony G. Basile ---- - lib/fdbuf/fdbuf.h | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/lib/fdbuf/fdbuf.h b/lib/fdbuf/fdbuf.h -index 4b0e9cb..0054b01 100644 ---- a/lib/fdbuf/fdbuf.h -+++ b/lib/fdbuf/fdbuf.h -@@ -20,6 +20,7 @@ - #include "config.h" - #include - #include -+#include - - #ifdef _REENTRANT - #include diff --git a/mail-mta/nullmailer/files/nullmailer.service b/mail-mta/nullmailer/files/nullmailer.service deleted file mode 100644 index 8aae6c996d13..000000000000 --- a/mail-mta/nullmailer/files/nullmailer.service +++ /dev/null @@ -1,17 +0,0 @@ -[Unit] -Description=Nullmailer relay-only MTA -Requires=network.target -After=local-fs.target syslog.target -ConditionPathExists=/var/nullmailer/queue -ConditionPathExists=/etc/nullmailer/defaultdomain -ConditionPathExists=/etc/nullmailer/me - -[Service] -WorkingDirectory=/var/nullmailer -ExecStart=/usr/sbin/nullmailer-send -s -User=nullmail -Group=nullmail -Restart=always - -[Install] -WantedBy=multi-user.target diff --git a/mail-mta/nullmailer/files/remotes.sample-1.13 b/mail-mta/nullmailer/files/remotes.sample-1.13 deleted file mode 100644 index d04aee24ecb6..000000000000 --- a/mail-mta/nullmailer/files/remotes.sample-1.13 +++ /dev/null @@ -1,29 +0,0 @@ -# Format is: HOST PROTOCOL [OPTIONS] -# HOST = IP or DNS -# PROTOCOL = smtp | qmtp -# OPTIONS = [--port=NUMBER] [--user] [--pass] [--starttls | --ssl [--insecure] ] -# -# Examples: -# A standard SMTP server: -# somesendmailserver.domain.com smtp -# -# A qmail server with QMQP setup: -# someqmailserver.domain.com qmqp -# -# A nonstandard SMTP server setup: -# someotherserver.domain.com smtp --port=2525 -# -# SMTP server supporting AUTH PLAIN -# mailserver smtp --user= --pass= -# -# SMTP server supporting AUTH LOGIN -# mailserver smtp --user= --pass= --auth-login -# -# SMTP server with smtps (legacy - use starttls instead) -# mailserver smtp --user= --pass= --port=465 --ssl -# -# SMTP server on submission port with starttls -# mailserver smtp --user= --pass= --port=587 --starttls -# -# SMTP server on submission port with starttls and self-signed certificate -# mailserver smtp --user= --pass= --port=587 --starttls --insecure diff --git a/mail-mta/postfix/Manifest b/mail-mta/postfix/Manifest index b03e10ba2937..4449b2d83bf5 100644 --- a/mail-mta/postfix/Manifest +++ b/mail-mta/postfix/Manifest @@ -6,8 +6,8 @@ AUX smtp.pass 29 BLAKE2B 589915bd2856fa64e22caa12fca54ef342eb07606de38d3879c13ac AUX smtp.sasl 42 BLAKE2B 67e9108101779b6027fa1e5cc7c9256a606d440e15bb037a0da186e6b4983ab26e88ede2f0604737c78144c03e182f66005062f1d49e10443d1ddb9757461d1f SHA512 a48e2bd173c4443dd2c389f6973a541dbcba4223b52b42b409a68d934a7fc82a98d4027267befcd5db6ec628cce6a9dffdf044e6fbd774b6e748f07f4106db47 DIST postfix-3.5.1.tar.gz 4609587 BLAKE2B 94b06ed536417ca72729d93f03d4fa2dce602508e4c5816ad902740d4203ad3df66d7380ea41859ab75ab327c0f53bc2bbaf09ba45fe83490d02808426a6253d SHA512 9c091cda6c2d54fefc7093736f69dc60dc4d9d2d858260bde1430427bc49caa59f81aea7a992b9764998a4edaaa015ddd50392b8f0a1bccd15f52b563887a698 DIST postfix-3.5.2.tar.gz 4611518 BLAKE2B 4bdf1876c6e210644541fb4fad6ecc4aad2f95afc1d3b7aa30c79e4ca8d2e1c24ad5541f235b8fea91b9831b9b967d6234aae3084938e334bc11a5777004134b SHA512 04e37c4542952dba0f3e44f10775c0bedf343e6382df14a9c43ebc80c005c3f6de68a4e7a7469f32ae74b8e50d10c089d4930eac0cd2e2a9ff1bd8d7481b3a76 -DIST postfix-3.6-20200523.tar.gz 4644882 BLAKE2B 1c001559b55c1818c03530a975dd47293bba5ccc02a94b60cc0d6fd34400e1b0a7c88a1f8b76d2ccb63cf4a8a8fc0713ec767babe42b9c60013fc8036585ea3a SHA512 60a2d5f9fefe1792b6dfaf5dd8d7677690d24dc1f2a90e8691778dd1af6f300f12beaa0e7e8ec90380b12afe047d08a79bcf76b6c14b864e4103c6549c13e71e +DIST postfix-3.6-20200610.tar.gz 4634682 BLAKE2B 08bd449b1b5313f9896317ca764e0eb8a11906cb7057fafcfdd60a974bfc9678d8ec0143934bbcbc4549a13367fa3c5eefe652c05739eeb425b720374aec16eb SHA512 f34c69d712a17a7697ccd9424ce076ca71c1b9e0b46855e8c323f990ca31c74dded05573a44c3c55ee10093eddbe91702bc961729c50acceae6703647d18da01 EBUILD postfix-3.5.1.ebuild 8830 BLAKE2B 5da9e3002be93402fa4b5d767bec9ee1e17571d492a776244210a98b639df1546cd01009348a7c8d1686d0408bdc07175afdc4fe420b55f898e83eb6ba91a440 SHA512 c121bd5ecca3a74d9dad9caf43cd44884f787bb27c146300f730c57590a24007d18a3cd04cea20a22db0e22ef44d355f549514d7a1c1bba6c865749972c90e5d EBUILD postfix-3.5.2.ebuild 8835 BLAKE2B 783402f5b3fb51890afbba59bb042fdfc26726804ede9d523882f759c870fbfcb63a66463100bc8bb5d21e1030c59a887de263239b4e0f9e37f38fd2383ddef7 SHA512 db14226c5259442c15a3c0ef3ec9bb6b00e331840df15764e6eec2f9bb8d6d93475334924445f31e1b8d1460da9d3c24f07f94809e5dea11149e6c7d0e6781ef -EBUILD postfix-3.6_pre20200523.ebuild 8117 BLAKE2B 1468eefc69666723812aa440b38bfa6913c63b8044b221a6369ae7006a14ebc3968bb0df91103c7daa97864986acdf9f8cf836c495a424b4b33594747dc58847 SHA512 af5af7b2a8ddd2cd769ed4b56942cbdae05d01afadc9ccaa0ab575f80fd4973f407af2e82b129a575ac7f36a5c4a5114949bd849eef0e29fa073e2610207fbcf +EBUILD postfix-3.6_pre20200610.ebuild 8117 BLAKE2B 1468eefc69666723812aa440b38bfa6913c63b8044b221a6369ae7006a14ebc3968bb0df91103c7daa97864986acdf9f8cf836c495a424b4b33594747dc58847 SHA512 af5af7b2a8ddd2cd769ed4b56942cbdae05d01afadc9ccaa0ab575f80fd4973f407af2e82b129a575ac7f36a5c4a5114949bd849eef0e29fa073e2610207fbcf MISC metadata.xml 939 BLAKE2B 01474efe62df1eda9a3ba5976847064d615b3c32d9c71838354ef375c851c7ab4d1fcc2bc0d2945ce3d259fc6a698938cee6d1354c4e0f02f1e66395e377a0c5 SHA512 8602700c2a21b66ecf2c024c06ce23452f7effd9c06a5d58c1ccb351bcdef43a3c89575cc9136efc72fcd4e06ecb0654017b51bb145e7ffeeda771e3f4e7a673 diff --git a/mail-mta/postfix/postfix-3.6_pre20200523.ebuild b/mail-mta/postfix/postfix-3.6_pre20200523.ebuild deleted file mode 100644 index fc79ce127b82..000000000000 --- a/mail-mta/postfix/postfix-3.6_pre20200523.ebuild +++ /dev/null @@ -1,293 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 -inherit pam systemd toolchain-funcs - -MY_PV="${PV/_pre/-}" -MY_SRC="${PN}-${MY_PV}" -MY_URI="ftp://ftp.porcupine.org/mirrors/postfix-release/experimental" -RC_VER="2.7" - -DESCRIPTION="A fast and secure drop-in replacement for sendmail" -HOMEPAGE="http://www.postfix.org/" -SRC_URI="${MY_URI}/${MY_SRC}.tar.gz" - -LICENSE="|| ( IBM EPL-2.0 )" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86" -IUSE="+berkdb cdb dovecot-sasl +eai ldap ldap-bind libressl lmdb memcached mbox mysql nis pam postgres sasl selinux sqlite ssl" - -DEPEND=">=dev-libs/libpcre-3.4 - dev-lang/perl - berkdb? ( >=sys-libs/db-3.2:* ) - cdb? ( || ( >=dev-db/tinycdb-0.76 >=dev-db/cdb-0.75-r4 ) ) - eai? ( dev-libs/icu:= ) - ldap? ( net-nds/openldap ) - ldap-bind? ( net-nds/openldap[sasl] ) - lmdb? ( >=dev-db/lmdb-0.9.11 ) - mysql? ( dev-db/mysql-connector-c:0= ) - nis? ( net-libs/libnsl ) - pam? ( sys-libs/pam ) - postgres? ( dev-db/postgresql:* ) - sasl? ( >=dev-libs/cyrus-sasl-2 ) - sqlite? ( dev-db/sqlite:3 ) - ssl? ( - !libressl? ( dev-libs/openssl:0= ) - libressl? ( >=dev-libs/libressl-2.9.1:0= ) - )" - -RDEPEND="${DEPEND} - acct-group/postfix - acct-group/postdrop - acct-user/postfix - memcached? ( net-misc/memcached ) - net-mail/mailbase - !mail-mta/courier - !mail-mta/esmtp - !mail-mta/exim - !mail-mta/mini-qmail - !mail-mta/msmtp[mta] - !mail-mta/netqmail - !mail-mta/nullmailer - !mail-mta/qmail-ldap - !mail-mta/sendmail - !mail-mta/opensmtpd - !mail-mta/ssmtp[mta] - !net-mail/fastforward - selinux? ( sec-policy/selinux-postfix )" - -REQUIRED_USE="ldap-bind? ( ldap sasl )" - -S="${WORKDIR}/${MY_SRC}" - -PATCHES=( - "${FILESDIR}/${PN}-libressl-certkey.patch" - "${FILESDIR}/${PN}-libressl-server.patch" -) - -src_prepare() { - default - sed -i -e "/^#define ALIAS_DB_MAP/s|:/etc/aliases|:/etc/mail/aliases|" \ - src/util/sys_defs.h || die "sed failed" - # change default paths to better comply with portage standard paths - sed -i -e "s:/usr/local/:/usr/:g" conf/master.cf || die "sed failed" -} - -src_configure() { - for name in CDB LDAP LMDB MYSQL PCRE PGSQL SDBM SQLITE - do - local AUXLIBS_${name}="" - done - - # Make sure LDFLAGS get passed down to the executables. - local mycc="-DHAS_PCRE" mylibs="${LDFLAGS} -ldl" - AUXLIBS_PCRE="$(pcre-config --libs)" - - use pam && mylibs="${mylibs} -lpam" - - if use ldap; then - mycc="${mycc} -DHAS_LDAP" - AUXLIBS_LDAP="-lldap -llber" - fi - - if use mysql; then - mycc="${mycc} -DHAS_MYSQL $(mysql_config --include)" - AUXLIBS_MYSQL="$(mysql_config --libs)" - fi - - if use postgres; then - mycc="${mycc} -DHAS_PGSQL -I$(pg_config --includedir)" - AUXLIBS_PGSQL="-L$(pg_config --libdir) -lpq" - fi - - if use sqlite; then - mycc="${mycc} -DHAS_SQLITE" - AUXLIBS_SQLITE="-lsqlite3 -lpthread" - fi - - if use ssl; then - mycc="${mycc} -DUSE_TLS" - mylibs="${mylibs} -lssl -lcrypto" - fi - - if use lmdb; then - mycc="${mycc} -DHAS_LMDB" - AUXLIBS_LMDB="-llmdb -lpthread" - fi - - if ! use eai; then - mycc="${mycc} -DNO_EAI" - fi - - # broken. and "in other words, not supported" by upstream. - # Use inet_protocols setting in main.cf - #if ! use ipv6; then - # mycc="${mycc} -DNO_IPV6" - #fi - - if use sasl; then - if use dovecot-sasl; then - # Set dovecot as default. - mycc="${mycc} -DDEF_SASL_SERVER=\\\"dovecot\\\"" - fi - if use ldap-bind; then - mycc="${mycc} -DUSE_LDAP_SASL" - fi - mycc="${mycc} -DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I/usr/include/sasl" - mylibs="${mylibs} -lsasl2" - elif use dovecot-sasl; then - mycc="${mycc} -DUSE_SASL_AUTH -DDEF_SERVER_SASL_TYPE=\\\"dovecot\\\"" - fi - - if ! use nis; then - mycc="${mycc} -DNO_NIS" - fi - - if ! use berkdb; then - mycc="${mycc} -DNO_DB" - if use cdb; then - # change default hash format from Berkeley DB to cdb - mycc="${mycc} -DDEF_DB_TYPE=\\\"cdb\\\"" - fi - fi - - if use cdb; then - mycc="${mycc} -DHAS_CDB -I/usr/include/cdb" - # Tinycdb is preferred. - if has_version dev-db/tinycdb ; then - einfo "Building with dev-db/tinycdb" - AUXLIBS_CDB="-lcdb" - else - einfo "Building with dev-db/cdb" - CDB_PATH="/usr/$(get_libdir)" - for i in cdb.a alloc.a buffer.a unix.a byte.a ; do - AUXLIBS_CDB="${AUXLIBS_CDB} ${CDB_PATH}/${i}" - done - fi - fi - - sed -i -e "/^RANLIB/s/ranlib/$(tc-getRANLIB)/g" "${S}"/makedefs - sed -i -e "/^AR/s/ar/$(tc-getAR)/g" "${S}"/makedefs - - emake makefiles shared=yes dynamicmaps=no pie=yes \ - shlib_directory="/usr/$(get_libdir)/postfix/MAIL_VERSION" \ - DEBUG="" CC="$(tc-getCC)" OPT="${CFLAGS}" CCARGS="${mycc}" AUXLIBS="${mylibs}" \ - AUXLIBS_CDB="${AUXLIBS_CDB}" AUXLIBS_LDAP="${AUXLIBS_LDAP}" \ - AUXLIBS_LMDB="${AUXLIBS_LMDB}" AUXLIBS_MYSQL="${AUXLIBS_MYSQL}" \ - AUXLIBS_PCRE="${AUXLIBS_PCRE}" AUXLIBS_PGSQL="${AUXLIBS_PGSQL}" \ - AUXLIBS_SQLITE="${AUXLIBS_SQLITE}" -} - -src_install() { - LD_LIBRARY_PATH="${S}/lib" \ - /bin/sh postfix-install \ - -non-interactive \ - install_root="${D}" \ - config_directory="/etc/postfix" \ - manpage_directory="/usr/share/man" \ - command_directory="/usr/sbin" \ - mailq_path="/usr/bin/mailq" \ - newaliases_path="/usr/bin/newaliases" \ - sendmail_path="/usr/sbin/sendmail" \ - || die "postfix-install failed" - - # Fix spool removal on upgrade - rm -Rf "${D}"/var - keepdir /var/spool/postfix - - # Install rmail for UUCP, closes bug #19127 - dobin auxiliary/rmail/rmail - - # Provide another link for legacy FSH - dosym ../sbin/sendmail /usr/$(get_libdir)/sendmail - - # Install qshape, posttls-finger and collate and tlstype - dobin auxiliary/qshape/qshape.pl - doman man/man1/qshape.1 - dobin bin/posttls-finger - doman man/man1/posttls-finger.1 - dobin auxiliary/collate/collate.pl - newdoc auxiliary/collate/README README.collate - dobin auxiliary/collate/tlstype.pl - dodoc auxiliary/collate/README.tlstype - - # Performance tuning tools and their manuals - dosbin bin/smtp-{source,sink} bin/qmqp-{source,sink} - doman man/man1/smtp-{source,sink}.1 man/man1/qmqp-{source,sink}.1 - - # Set proper permissions on required files/directories - keepdir /var/lib/postfix - fowners -R postfix:postfix /var/lib/postfix - fperms 0750 /var/lib/postfix - fowners root:postdrop /usr/sbin/post{drop,queue} - fperms 02755 /usr/sbin/post{drop,queue} - - keepdir /etc/postfix - keepdir /etc/postfix/postfix-files.d - if use mbox; then - mypostconf="mail_spool_directory=/var/spool/mail" - else - mypostconf="home_mailbox=.maildir/" - fi - LD_LIBRARY_PATH="${S}/lib" \ - "${D}"/usr/sbin/postconf -c "${D}"/etc/postfix \ - -e ${mypostconf} || die "postconf failed" - - insinto /etc/postfix - newins "${FILESDIR}"/smtp.pass saslpass - fperms 600 /etc/postfix/saslpass - - newinitd "${FILESDIR}"/postfix.rc6.${RC_VER} postfix - # do not start mysql/postgres unnecessarily - bug #359913 - use mysql || sed -i -e "s/mysql //" "${D}/etc/init.d/postfix" - use postgres || sed -i -e "s/postgresql //" "${D}/etc/init.d/postfix" - - dodoc *README COMPATIBILITY HISTORY PORTING RELEASE_NOTES* - mv "${S}"/examples "${D}"/usr/share/doc/${PF}/ - # postfix set-permissions expects uncompressed man files - docompress -x /usr/share/man - - pamd_mimic_system smtp auth account - - if use sasl; then - insinto /etc/sasl2 - newins "${FILESDIR}"/smtp.sasl smtpd.conf - fi - - # header files - insinto /usr/include/postfix - doins include/*.h - - if has_version mail-mta/postfix; then - # let the sysadmin decide when to change the compatibility_level - sed -i -e /^compatibility_level/"s/^/#/" "${D}"/etc/postfix/main.cf || die - fi - - systemd_dounit "${FILESDIR}/${PN}.service" -} - -pkg_postinst() { - if [[ ! -e /etc/mail/aliases.db ]] ; then - ewarn - ewarn "You must edit /etc/mail/aliases to suit your needs" - ewarn "and then run /usr/bin/newaliases. Postfix will not" - ewarn "work correctly without it." - ewarn - fi - - # check and fix file permissions - "${EROOT}"/usr/sbin/postfix set-permissions - - # configure tls - if use ssl ; then - if "${EROOT}"/usr/sbin/postfix tls all-default-client; then - elog "To configure client side TLS settings:" - elog "${EROOT}"/usr/sbin/postfix tls enable-client - fi - if "${EROOT}"/usr/sbin/postfix tls all-default-server; then - elog "To configure server side TLS settings:" - elog "${EROOT}"/usr/sbin/postfix tls enable-server - fi - fi -} diff --git a/mail-mta/postfix/postfix-3.6_pre20200610.ebuild b/mail-mta/postfix/postfix-3.6_pre20200610.ebuild new file mode 100644 index 000000000000..fc79ce127b82 --- /dev/null +++ b/mail-mta/postfix/postfix-3.6_pre20200610.ebuild @@ -0,0 +1,293 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +inherit pam systemd toolchain-funcs + +MY_PV="${PV/_pre/-}" +MY_SRC="${PN}-${MY_PV}" +MY_URI="ftp://ftp.porcupine.org/mirrors/postfix-release/experimental" +RC_VER="2.7" + +DESCRIPTION="A fast and secure drop-in replacement for sendmail" +HOMEPAGE="http://www.postfix.org/" +SRC_URI="${MY_URI}/${MY_SRC}.tar.gz" + +LICENSE="|| ( IBM EPL-2.0 )" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86" +IUSE="+berkdb cdb dovecot-sasl +eai ldap ldap-bind libressl lmdb memcached mbox mysql nis pam postgres sasl selinux sqlite ssl" + +DEPEND=">=dev-libs/libpcre-3.4 + dev-lang/perl + berkdb? ( >=sys-libs/db-3.2:* ) + cdb? ( || ( >=dev-db/tinycdb-0.76 >=dev-db/cdb-0.75-r4 ) ) + eai? ( dev-libs/icu:= ) + ldap? ( net-nds/openldap ) + ldap-bind? ( net-nds/openldap[sasl] ) + lmdb? ( >=dev-db/lmdb-0.9.11 ) + mysql? ( dev-db/mysql-connector-c:0= ) + nis? ( net-libs/libnsl ) + pam? ( sys-libs/pam ) + postgres? ( dev-db/postgresql:* ) + sasl? ( >=dev-libs/cyrus-sasl-2 ) + sqlite? ( dev-db/sqlite:3 ) + ssl? ( + !libressl? ( dev-libs/openssl:0= ) + libressl? ( >=dev-libs/libressl-2.9.1:0= ) + )" + +RDEPEND="${DEPEND} + acct-group/postfix + acct-group/postdrop + acct-user/postfix + memcached? ( net-misc/memcached ) + net-mail/mailbase + !mail-mta/courier + !mail-mta/esmtp + !mail-mta/exim + !mail-mta/mini-qmail + !mail-mta/msmtp[mta] + !mail-mta/netqmail + !mail-mta/nullmailer + !mail-mta/qmail-ldap + !mail-mta/sendmail + !mail-mta/opensmtpd + !mail-mta/ssmtp[mta] + !net-mail/fastforward + selinux? ( sec-policy/selinux-postfix )" + +REQUIRED_USE="ldap-bind? ( ldap sasl )" + +S="${WORKDIR}/${MY_SRC}" + +PATCHES=( + "${FILESDIR}/${PN}-libressl-certkey.patch" + "${FILESDIR}/${PN}-libressl-server.patch" +) + +src_prepare() { + default + sed -i -e "/^#define ALIAS_DB_MAP/s|:/etc/aliases|:/etc/mail/aliases|" \ + src/util/sys_defs.h || die "sed failed" + # change default paths to better comply with portage standard paths + sed -i -e "s:/usr/local/:/usr/:g" conf/master.cf || die "sed failed" +} + +src_configure() { + for name in CDB LDAP LMDB MYSQL PCRE PGSQL SDBM SQLITE + do + local AUXLIBS_${name}="" + done + + # Make sure LDFLAGS get passed down to the executables. + local mycc="-DHAS_PCRE" mylibs="${LDFLAGS} -ldl" + AUXLIBS_PCRE="$(pcre-config --libs)" + + use pam && mylibs="${mylibs} -lpam" + + if use ldap; then + mycc="${mycc} -DHAS_LDAP" + AUXLIBS_LDAP="-lldap -llber" + fi + + if use mysql; then + mycc="${mycc} -DHAS_MYSQL $(mysql_config --include)" + AUXLIBS_MYSQL="$(mysql_config --libs)" + fi + + if use postgres; then + mycc="${mycc} -DHAS_PGSQL -I$(pg_config --includedir)" + AUXLIBS_PGSQL="-L$(pg_config --libdir) -lpq" + fi + + if use sqlite; then + mycc="${mycc} -DHAS_SQLITE" + AUXLIBS_SQLITE="-lsqlite3 -lpthread" + fi + + if use ssl; then + mycc="${mycc} -DUSE_TLS" + mylibs="${mylibs} -lssl -lcrypto" + fi + + if use lmdb; then + mycc="${mycc} -DHAS_LMDB" + AUXLIBS_LMDB="-llmdb -lpthread" + fi + + if ! use eai; then + mycc="${mycc} -DNO_EAI" + fi + + # broken. and "in other words, not supported" by upstream. + # Use inet_protocols setting in main.cf + #if ! use ipv6; then + # mycc="${mycc} -DNO_IPV6" + #fi + + if use sasl; then + if use dovecot-sasl; then + # Set dovecot as default. + mycc="${mycc} -DDEF_SASL_SERVER=\\\"dovecot\\\"" + fi + if use ldap-bind; then + mycc="${mycc} -DUSE_LDAP_SASL" + fi + mycc="${mycc} -DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I/usr/include/sasl" + mylibs="${mylibs} -lsasl2" + elif use dovecot-sasl; then + mycc="${mycc} -DUSE_SASL_AUTH -DDEF_SERVER_SASL_TYPE=\\\"dovecot\\\"" + fi + + if ! use nis; then + mycc="${mycc} -DNO_NIS" + fi + + if ! use berkdb; then + mycc="${mycc} -DNO_DB" + if use cdb; then + # change default hash format from Berkeley DB to cdb + mycc="${mycc} -DDEF_DB_TYPE=\\\"cdb\\\"" + fi + fi + + if use cdb; then + mycc="${mycc} -DHAS_CDB -I/usr/include/cdb" + # Tinycdb is preferred. + if has_version dev-db/tinycdb ; then + einfo "Building with dev-db/tinycdb" + AUXLIBS_CDB="-lcdb" + else + einfo "Building with dev-db/cdb" + CDB_PATH="/usr/$(get_libdir)" + for i in cdb.a alloc.a buffer.a unix.a byte.a ; do + AUXLIBS_CDB="${AUXLIBS_CDB} ${CDB_PATH}/${i}" + done + fi + fi + + sed -i -e "/^RANLIB/s/ranlib/$(tc-getRANLIB)/g" "${S}"/makedefs + sed -i -e "/^AR/s/ar/$(tc-getAR)/g" "${S}"/makedefs + + emake makefiles shared=yes dynamicmaps=no pie=yes \ + shlib_directory="/usr/$(get_libdir)/postfix/MAIL_VERSION" \ + DEBUG="" CC="$(tc-getCC)" OPT="${CFLAGS}" CCARGS="${mycc}" AUXLIBS="${mylibs}" \ + AUXLIBS_CDB="${AUXLIBS_CDB}" AUXLIBS_LDAP="${AUXLIBS_LDAP}" \ + AUXLIBS_LMDB="${AUXLIBS_LMDB}" AUXLIBS_MYSQL="${AUXLIBS_MYSQL}" \ + AUXLIBS_PCRE="${AUXLIBS_PCRE}" AUXLIBS_PGSQL="${AUXLIBS_PGSQL}" \ + AUXLIBS_SQLITE="${AUXLIBS_SQLITE}" +} + +src_install() { + LD_LIBRARY_PATH="${S}/lib" \ + /bin/sh postfix-install \ + -non-interactive \ + install_root="${D}" \ + config_directory="/etc/postfix" \ + manpage_directory="/usr/share/man" \ + command_directory="/usr/sbin" \ + mailq_path="/usr/bin/mailq" \ + newaliases_path="/usr/bin/newaliases" \ + sendmail_path="/usr/sbin/sendmail" \ + || die "postfix-install failed" + + # Fix spool removal on upgrade + rm -Rf "${D}"/var + keepdir /var/spool/postfix + + # Install rmail for UUCP, closes bug #19127 + dobin auxiliary/rmail/rmail + + # Provide another link for legacy FSH + dosym ../sbin/sendmail /usr/$(get_libdir)/sendmail + + # Install qshape, posttls-finger and collate and tlstype + dobin auxiliary/qshape/qshape.pl + doman man/man1/qshape.1 + dobin bin/posttls-finger + doman man/man1/posttls-finger.1 + dobin auxiliary/collate/collate.pl + newdoc auxiliary/collate/README README.collate + dobin auxiliary/collate/tlstype.pl + dodoc auxiliary/collate/README.tlstype + + # Performance tuning tools and their manuals + dosbin bin/smtp-{source,sink} bin/qmqp-{source,sink} + doman man/man1/smtp-{source,sink}.1 man/man1/qmqp-{source,sink}.1 + + # Set proper permissions on required files/directories + keepdir /var/lib/postfix + fowners -R postfix:postfix /var/lib/postfix + fperms 0750 /var/lib/postfix + fowners root:postdrop /usr/sbin/post{drop,queue} + fperms 02755 /usr/sbin/post{drop,queue} + + keepdir /etc/postfix + keepdir /etc/postfix/postfix-files.d + if use mbox; then + mypostconf="mail_spool_directory=/var/spool/mail" + else + mypostconf="home_mailbox=.maildir/" + fi + LD_LIBRARY_PATH="${S}/lib" \ + "${D}"/usr/sbin/postconf -c "${D}"/etc/postfix \ + -e ${mypostconf} || die "postconf failed" + + insinto /etc/postfix + newins "${FILESDIR}"/smtp.pass saslpass + fperms 600 /etc/postfix/saslpass + + newinitd "${FILESDIR}"/postfix.rc6.${RC_VER} postfix + # do not start mysql/postgres unnecessarily - bug #359913 + use mysql || sed -i -e "s/mysql //" "${D}/etc/init.d/postfix" + use postgres || sed -i -e "s/postgresql //" "${D}/etc/init.d/postfix" + + dodoc *README COMPATIBILITY HISTORY PORTING RELEASE_NOTES* + mv "${S}"/examples "${D}"/usr/share/doc/${PF}/ + # postfix set-permissions expects uncompressed man files + docompress -x /usr/share/man + + pamd_mimic_system smtp auth account + + if use sasl; then + insinto /etc/sasl2 + newins "${FILESDIR}"/smtp.sasl smtpd.conf + fi + + # header files + insinto /usr/include/postfix + doins include/*.h + + if has_version mail-mta/postfix; then + # let the sysadmin decide when to change the compatibility_level + sed -i -e /^compatibility_level/"s/^/#/" "${D}"/etc/postfix/main.cf || die + fi + + systemd_dounit "${FILESDIR}/${PN}.service" +} + +pkg_postinst() { + if [[ ! -e /etc/mail/aliases.db ]] ; then + ewarn + ewarn "You must edit /etc/mail/aliases to suit your needs" + ewarn "and then run /usr/bin/newaliases. Postfix will not" + ewarn "work correctly without it." + ewarn + fi + + # check and fix file permissions + "${EROOT}"/usr/sbin/postfix set-permissions + + # configure tls + if use ssl ; then + if "${EROOT}"/usr/sbin/postfix tls all-default-client; then + elog "To configure client side TLS settings:" + elog "${EROOT}"/usr/sbin/postfix tls enable-client + fi + if "${EROOT}"/usr/sbin/postfix tls all-default-server; then + elog "To configure server side TLS settings:" + elog "${EROOT}"/usr/sbin/postfix tls enable-server + fi + fi +} -- cgit v1.2.3