From 590b9b7b03bf4651e099949e318755af7cfa81b8 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sun, 1 Aug 2021 22:03:23 +0100 Subject: gentoo resync : 01.08.2021 --- mail-mta/postfix/Manifest | 8 +- mail-mta/postfix/postfix-3.6.1.ebuild | 2 +- mail-mta/postfix/postfix-3.6.2.ebuild | 286 ++++++++++++++++++++++++ mail-mta/postfix/postfix-3.7_pre20210707.ebuild | 286 ------------------------ mail-mta/postfix/postfix-3.7_pre20210717.ebuild | 286 ++++++++++++++++++++++++ 5 files changed, 578 insertions(+), 290 deletions(-) create mode 100644 mail-mta/postfix/postfix-3.6.2.ebuild delete mode 100644 mail-mta/postfix/postfix-3.7_pre20210707.ebuild create mode 100644 mail-mta/postfix/postfix-3.7_pre20210717.ebuild (limited to 'mail-mta/postfix') diff --git a/mail-mta/postfix/Manifest b/mail-mta/postfix/Manifest index 6428044afff4..99bcd8d29490 100644 --- a/mail-mta/postfix/Manifest +++ b/mail-mta/postfix/Manifest @@ -8,12 +8,14 @@ DIST postfix-3.5.8.tar.gz 4614733 BLAKE2B 13166e854f70987f981bb5e7e5dabfaa73b317 DIST postfix-3.5.9.tar.gz 4620852 BLAKE2B 66a7bd71e7f74c8f25963ed8d41f04f1f95e060fd23c848065a0e947e766efe058e6593ed8ce1f69528f5b2e9868756d0ea0622b3d77486852882622dd3bb872 SHA512 9ff3a33cdd5811e470d5c6cfa896fa76e4d3257b139deec5f420d18e34232f327b7c8496c5d13566c6f9ae1fdf8719feb9981372b2869b0208a2eb3a1daaeadd DIST postfix-3.6.0.tar.gz 4748506 BLAKE2B f4692500cb78e82cede48d750eb86db61dc67ba1d69d220d24c965b57941402a5bf157b4a69d65133d37ce3d9e1341260d07ebd4477184b3caa56b22fd13b4f5 SHA512 af326472333935de111d7f7025af53a1dfd84382c2d2891e91624ce665c258831f28d92fd73d1ab68f82192d9848025bd30d16eb48b3912b46e3fb50dbf194bf DIST postfix-3.6.1.tar.gz 4748754 BLAKE2B c64d8f4c12cd7cb39bd15c371c20db4aa61b39120b6c078eda7c48c94d65e181b51ac8f74f3231791fc3ad6c0d04f74975f50776f984ffa9b9f8a4c5c99cbade SHA512 6f83a6aa55bd442fe005b35c7470483ff5ba6781121f783b07ef454580354fc5c85d0d5106936810d6bef0f5592937f0863eec3b82e138caac7694e2a3bb7bc3 -DIST postfix-3.7-20210707.tar.gz 4749553 BLAKE2B 97c6bc141ec39c5e64a3155067e29a06947c0396cf69948f90a1886198a4dd2b9c3431d282a8b9d0a6df38fb2e07c6e7f02c05f7f2079437416546d4cd374858 SHA512 b42a9c4343eed7e836eb2210b969f49aa8b9293c12c555923e61023f55be3f5ff0c7c2c07fcbee599fe5b77c16d854c8d5b8dcbc2f3a1fff2710884b44b4a509 +DIST postfix-3.6.2.tar.gz 4749530 BLAKE2B 349f3eb2995fe72c89e374a2f95cbb09d4a4f5a5c896e340a2a166ffcb2c498ba514022a59a17d2731807f6dadc03f804a3d4b16127dd2d6addb825558b7ffd6 SHA512 464ce9ec77e637ede91123472a0383b2bfda52102f9e9852c7191016d4fda2e14f302f2db9793887c182688c2a14dde6eeda728523196a627a8028f99555a4d9 +DIST postfix-3.7-20210717.tar.gz 4750293 BLAKE2B 59eb90f451790db9f398da79736a23c3ce64a3da2978a597b57ca8df5480739a20a7eb68a100342465b5af3764acaab46b5863207e50e5ba07553777ffd40f51 SHA512 8166c5f2a5d17e042723dbe51c128fa9ba0109de1c29a562cef8a9dbb3517ac2ac0e936467e7877e2c27ac0ef6012a4fa0159d1670ee49f6177a7702f59e9a3c EBUILD postfix-3.5.10.ebuild 8698 BLAKE2B 40aed4bdcc1a9eddec5e0660999adea5b8f31a04dcbd0494155940c8b9545ba232796ec059632d0c863b306a32deeac109e93c6bd3c4a1d2c19facb26e59ff56 SHA512 603e713ce215b54ff9726f27cbfa70d5f09d35e892f21ea8644ba3c1e8164f4c520922078f2e24284543791369fadee52b566d75fd5fdf9d7027c7e4af428a13 EBUILD postfix-3.5.11.ebuild 8698 BLAKE2B 40aed4bdcc1a9eddec5e0660999adea5b8f31a04dcbd0494155940c8b9545ba232796ec059632d0c863b306a32deeac109e93c6bd3c4a1d2c19facb26e59ff56 SHA512 603e713ce215b54ff9726f27cbfa70d5f09d35e892f21ea8644ba3c1e8164f4c520922078f2e24284543791369fadee52b566d75fd5fdf9d7027c7e4af428a13 EBUILD postfix-3.5.8-r1.ebuild 8693 BLAKE2B e0ca3baeabcb4b0e703115c6839b4b0e0d75c789421c8fbd0aaeccff22630f797f11e5b8cc5ae1f09d21773f257a5edc117392b377d9c743e5de62cf42289540 SHA512 7ff76d64ab024375f4d015634898f1f8475d349ed9718c40e02ffad2abddfb32676b076168bc0bdb35f78b4e95df596d1fd286b95b9d5a7fb57d4c8188dd46b2 EBUILD postfix-3.5.9-r1.ebuild 8698 BLAKE2B 40aed4bdcc1a9eddec5e0660999adea5b8f31a04dcbd0494155940c8b9545ba232796ec059632d0c863b306a32deeac109e93c6bd3c4a1d2c19facb26e59ff56 SHA512 603e713ce215b54ff9726f27cbfa70d5f09d35e892f21ea8644ba3c1e8164f4c520922078f2e24284543791369fadee52b566d75fd5fdf9d7027c7e4af428a13 EBUILD postfix-3.6.0.ebuild 7984 BLAKE2B 30ccb9c5339e0cf795b97e6228a5190d0bbce455d1a254b536fc684f767e82ed54d80f3291847ea0dc52f5c05d9c0e5e0309f5f4fad05bc8fa49de98c48c3e11 SHA512 5cefa9c8a1a6b83f0158e704f69fd2f6a9633c801e3051c5abe6fcff5c4213c514b93629c0f620823d0166c329126967b10fb51206e43b0cda03e0f145966634 -EBUILD postfix-3.6.1.ebuild 7980 BLAKE2B c939c0a53f96b1b30fca6375cd810e67d4cc20d7f79fe14da80e2c9cd7e88a04fa6bf8ece49dcf79e8c227cb7dbe1d2fbcf06a362316461f83eb09e4ee2318c8 SHA512 098b522c7c6217e7957b7e59c233ab9658d2257797c33db08da1cfdd7b3950b5e17a93e4a751c8a2e59ea81f22e3f8d5ba87374024e01fbcf04095a03ee25501 -EBUILD postfix-3.7_pre20210707.ebuild 7917 BLAKE2B 504cae64c2c323d844e355600f1d5daee40524a940b54d2a4d28e3a870a0d3628be5cbb1cb1c471544764cc1db4ab49378bc54feb1f9c84214aca1c3a0b28ed1 SHA512 f0011add1c12ae383a03ac9f3989509cbc86aa820680151854e0f783ec387fc571345a0f1a2b78966838bfbdb2f225584d5ee3303bbc33f84729053fd08b25f7 +EBUILD postfix-3.6.1.ebuild 7979 BLAKE2B 907b1753f88fc5fd0f13302df01e193c77dcc8f3c5256f094184cacf31a28fc06fd075157c6ffe9e0cee09d80ef854d233c3d728a92cddaaeefeeda288c1ddda SHA512 69cc8459317bfc97b3b4fd204f760d45cf52a750580032650763144f56a302d667b045136415a6763a5f0423e90b5e3788717cea45b0ad7a8f3a21d5523415b1 +EBUILD postfix-3.6.2.ebuild 7917 BLAKE2B 58ccfe215e40993ce6dcc20646a3083d2e4ec8c7e6575b65facf3060a15d4ea7184e2ae6130336099ad908b8283eef8947c0fc4db5532801f77c930082b8b5b5 SHA512 aabb59f03bef2d4a8e917c102da12f510b33dd148fa25cd8306c06bb7bd9aafef0d1b41f8e87f768b4927b33c6ebe82290cf3293bd0e0a32739489dab1a8b10d +EBUILD postfix-3.7_pre20210717.ebuild 7917 BLAKE2B 504cae64c2c323d844e355600f1d5daee40524a940b54d2a4d28e3a870a0d3628be5cbb1cb1c471544764cc1db4ab49378bc54feb1f9c84214aca1c3a0b28ed1 SHA512 f0011add1c12ae383a03ac9f3989509cbc86aa820680151854e0f783ec387fc571345a0f1a2b78966838bfbdb2f225584d5ee3303bbc33f84729053fd08b25f7 MISC metadata.xml 939 BLAKE2B 01474efe62df1eda9a3ba5976847064d615b3c32d9c71838354ef375c851c7ab4d1fcc2bc0d2945ce3d259fc6a698938cee6d1354c4e0f02f1e66395e377a0c5 SHA512 8602700c2a21b66ecf2c024c06ce23452f7effd9c06a5d58c1ccb351bcdef43a3c89575cc9136efc72fcd4e06ecb0654017b51bb145e7ffeeda771e3f4e7a673 diff --git a/mail-mta/postfix/postfix-3.6.1.ebuild b/mail-mta/postfix/postfix-3.6.1.ebuild index 3d5e70d6653f..658ac683bd4a 100644 --- a/mail-mta/postfix/postfix-3.6.1.ebuild +++ b/mail-mta/postfix/postfix-3.6.1.ebuild @@ -15,7 +15,7 @@ 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" +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=" diff --git a/mail-mta/postfix/postfix-3.6.2.ebuild b/mail-mta/postfix/postfix-3.6.2.ebuild new file mode 100644 index 000000000000..84f99b91b850 --- /dev/null +++ b/mail-mta/postfix/postfix-3.6.2.ebuild @@ -0,0 +1,286 @@ +# Copyright 1999-2021 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.7_pre20210707.ebuild b/mail-mta/postfix/postfix-3.7_pre20210707.ebuild deleted file mode 100644 index 7badc66a67e8..000000000000 --- a/mail-mta/postfix/postfix-3.7_pre20210707.ebuild +++ /dev/null @@ -1,286 +0,0 @@ -# Copyright 1999-2021 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 ~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, 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.7_pre20210717.ebuild b/mail-mta/postfix/postfix-3.7_pre20210717.ebuild new file mode 100644 index 000000000000..7badc66a67e8 --- /dev/null +++ b/mail-mta/postfix/postfix-3.7_pre20210717.ebuild @@ -0,0 +1,286 @@ +# Copyright 1999-2021 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 ~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, 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 +} -- cgit v1.2.3