summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Solano Gómez <gentoo@sattvik.com>2013-08-10 15:42:07 -0500
committerDaniel Solano Gómez <gentoo@sattvik.com>2013-08-10 15:46:22 -0500
commitc7f7a307abb369aa6cc9d02a67692d7203972086 (patch)
tree6e2fc4f566cc1cb5ce2e99db1cfe545e46f3276c
parentAdd new masters directive (diff)
downloadsattvik-c7f7a307abb369aa6cc9d02a67692d7203972086.tar.gz
sattvik-c7f7a307abb369aa6cc9d02a67692d7203972086.tar.bz2
sattvik-c7f7a307abb369aa6cc9d02a67692d7203972086.zip
Add nullmailer with corrected init script.
-rw-r--r--mail-mta/nullmailer/Manifest5
-rw-r--r--mail-mta/nullmailer/files/init.d-nullmailer-r358
-rw-r--r--mail-mta/nullmailer/files/nullmailer.service17
-rw-r--r--mail-mta/nullmailer/files/remotes.sample-1.1329
-rw-r--r--mail-mta/nullmailer/nullmailer-1.13-r1.ebuild137
5 files changed, 246 insertions, 0 deletions
diff --git a/mail-mta/nullmailer/Manifest b/mail-mta/nullmailer/Manifest
new file mode 100644
index 0000000..e7c0db7
--- /dev/null
+++ b/mail-mta/nullmailer/Manifest
@@ -0,0 +1,5 @@
+AUX init.d-nullmailer-r3 1318 SHA256 923ec20f88ffb991392ef4e7d2a8d6afb2ac21e8c2b4a27d1fc4ff69b91fa501 SHA512 e8559232d79ee4a7ce82e89bab4f567ebf272c0cf03207e110f4a2bae38d6e4a6818e29c10f9c87c11325cddc20f37cc8c3a38fa385703fa7b0d9706a26db6f1 WHIRLPOOL 88a4205837045b6d9d9c3c521163d04b1adc9bf6a75b3a765e4b1bc71dc244124cd6c5f604c7cddd5b22efc7b98f80b74a6e5c5f9f6281fb23df8fe6aeabf465
+AUX nullmailer.service 398 SHA256 a8083aa8c784fef00c6b0dab6733874edbbf1d01c2060bc512f83168eba8485a SHA512 09efea2dde679f5fda9afee376351c54a71742aff21457481ced5cffdcccd837e12c742c9f1cf65dfb63cbf73f2a7ddfa89d09dee1169a8a05daf47d0e5f73c9 WHIRLPOOL 2d6697dbf52f10ae3136828b018c7bd949e61e8d170001207aaa1d16f3ac60e3ec64d15e6ff73a32a40de1aaefa6dda4d55fa54e54f2735babe3241925310a19
+AUX remotes.sample-1.13 970 SHA256 56b9adc7762cfac88769ee6a87fa5057a42599a3d50a3cfd1c6d8d9327d02080 SHA512 8ff23a3f30e9f3b8bfca05f6e8bda44d8142b547c667d604e5e1f15b49342e0a098591578ef26c599a965d0b17e7237232e6713bb7b95b2af4e3bf6bde2604c6 WHIRLPOOL 39e87ec264d023c4d3852d1173bf9e87b8eb35fe3809c9ebfa3d2c9be81ad9a709fc1c873697be8ad80c01881566542cb8950a5e312ed9e06c65535c8cd4dac4
+DIST nullmailer-1.13.tar.gz 205431 SHA256 3f8861ebb1b46cea0a1caf1e6236e1e0d2a5a91def19551b7cad12eab676277d SHA512 96dcb3ddecde77a73e5ca1afa5167d35f965d04999f02cc2ef60b54ea7eb7a006e5cf5678fc34a54d4be4f9fd71bd0f784a8671aca40c70dbc307666c548e1d7 WHIRLPOOL b041f7cc33a257fad11c5f4c9bf74f8d849d9c45f0dc19be28268462b9d029c07e1d5802698e647a4208d5f66cac2177a1d12e49a03caac51e0244c3f9a0599c
+EBUILD nullmailer-1.13-r1.ebuild 4292 SHA256 4b711f8133cd38a84524e89f4c5b345e9aefed4a6e36cd0c95667a1dd80676be SHA512 60f626a76589bbcf784e0d85653091703140b7f4acc41340b192fe75526354fa37306cdbbc61ba1f6bb697d873dec550cc87a92d7682171bc5a3f3bcb6b478d6 WHIRLPOOL b4ecd2b38886d10b78a7437b3124f30c816c95691d0b31b64a771238147c81aaf0448006f1920a132b964450c1a8066475c0003747783798473deb2c08e0deb1
diff --git a/mail-mta/nullmailer/files/init.d-nullmailer-r3 b/mail-mta/nullmailer/files/init.d-nullmailer-r3
new file mode 100644
index 0000000..b4cf629
--- /dev/null
+++ b/mail-mta/nullmailer/files/init.d-nullmailer-r3
@@ -0,0 +1,58 @@
+#!/sbin/runscript
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License, v2 or later
+# $Header: /var/cvsroot/gentoo-x86/mail-mta/nullmailer/files/init.d-nullmailer-r2,v 1.2 2013/01/08 12:44:00 eras Exp $
+
+DAEMON="/usr/sbin/nullmailer-send"
+ARGS=""
+USER=nullmail
+GROUP=nullmail
+PIDFILE="/run/nullmailer.pid"
+
+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() {
+ checkconfig
+ ebegin "Starting nullmailer"
+ cd /var/nullmailer
+ start-stop-daemon --start --quiet --user ${USER}:${GROUP} \
+ --background --pidfile ${PIDFILE} --make-pidfile \
+ --exec ${DAEMON} -- ${ARGS}
+ eend $?
+}
+
+stop() {
+ checkconfig # to avoid init.d stopping svscan instance
+ ebegin "Stopping nullmailer"
+ cd /var/nullmailer
+ start-stop-daemon --stop --user ${USER} --exec ${DAEMON} --pidfile ${PIDFILE}
+ eend $?
+}
diff --git a/mail-mta/nullmailer/files/nullmailer.service b/mail-mta/nullmailer/files/nullmailer.service
new file mode 100644
index 0000000..a141cd0
--- /dev/null
+++ b/mail-mta/nullmailer/files/nullmailer.service
@@ -0,0 +1,17 @@
+[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
+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
new file mode 100644
index 0000000..34cc234
--- /dev/null
+++ b/mail-mta/nullmailer/files/remotes.sample-1.13
@@ -0,0 +1,29 @@
+# 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=<user> --pass=<pass>
+#
+# SMTP server supporting AUTH LOGIN
+# mailserver smtp --user=<user> --pass=<pass> --auth-login
+#
+# SMTP server with smtps (legacy - use starttls instead)
+# mailserver smtp --user=<user> --pass=<pass> --port=465 --ssl
+#
+# SMTP server on submission port with starttls
+# mailserver smtp --user=<user> --pass=<pass> --port=587 --starttls
+#
+# SMTP server on submission port with starttls and self-signed certificate
+# mailserver smtp --user=<user> --pass=<pass> --port=587 --starttls --insecure
diff --git a/mail-mta/nullmailer/nullmailer-1.13-r1.ebuild b/mail-mta/nullmailer/nullmailer-1.13-r1.ebuild
new file mode 100644
index 0000000..c04b883
--- /dev/null
+++ b/mail-mta/nullmailer/nullmailer-1.13-r1.ebuild
@@ -0,0 +1,137 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/mail-mta/nullmailer/nullmailer-1.13-r1.ebuild,v 1.2 2013/08/09 16:45:11 robbat2 Exp $
+
+EAPI=5
+
+inherit autotools eutils flag-o-matic multilib systemd user
+
+MY_P="${P/_rc/RC}"
+
+DEBIAN_PV=1.11
+DEBIAN_PR="2"
+DEBIAN_P="${PN}-${DEBIAN_PV}"
+DEBIAN_PF="${DEBIAN_P/-/_}-${DEBIAN_PR}"
+DEBIAN_SRC="${DEBIAN_PF}.debian.tar.gz"
+
+DESCRIPTION="Simple relay-only local mail transport agent"
+HOMEPAGE="http://untroubled.org/nullmailer/"
+SRC_URI="http://untroubled.org/${PN}/archive/${MY_P}.tar.gz"
+# mirror://debian/pool/main/n/${PN}/${DEBIAN_SRC}"
+
+SLOT="0"
+LICENSE="GPL-2"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="ssl"
+
+DEPEND="
+ sys-apps/groff
+ ssl? ( net-libs/gnutls )"
+RDEPEND="
+ virtual/logger
+ virtual/shadow
+ ssl? ( net-libs/gnutls )
+ !mail-mta/courier
+ !mail-mta/esmtp
+ !mail-mta/exim
+ !mail-mta/mini-qmail
+ !mail-mta/msmtp
+ !mail-mta/netqmail
+ !mail-mta/postfix
+ !mail-mta/qmail-ldap
+ !mail-mta/sendmail
+ !mail-mta/opensmtpd
+ !mail-mta/ssmtp"
+
+S=${WORKDIR}/${MY_P}
+
+src_prepare() {
+# sed -i -e 's/nullmailer-1.10/nullmailer-1.11/g' \
+# "${WORKDIR}"/debian/patches/*.diff || die
+# EPATCH_OPTS="-d ${S} -p1" \
+# epatch "${DISTDIR}"/${DEBIAN_SRC}
+ # why revert? Ask Robin when he is back!
+# EPATCH_OPTS="-d ${WORKDIR} -p0 -R" \
+# epatch "${WORKDIR}"/debian/patches/02_ipv6.diff
+ # this fixes the debian daemon/syslog to actually compile
+ sed -i.orig \
+ -e '/^nullmailer_send_LDADD/s, =, = ../lib/cli++/libcli++.a,' \
+ "${S}"/src/Makefile.am || die "Sed failed"
+ eautoreconf
+}
+
+pkg_setup() {
+ enewgroup nullmail 88
+ enewuser nullmail 88 -1 /var/nullmailer nullmail
+}
+
+src_configure() {
+ # Note that we pass a different directory below due to bugs in the makefile!
+ econf \
+ --localstatedir=/var \
+ $(use_enable ssl tls)
+}
+
+src_install () {
+ einstall localstatedir="${D}"/var/nullmailer
+ dodoc AUTHORS BUGS HOWTO INSTALL ChangeLog NEWS README TODO
+ # A small bit of sample config
+ insinto /etc/nullmailer
+ newins "${FILESDIR}"/remotes.sample-${PV} remotes
+ # This contains passwords, so should be secure
+ fperms 0640 /etc/nullmailer/remotes
+ fowners root:nullmail /etc/nullmailer/remotes
+ # daemontools stuff
+ dodir /var/nullmailer/service{,/log}
+ insinto /var/nullmailer/service
+ newins scripts/nullmailer.run run
+ fperms 700 /var/nullmailer/service/run
+ insinto /var/nullmailer/service/log
+ newins scripts/nullmailer-log.run run
+ fperms 700 /var/nullmailer/service/log/run
+ # usability
+ dodir /usr/$(get_libdir)
+ dosym /usr/sbin/sendmail usr/$(get_libdir)/sendmail
+ # permissions stuff
+ keepdir /var/log/nullmailer /var/nullmailer/{tmp,queue}
+ fperms 770 /var/log/nullmailer /var/nullmailer/{tmp,queue}
+ fowners nullmail:nullmail /usr/sbin/nullmailer-queue /usr/bin/mailq
+ fperms 4711 /usr/sbin/nullmailer-queue /usr/bin/mailq
+ fowners nullmail:nullmail /var/log/nullmailer /var/nullmailer/{tmp,queue,trigger}
+ fperms 660 /var/nullmailer/trigger
+ newinitd "${FILESDIR}"/init.d-nullmailer-r3 nullmailer
+ systemd_dounit "${FILESDIR}"/${PN}.service
+}
+
+pkg_postinst() {
+ [ ! -e "${ROOT}"/var/nullmailer/trigger ] && mkfifo "${ROOT}"/var/nullmailer/trigger
+ chown nullmail:nullmail "${ROOT}"/var/log/nullmailer "${ROOT}"/var/nullmailer/{tmp,queue,trigger}
+ chmod 770 "${ROOT}"/var/log/nullmailer "${ROOT}"/var/nullmailer/{tmp,queue}
+ chmod 660 "${ROOT}"/var/nullmailer/trigger
+
+ # This contains passwords, so should be secure
+ chmod 0640 /etc/nullmailer/remotes
+ chown root:nullmail /etc/nullmailer/remotes
+
+ if [[ -z ${REPLACING_VERSIONS} ]]; then
+ elog "To create an initial setup, please do:"
+ elog "emerge --config =${CATEGORY}/${PF}"
+ fi
+ #echo
+ #elog "To start nullmailer at boot you may use either the nullmailer init.d"
+ #elog "script, or emerge sys-process/supervise-scripts, enable the"
+ #elog "svscan init.d script and create the following link:"
+ #elog "ln -fs /var/nullmailer/service /service/nullmailer"
+ #echo
+}
+
+pkg_config() {
+ if [ ! -s "${ROOT}"/etc/nullmailer/me ]; then
+ einfo "Setting /etc/nullmailer/me"
+ /bin/hostname --fqdn > "${ROOT}"/etc/nullmailer/me
+ fi
+ if [ ! -s "${ROOT}"/etc/nullmailer/defaultdomain ]; then
+ einfo "Setting /etc/nullmailer/defaultdomain"
+ /bin/hostname --domain > "${ROOT}"/etc/nullmailer/defaultdomain
+ fi
+}