--8<-- PKGBUILD --8<--
# Contributor: Roberto Alsina <ralsina at kde.org>
# Contributor: Kurt J. Bosch <kjb-temp-2009 at alpenjodel.de>
pkgname=nullmailer
pkgver=1.05
pkgrel=4.1
pkgdesc="a sendmail/qmail/etc replacement MTA for hosts which relay to a fixed set of smart relays."
arch=('i686' 'x86_64')
url="http://www.untroubled.org/nullmailer/"
license=("GPL")
depends=('gcc-libs')
backup=()
options=()
install=nullmailer.install
changelog=nullmailer.changelog
source=(http://www.untroubled.org/nullmailer/$pkgname-$pkgver.tar.gz \
nullmailer.daemon )
md5sums=('35124cc05f893efba1310e2ec7c876ff'
'a2f1fc46b80aedcc5d7eb3b80957d880')
build() {
cd $srcdir/$pkgname-$pkgver
./configure --prefix=/usr --libexecdir=/usr/lib \
--sysconfdir=/etc --localstatedir=/var
make || return 1
make DESTDIR=$pkgdir install || return 1
install -D -m 0755 ../nullmailer.daemon $pkgdir/etc/rc.d/nullmailer || return 1
# remove pipe and create on install to work around makepkg hang on grep -R
rm $pkgdir/var/nullmailer/trigger
}
--8<-- nullmailer.changelog --8<--
2009-08-02 Kurt J. Bosch <kjb-temp-2009 at alpenjodel.de>
* 1.05-4.1 :
dropped runit depend
added daemon script
fixed arch
remove pipe and create on install to work around makepkg hang on grep -R
use relative paths in install
added ChangeLog.
--8<-- nullmailer.daemon --8<--
#!/bin/bash
# /etc/rc.d/nullmailer
#
. /etc/rc.conf
. /etc/rc.d/functions
DAEMON=/usr/sbin/nullmailer-send
PID=$( pidof -o %PPID -x $DAEMON )
case "$1"
in start )
stat_busy "Starting Nullmailer daemon"
if [[ -x $DAEMON && -z $PID ]] &&
/bin/su -c "$DAEMON >/dev/null 2>&1 &" - nullmail
then
add_daemon "${0##*/}"
stat_done
else
stat_fail
fi
;; stop )
stat_busy "Stopping Nullmailer daemon"
if [[ $PID ]] &&
kill $PID
then
rm_daemon "${0##*/}"
stat_done
else
stat_fail
fi
;; restart )
$0 stop
sleep 1
$0 start
esac
--8<-- nullmailer.install --8<--
# arg 1: the new package version
post_install() {
if ! getent passwd nullmail > /dev/null; then
echo "==> Creating nullmail user"
usr/sbin/useradd -c "Nullmail mail server" -s /bin/sh -d /var/nullmailer -r -U nullmail
fi
echo "==> Creating trigger fifo"
rm -f var/nullmailer/trigger && mkfifo -m 600 var/nullmailer/trigger
echo "==> Fixing permissions"
chown nullmail var/nullmailer/*
chown nullmail usr/sbin/nullmailer-queue
chmod u+s usr/sbin/nullmailer-queue
chown nullmail usr/bin/mailq
chmod u+s usr/bin/mailq
if ! [ -s etc/nullmailer/me ]; then
echo "==> Configuring"
bin/hostname > etc/nullmailer/me
fi
if ! [ -s etc/nullmailer/remotes ]; then
{
echo "smarthost.dom smtp --port=25 --auth-login --user=user --pass=pass"
echo -e "\n\n#Type your mail relay hosts at the top, one per line"
} > etc/nullmailer/remotes
chgrp nullmail etc/nullmailer/remotes
chmod 640 etc/nullmailer/remotes
fi
}
# arg 1: the new package version
# arg 2: the old package version
post_upgrade() {
post_install $1
}
# arg 1: the old package version
pre_remove() {
# /etc/rc.d/nullmailer stop
rm -f var/service/nullmailer
echo "==> Removing nullmailer user and group"
usr/sbin/userdel nullmail
if getent group nullmail > /dev/null; then
usr/sbin/groupdel nullmail
fi
}