summaryrefslogtreecommitdiff
path: root/mail-mta/postfix
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-05-12 16:42:50 +0300
committerV3n3RiX <venerix@koprulu.sector>2022-05-12 16:42:50 +0300
commit752d6256e5204b958b0ef7905675a940b5e9172f (patch)
tree330d16e6362a49cbed8875a777fe641a43376cd3 /mail-mta/postfix
parent0c100b7dd2b30e75b799d806df4ef899fd98e1ea (diff)
gentoo resync : 12.05.2022
Diffstat (limited to 'mail-mta/postfix')
-rw-r--r--mail-mta/postfix/Manifest12
-rw-r--r--mail-mta/postfix/postfix-3.6.6.ebuild286
-rw-r--r--mail-mta/postfix/postfix-3.7.1.ebuild (renamed from mail-mta/postfix/postfix-3.8_pre20220407.ebuild)4
-rw-r--r--mail-mta/postfix/postfix-3.7.2.ebuild (renamed from mail-mta/postfix/postfix-3.7.0-r1.ebuild)18
-rw-r--r--mail-mta/postfix/postfix-3.8_pre20220509.ebuild292
5 files changed, 596 insertions, 16 deletions
diff --git a/mail-mta/postfix/Manifest b/mail-mta/postfix/Manifest
index 280425b32326..b30fe967a911 100644
--- a/mail-mta/postfix/Manifest
+++ b/mail-mta/postfix/Manifest
@@ -3,9 +3,13 @@ AUX postfix.service 662 BLAKE2B dcf9ceb71ad483b580d126fcb5ac68889cdeb898df3333d3
AUX smtp.pass 29 BLAKE2B 589915bd2856fa64e22caa12fca54ef342eb07606de38d3879c13ac395413c84de6c3b733c83cc0625a4433167efcc7d504b2f87fa26c05b2facde9c3d103021 SHA512 a8a940099a77ea0547004daf5392a6efc0cd643f10072803d65e37763012464ad25b1b925ae9e32bffb3c3e8a5d4b2d3bb5619a174d58fdc4ea5d4090db0d365
AUX smtp.sasl 42 BLAKE2B 67e9108101779b6027fa1e5cc7c9256a606d440e15bb037a0da186e6b4983ab26e88ede2f0604737c78144c03e182f66005062f1d49e10443d1ddb9757461d1f SHA512 a48e2bd173c4443dd2c389f6973a541dbcba4223b52b42b409a68d934a7fc82a98d4027267befcd5db6ec628cce6a9dffdf044e6fbd774b6e748f07f4106db47
DIST postfix-3.6.5.tar.gz 4751485 BLAKE2B 7d53ccf76d978db269fe0ab8641abcb3ba91a72c97fa739a2c8ea80c45bb3ecdaca51d08f7db03582887a0cdcdf96be423e3e35b4f2ab2fbb0fbe4e98dd60758 SHA512 510c7b387b38c8683bda33371468c1c1209285baca7d8f237fdb668b313fa4b4d6727f7e4eb79fc81c4155f0839b4e95995dff186e62621b26e5b8b31cff15d5
-DIST postfix-3.7.0.tar.gz 4823087 BLAKE2B 7388ad49862c97e20179a2d3ed26069f21e8a578790fcb8adc9f5b648202269bd4c07905931237dab905d991002bcfd9f03d11e6a85b46fcf0e3b72412d852eb SHA512 f2fb5c0399100c19e428b68728a8ce62b1fb74d365038373f22ed698c1d0fece506b3f1335c322b949875a4a9fa96fa0a7680b12641d596d09615e8fef061da4
-DIST postfix-3.8-20220407.tar.gz 4807770 BLAKE2B fb731bb9741a74b4fdcf39f7a8b732c5b80501c82212d939bc14a5b7bac12eb21888ae9c7f6e036dff23c59bf7ea3562ad03d6594e4240a1e43417feaa62110f SHA512 19c8cfa2ad214de4624d6b17c7ad4ef7b658266f0fb06bb6043d83b3e109d5dc0c7a6a54aa3950bf1928503412a6f7ea31c272686c3a40a1987e8946cd75e31b
+DIST postfix-3.6.6.tar.gz 4752461 BLAKE2B f2508233bfe72706450af0f61d58ef1b5781cebef28dbf42a3f9772f7033ead65542e6b906b35e9ec2adfe05db3f992a7f39287a6439cc60672d7313c52fe3e6 SHA512 ee2e1a59c99b9869c401f8a42afdc094c4b2ba804ed8f9f366c33b36b8d2c66d8362d5a32fbe72f4b2c9a431c232b60ada9fce29dec60ac4610220e0f5c6fb77
+DIST postfix-3.7.1.tar.gz 4824081 BLAKE2B d0bfdbc5105407e5143823e8e14b49e60d5c248eac435279a5fe803b370b46a56de9aff39fdf94398758863f753e43e889e2dffbb393ab63cf486d4fd3f5cf99 SHA512 2a8916eae4b0a4f4e055e1dbae1b9655b1eabcb22d911599a63fb9a1900174c9eab24280bee2ddab42db6674c6b4362964a2a41f67fcb18f0c8c41ad0100b044
+DIST postfix-3.7.2.tar.gz 4824424 BLAKE2B 3f7aaba222b64274f756ea37b8ac06c29469d9183879deb4942a709d75783f4a8ca81204971b6658aba4b5bea46ed9c21b14e1f8fc6b613f257acd3aad16c170 SHA512 23bb1af6bf3743c741f108da136f64613f9062d121dc459944ac192275335952cd309ffec6c380f5d36430605eec538c2549c3fdee9d4597f739d9d1b0a033fc
+DIST postfix-3.8-20220509.tar.gz 4825411 BLAKE2B 0fcbfa2389092607f460041f12660b73224ecfc1278fd4ff0c1f84745fd22a4ab86914b0ecbda00a17fa75a8e79f281ebec66ca2981a9a136b75596f01e8bd3b SHA512 6e0c49acf8a9584c4ef281246aecfa478a34cc9001ea7b31b973f399cef1928a8fce18c5fd4b5c6d27e7c892e7c71a121583f14cd776122eb6cc71e3154b6195
EBUILD postfix-3.6.5-r2.ebuild 7919 BLAKE2B a88bc775ef810df0889974c9048cac9d44246bee07619eb4149324565c32214441792a3a840ae812210404b6e821851a3e3855469d14c9d53c3d7cf712464cc6 SHA512 3568560769a1781721182fb9ae5fd4518e3a70e23db1fd539ee032778cd6bf6c3361c10b3d65f17b0c88d6d05ef8e577a7041722d57c1f39ba78cda398d71720
-EBUILD postfix-3.7.0-r1.ebuild 8067 BLAKE2B ce219a3680e65c6c8d63950765357b893576c8572149d01e04656a91070cc3dfd5a5a1da1c60d05c89ed40d805281c6c0a5c8aa8945cebf2213e45b55e19ecda SHA512 b1d6c5951db3cad2c2ca9487d24bd26bf4faf92c4b9ca6908f35ead42db50d82f6e3de432674009ce99bb9daf359ff588131784a95e3dc56fa055533ea39d4cc
-EBUILD postfix-3.8_pre20220407.ebuild 7934 BLAKE2B a2f53f8c8d42c3cb4c2a8ca267855afd6fa81db2c1fab638f1dc967262feb1cd8f0bf0a2ff3cacf9b0a426b08eec4f642144a5e79f6ecab6845d492a0b17bb95 SHA512 0844058b5e2ee32d1bdb93ee409a630722198159f45925b22cf82711364af9ce1b6be25b007e056f9342152901bbd9f65af7be1ed2a796b4173a759dd6cdda60
+EBUILD postfix-3.6.6.ebuild 7925 BLAKE2B f6a2b8e247b2e75bb8a255a32fa32340a9aeeafcf63bfb655318be9a18e8a2af3f9f2e7ca527c7a06db3e19e145af702bb59933465732ba822149e3fde582074 SHA512 351c1b7b90a4c330f07f3ff8fc2a47b592b2068ce39909bd03ea927b5e9a1ef8198addcb0652a1b7f5a61754c778e9cbe649c005bf8a644a324ab6a306c069fe
+EBUILD postfix-3.7.1.ebuild 7931 BLAKE2B 8efa457dfdd582d00374a38fdbfabd9a6437be4a0e46597a87625e42dff74d73c267eb991f1957c8523918ab442100fb5e735ed049620454de9e9086f01a64f8 SHA512 7a151f8b803b1efedcd128c48f789b1777570eb4b37ba69f06b715ea3d14384ed86fd5a7f013f41f5b1968f12f8742fdecd38e3b389b45fc560200f306d8e2e8
+EBUILD postfix-3.7.2.ebuild 8022 BLAKE2B df96dc5ac7f942c4edc0e9a0ebccc3ec14d74156e60903ae55d213edadbbbbeaf84f9a38e0b7bd594789e451cb4c7a61b3ae8c5bd5b02551b7b065ddc9e120b8 SHA512 1a43136a74a6068c76cd0f542a4bd856e35edccf8d83494bb940e7c1d3d9032704b445160b76f949970d3173c596f6780d99f665536299cc4ac8faab2b64bd9f
+EBUILD postfix-3.8_pre20220509.ebuild 8060 BLAKE2B f47bbada9c7b165e8b3abee8eb88b5f36148cb7af19a216d4a3d80b7843e8fa39c59e99254fd30c9e9e002269b114ebb83df28ea6baebfe3b3217a4d2dcdf4c3 SHA512 0bd3c50a093847f7b687a0988f332167d33a9219aa9e315af48ffa20df6ad4a9c85c1c449cb781c2ed5f2342040b335ff23926be050bc769ff11b9a130e9f9de
MISC metadata.xml 867 BLAKE2B 1839d35c91007bb07e1a722b6b4751e9f7754e00109859efe5850df16486bafbaeb019326d006438471678553aca9474462fa32eaba445362113ced6927bf4ab SHA512 ff898bdce2b60bc52a0d326f8f8221bd474cc4fa31def2ccc5526ba59ad396b0b26f22cc98ca4e1181e3c38e5476615e53bde2db1e643ae5b9209ac581ecc1fd
diff --git a/mail-mta/postfix/postfix-3.6.6.ebuild b/mail-mta/postfix/postfix-3.6.6.ebuild
new file mode 100644
index 000000000000..e928304a3b20
--- /dev/null
+++ b/mail-mta/postfix/postfix-3.6.6.ebuild
@@ -0,0 +1,286 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+inherit pam systemd toolchain-funcs
+
+MY_PV="${PV/_rc/-RC}"
+MY_SRC="${PN}-${MY_PV}"
+MY_URI="ftp://ftp.porcupine.org/mirrors/postfix-release/official"
+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 ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
+IUSE="+berkdb cdb dovecot-sasl +eai ldap ldap-bind lmdb memcached mbox mysql nis pam postgres sasl selinux sqlite ssl"
+
+DEPEND="
+ acct-group/postfix
+ acct-group/postdrop
+ acct-user/postfix
+ >=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? ( >=dev-libs/openssl-1.1.1:0= )
+ "
+
+RDEPEND="${DEPEND}
+ memcached? ( net-misc/memcached )
+ net-mail/mailbase
+ !mail-mta/courier
+ !mail-mta/esmtp
+ !mail-mta/exim
+ !mail-mta/msmtp[mta]
+ !mail-mta/netqmail
+ !mail-mta/nullmailer
+ !mail-mta/sendmail
+ !mail-mta/opensmtpd
+ !mail-mta/ssmtp[mta]
+ selinux? ( sec-policy/selinux-postfix )"
+
+REQUIRED_USE="ldap-bind? ( ldap sasl )"
+
+S="${WORKDIR}/${MY_SRC}"
+
+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
+
+ if use pam; then
+ pamd_mimic_system smtp auth account
+ fi
+
+ 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.8_pre20220407.ebuild b/mail-mta/postfix/postfix-3.7.1.ebuild
index d0b51c08b7fd..fb6f54abaadd 100644
--- a/mail-mta/postfix/postfix-3.8_pre20220407.ebuild
+++ b/mail-mta/postfix/postfix-3.7.1.ebuild
@@ -4,9 +4,9 @@
EAPI=8
inherit pam systemd toolchain-funcs
-MY_PV="${PV/_pre/-}"
+MY_PV="${PV/_rc/-RC}"
MY_SRC="${PN}-${MY_PV}"
-MY_URI="ftp://ftp.porcupine.org/mirrors/postfix-release/experimental"
+MY_URI="ftp://ftp.porcupine.org/mirrors/postfix-release/official"
RC_VER="2.7"
DESCRIPTION="A fast and secure drop-in replacement for sendmail"
diff --git a/mail-mta/postfix/postfix-3.7.0-r1.ebuild b/mail-mta/postfix/postfix-3.7.2.ebuild
index e99f67f1d0df..59bf377e426e 100644
--- a/mail-mta/postfix/postfix-3.7.0-r1.ebuild
+++ b/mail-mta/postfix/postfix-3.7.2.ebuild
@@ -22,7 +22,7 @@ DEPEND="
acct-group/postfix
acct-group/postdrop
acct-user/postfix
- || ( dev-libs/libpcre2:0 dev-libs/libpcre )
+ dev-libs/libpcre2:0
dev-lang/perl
berkdb? ( >=sys-libs/db-3.2:* )
cdb? ( || ( >=dev-db/tinycdb-0.76 >=dev-db/cdb-0.75-r4 ) )
@@ -75,13 +75,8 @@ src_configure() {
local mycc="" mylibs="${LDFLAGS} -ldl"
# libpcre is EOL. prefer libpcre2
- if has_version dev-libs/libpcre2; then
- mycc="-DHAS_PCRE=2"
- AUXLIBS_PCRE="$(pcre2-config --libs8)"
- else
- mycc="-DHAS_PCRE=1"
- AUXLIBS_PCRE="$(pcre-config --libs)"
- fi
+ mycc=" -DHAS_PCRE=2"
+ AUXLIBS_PCRE="$(pcre2-config --libs8)"
use pam && mylibs="${mylibs} -lpam"
@@ -225,7 +220,7 @@ src_install() {
keepdir /etc/postfix
keepdir /etc/postfix/postfix-files.d
if use mbox; then
- mypostconf="mail_spool_directory=/var/spool/mail"
+ mypostconf="mail_spool_directory=/var/mail"
else
mypostconf="home_mailbox=.maildir/"
fi
@@ -269,7 +264,10 @@ src_install() {
}
pkg_postinst() {
- if [[ ! -e /etc/mail/aliases.db ]] ; then
+ # do not assume berkdb
+ if [[ ! -e /etc/mail/aliases.db \
+ && ! -e /etc/mail/aliases.cdb \
+ && ! -e /etc/mail/aliases.lmdb ]] ; then
ewarn
ewarn "You must edit /etc/mail/aliases to suit your needs"
ewarn "and then run /usr/bin/newaliases. Postfix will not"
diff --git a/mail-mta/postfix/postfix-3.8_pre20220509.ebuild b/mail-mta/postfix/postfix-3.8_pre20220509.ebuild
new file mode 100644
index 000000000000..c97c5be2d78a
--- /dev/null
+++ b/mail-mta/postfix/postfix-3.8_pre20220509.ebuild
@@ -0,0 +1,292 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+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 ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
+IUSE="+berkdb cdb dovecot-sasl +eai ldap ldap-bind lmdb mbox memcached mysql nis pam postgres sasl selinux sqlite ssl"
+
+DEPEND="
+ acct-group/postfix
+ acct-group/postdrop
+ acct-user/postfix
+ dev-libs/libpcre2:0
+ 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? ( >=dev-libs/openssl-1.1.1:0= )
+ "
+
+RDEPEND="${DEPEND}
+ memcached? ( net-misc/memcached )
+ net-mail/mailbase
+ !mail-mta/courier
+ !mail-mta/esmtp
+ !mail-mta/exim
+ !mail-mta/msmtp[mta]
+ !mail-mta/netqmail
+ !mail-mta/nullmailer
+ !mail-mta/sendmail
+ !mail-mta/opensmtpd
+ !mail-mta/ssmtp[mta]
+ selinux? ( sec-policy/selinux-postfix )"
+
+REQUIRED_USE="ldap-bind? ( ldap sasl )"
+
+S="${WORKDIR}/${MY_SRC}"
+
+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="" mylibs="${LDFLAGS} -ldl"
+
+ # libpcre is EOL. prefer libpcre2
+ mycc=" -DHAS_PCRE=2"
+ AUXLIBS_PCRE="$(pcre2-config --libs8)"
+
+ 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"
+ # change default database type
+ if use cdb; then
+ mycc="${mycc} -DDEF_DB_TYPE=\\\"cdb\\\""
+ elif use lmdb; then
+ mycc="${mycc} -DDEF_DB_TYPE=\\\"lmdb\\\""
+ fi
+ fi
+
+ if use cdb; then
+ mycc="${mycc} -DHAS_CDB -I/usr/include/cdb"
+ # Tinycdb is preferred.
+ if has_version dev-db/tinycdb ; then
+ AUXLIBS_CDB="-lcdb"
+ else
+ 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, 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,log}
+ fperms 02755 /usr/sbin/post{drop,queue,log}
+
+ keepdir /etc/postfix
+ keepdir /etc/postfix/postfix-files.d
+ if use mbox; then
+ mypostconf="mail_spool_directory=/var/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*
+ dodoc -r README_FILES/ examples/
+ # postfix set-permissions expects uncompressed man files
+ docompress -x /usr/share/man
+
+ if use pam; then
+ pamd_mimic_system smtp auth account
+ fi
+
+ 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() {
+ # do not assume berkdb
+ if [[ ! -e /etc/mail/aliases.db \
+ && ! -e /etc/mail/aliases.cdb \
+ && ! -e /etc/mail/aliases.lmdb ]] ; 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
+
+ # hint for configuring tls
+ if use ssl ; then
+ if "${EROOT}"/usr/sbin/postfix tls all-default-client; then
+ elog "To configure client side TLS settings, please run:"
+ 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, please run:"
+ elog "${EROOT}"/usr/sbin/postfix tls enable-server
+ fi
+ fi
+}