From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 03E201395E2 for ; Sat, 26 Nov 2016 14:49:37 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 5E018E0BCA; Sat, 26 Nov 2016 14:49:34 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 30639E0BCA for ; Sat, 26 Nov 2016 14:49:34 +0000 (UTC) Received: from oystercatcher.gentoo.org (unknown [IPv6:2a01:4f8:202:4333:225:90ff:fed9:fc84]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id BEA613412CB for ; Sat, 26 Nov 2016 14:49:32 +0000 (UTC) Received: from localhost.localdomain (localhost [127.0.0.1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 31E6F48B for ; Sat, 26 Nov 2016 14:49:31 +0000 (UTC) From: "Sergei Trofimovich" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Sergei Trofimovich" Message-ID: <1480171758.3ba4e746c3e6ec10fbb8df1b385b4e9ca85978df.slyfox@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: mail-mta/nullmailer/files/, mail-mta/nullmailer/ X-VCS-Repository: repo/gentoo X-VCS-Files: mail-mta/nullmailer/files/init.d-nullmailer-r6 mail-mta/nullmailer/nullmailer-2.0-r1.ebuild X-VCS-Directories: mail-mta/nullmailer/files/ mail-mta/nullmailer/ X-VCS-Committer: slyfox X-VCS-Committer-Name: Sergei Trofimovich X-VCS-Revision: 3ba4e746c3e6ec10fbb8df1b385b4e9ca85978df X-VCS-Branch: master Date: Sat, 26 Nov 2016 14:49:31 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Archives-Salt: a6dc0efd-d231-4b91-9c98-ae02f0bc3a38 X-Archives-Hash: f12fedf90c5534f9e1bc86d56b6ed81e commit: 3ba4e746c3e6ec10fbb8df1b385b4e9ca85978df Author: Sergei Trofimovich gentoo org> AuthorDate: Sat Nov 26 14:49:09 2016 +0000 Commit: Sergei Trofimovich gentoo org> CommitDate: Sat Nov 26 14:49:18 2016 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3ba4e746 mail-mta/nullmailer: remove '+=' bashism from init.d script Noticed as a sourcing failure on a system with 'sh' ->/bin/dash: dash: 9: /etc/init.d/nullmailer: start_stop_daemon_args+= --stdout /var/log/nullmailer/nullmailer.log: not found dash: 10: /etc/init.d/nullmailer: start_stop_daemon_args+= --stderr /var/log/nullmailer/nullmailer.log: not found Package-Manager: portage-2.3.2 mail-mta/nullmailer/files/init.d-nullmailer-r6 | 52 ++++++++++ mail-mta/nullmailer/nullmailer-2.0-r1.ebuild | 138 +++++++++++++++++++++++++ 2 files changed, 190 insertions(+) diff --git a/mail-mta/nullmailer/files/init.d-nullmailer-r6 b/mail-mta/nullmailer/files/init.d-nullmailer-r6 new file mode 100644 index 00000000..389329e --- /dev/null +++ b/mail-mta/nullmailer/files/init.d-nullmailer-r6 @@ -0,0 +1,52 @@ +#!/sbin/openrc-run +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License, v2 or later +# $Id$ + +command="/usr/sbin/nullmailer-send" + +start_stop_daemon_args="--chdir /var/spool/nullmailer --user nullmail:nullmail" +start_stop_daemon_args="${start_stop_daemon_args} --stdout /var/log/nullmailer/nullmailer.log" +start_stop_daemon_args="${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/nullmailer-2.0-r1.ebuild b/mail-mta/nullmailer/nullmailer-2.0-r1.ebuild new file mode 100644 index 00000000..4faea4c --- /dev/null +++ b/mail-mta/nullmailer/nullmailer-2.0-r1.ebuild @@ -0,0 +1,138 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=6 + +inherit autotools eutils flag-o-matic multilib systemd user + +DESCRIPTION="Simple relay-only local mail transport agent" +HOMEPAGE="http://untroubled.org/nullmailer/ https://github.com/bruceg/nullmailer" +SRC_URI="http://untroubled.org/${PN}/archive/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86" +IUSE="ssl" + +DEPEND=" + sys-apps/groff + ssl? ( net-libs/gnutls:0= )" +RDEPEND=" + virtual/logger + virtual/shadow + ssl? ( net-libs/gnutls:0= ) + !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" + +pkg_setup() { + enewgroup nullmail 88 + enewuser nullmail 88 -1 /var/spool/nullmailer nullmail +} + +src_prepare() { + default + sed -i.orig \ + -e '/\$(localstatedir)\/trigger/d' \ + "${S}"/Makefile.am || die "Sed failed" + sed \ + -e "s:^AC_PROG_RANLIB:AC_CHECK_TOOL(AR, ar, false)\nAC_PROG_RANLIB:g" \ + -i configure.ac || die + sed -e "s/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/" -i configure.ac || die + sed \ + -e "s#/usr/lib#\0exec#" -e "s#/usr/local#/usr#" \ + -e 's:/usr/etc/:/etc/:g' \ + -i doc/nullmailer-send.8 || die + eautoreconf +} + +src_configure() { + # https://github.com/bruceg/nullmailer/pull/31/commits + append-lfs-flags #471102 + econf \ + --localstatedir="${EPREFIX}"/var \ + $(use_enable ssl tls) +} + +src_install() { + default + + # 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/spool/nullmailer/service{,/log} + + insinto /var/spool/nullmailer/service + newins scripts/nullmailer.run run + fperms 700 /var/spool/nullmailer/service/run + + insinto /var/spool/nullmailer/service/log + newins scripts/nullmailer-log.run run + fperms 700 /var/spool/nullmailer/service/log/run + + # usability + dosym /usr/sbin/sendmail usr/$(get_libdir)/sendmail + + # permissions stuff + keepdir /var/log/nullmailer /var/spool/nullmailer/{tmp,queue} + fperms 770 /var/log/nullmailer + fowners nullmail:nullmail /usr/sbin/nullmailer-queue /usr/bin/mailq + fperms 4711 /usr/sbin/nullmailer-queue /usr/bin/mailq + + newinitd "${FILESDIR}"/init.d-nullmailer-r6 nullmailer + systemd_dounit scripts/${PN}.service +} + +pkg_postinst() { + if [ ! -e "${EROOT}var/spool/nullmailer/trigger" ]; then + mkfifo "${EROOT}var/spool/nullmailer/trigger" || die + fi + chown nullmail:nullmail \ + "${EROOT}"var/log/nullmailer \ + "${EROOT}"var/spool/nullmailer/{tmp,queue,trigger} || die + chmod 770 \ + "${EROOT}"var/log/nullmailer \ + "${EROOT}"var/spool/nullmailer/{tmp,queue} || die + chmod 660 "${EROOT}"var/spool/nullmailer/trigger || die + + # This contains passwords, so should be secure + chmod 0640 "${EROOT}"etc/nullmailer/remotes || die + chown root:nullmail "${EROOT}"etc/nullmailer/remotes || die + + if [[ -z ${REPLACING_VERSIONS} ]]; then + elog "To create an initial setup, please do:" + elog "emerge --config =${CATEGORY}/${PF}" + fi +} + +pkg_postrm() { + if [[ -e "${EROOT}var/spool/nullmailer/trigger" ]]; then + rm "${EROOT}var/spool/nullmailer/trigger" || die + fi +} + +pkg_config() { + if [ ! -s "${EROOT}etc/nullmailer/me" ]; then + einfo "Setting /etc/nullmailer/me" + hostname --fqdn > "${EROOT}etc/nullmailer/me" + fi + if [ ! -s "${EROOT}etc/nullmailer/defaultdomain" ]; then + einfo "Setting /etc/nullmailer/defaultdomain" + hostname --domain > "${EROOT}etc/nullmailer/defaultdomain" + fi +}