summaryrefslogtreecommitdiff
path: root/testing/postfix
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2012-04-08 00:02:42 +0000
committerroot <root@rshg054.dnsready.net>2012-04-08 00:02:42 +0000
commit37e364f033ed6db243d6db524075d8c5394c90f9 (patch)
treedb3bb1bc5749bee5a51cb403c0b944b52cb10fc3 /testing/postfix
parent2317ee13e2342fd8b81ffaf3a427fd4bb096ec28 (diff)
Sun Apr 8 00:02:42 UTC 2012
Diffstat (limited to 'testing/postfix')
-rw-r--r--testing/postfix/PKGBUILD63
-rw-r--r--testing/postfix/aliases.patch18
-rw-r--r--testing/postfix/install33
-rwxr-xr-xtesting/postfix/rc.d36
4 files changed, 150 insertions, 0 deletions
diff --git a/testing/postfix/PKGBUILD b/testing/postfix/PKGBUILD
new file mode 100644
index 000000000..092002191
--- /dev/null
+++ b/testing/postfix/PKGBUILD
@@ -0,0 +1,63 @@
+# $Id: PKGBUILD 155816 2012-04-06 21:34:15Z bisson $
+# Contributor: Jeff Brodnax <tullyarcher@bellsouth.net>
+# Contributor: Paul Mattal <paul@archlinux.org>
+# Maintainer: Gaetan Bisson <bisson@archlinux.org>
+
+pkgname=postfix
+pkgver=2.9.1
+pkgrel=3
+pkgdesc='Fast, easy to administer, secure mail server'
+url='http://www.postfix.org/'
+license=('custom')
+arch=('i686' 'x86_64')
+depends=('pcre' 'libsasl' 'libmysqlclient' 'postgresql-libs' 'sqlite' 'libldap' 'db')
+backup=('etc/postfix/'{access,aliases,canonical,generic,header_checks,main.cf,master.cf,relocated,transport,virtual})
+source=("ftp://ftp.porcupine.org/mirrors/postfix-release/official/${pkgname}-${pkgver}.tar.gz" \
+ 'aliases.patch' \
+ 'rc.d')
+sha1sums=('d4f6572ab1ac5fc15626ac2de6d18c340aae2cef'
+ '5fc3de6c7df1e5851a0a379e825148868808318b'
+ '40c6be2eb55e6437a402f43775cdb3d22ea87a66')
+
+provides=('smtp-server' 'smtp-forwarder')
+replaces=('postfix-mysql' 'postfix-pgsql')
+conflicts=('postfix-mysql' 'postfix-pgsql' 'smtp-server' 'smtp-forwarder')
+
+install=install
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ make makefiles DEBUG='' CCARGS=' \
+ -DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I/usr/include/sasl \
+ -DHAS_LDAP \
+ -DUSE_TLS \
+ -DHAS_MYSQL -I/usr/include/mysql \
+ -DHAS_PGSQL -I/usr/include/postgresql \
+ -DHAS_SQLITE \
+ ' AUXLIBS=' \
+ -lsasl2 \
+ -lldap -llber \
+ -lssl -lcrypto \
+ -lmysqlclient -lz -lm \
+ -lpq \
+ -lsqlite3 -lpthread \
+ ' OPT="${CFLAGS} ${LDFLAGS}"
+
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ sh postfix-install -non-interactive \
+ install_root="${pkgdir}" \
+ daemon_directory="/usr/lib/${pkgname}" \
+ sample_directory="/etc/${pkgname}/sample" \
+ manpage_directory="/usr/share/man"
+
+ install -D -m755 ../rc.d "${pkgdir}/etc/rc.d/${pkgname}"
+ install -D -m644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+ sed 's/\(^\$manpage[^:]*\):/\1.gz:/' -i "${pkgdir}/usr/lib/${pkgname}/postfix-files"
+ cd "${pkgdir}"; patch -p0 -i "${srcdir}"/aliases.patch
+}
diff --git a/testing/postfix/aliases.patch b/testing/postfix/aliases.patch
new file mode 100644
index 000000000..6767870b7
--- /dev/null
+++ b/testing/postfix/aliases.patch
@@ -0,0 +1,18 @@
+--- etc/postfix/main.cf.orig 2010-12-13 20:18:22.000000000 +0100
++++ etc/postfix/main.cf 2010-12-13 20:18:24.000000000 +0100
+@@ -382,6 +382,7 @@
+ #alias_maps = hash:/etc/aliases
+ #alias_maps = hash:/etc/aliases, nis:mail.aliases
+ #alias_maps = netinfo:/aliases
++alias_maps = hash:/etc/postfix/aliases
+
+ # The alias_database parameter specifies the alias database(s) that
+ # are built with "newaliases" or "sendmail -bi". This is a separate
+@@ -392,6 +393,7 @@
+ #alias_database = dbm:/etc/mail/aliases
+ #alias_database = hash:/etc/aliases
+ #alias_database = hash:/etc/aliases, hash:/opt/majordomo/aliases
++alias_database = $alias_maps
+
+ # ADDRESS EXTENSIONS (e.g., user+foo)
+ #
diff --git a/testing/postfix/install b/testing/postfix/install
new file mode 100644
index 000000000..cb97e2e6c
--- /dev/null
+++ b/testing/postfix/install
@@ -0,0 +1,33 @@
+post_install() {
+ getent group postdrop &>/dev/null || groupadd -g 75 postdrop >/dev/null
+ getent group postfix &>/dev/null || groupadd -g 73 postfix >/dev/null
+ getent passwd postfix &>/dev/null || useradd -u 73 -d /var/spool/postfix -g postfix -s /bin/false postfix >/dev/null
+
+ cd var/spool/postfix
+ chown postfix active bounce corrupt defer deferred flush hold incoming private public maildrop trace saved
+ chgrp postdrop public maildrop
+ cd ../../../usr/sbin
+ chgrp postdrop postqueue postdrop
+ chmod g+s postqueue postdrop
+ cd ../..
+ chown postfix var/lib/postfix
+
+ newaliases
+}
+
+post_upgrade() {
+ post_install
+
+ if [ `vercmp $2 2.9.0` = -1 ]; then cat <<EOF
+
+==> You must now run "postfix reload" due to inter-daemon protocol change.
+
+EOF
+ fi
+}
+
+pre_remove() {
+ getent passwd postfix &>/dev/null && userdel postfix >/dev/null
+ getent group postfix &>/dev/null && groupdel postfix >/dev/null
+ getent group postdrop &>/dev/null && groupdel postdrop >/dev/null
+}
diff --git a/testing/postfix/rc.d b/testing/postfix/rc.d
new file mode 100755
index 000000000..fa314bb84
--- /dev/null
+++ b/testing/postfix/rc.d
@@ -0,0 +1,36 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+name=postfix
+
+case "$1" in
+start)
+ stat_busy "Starting $name daemon"
+ /usr/sbin/postfix start &>/dev/null \
+ && { add_daemon $name; stat_done; } \
+ || { stat_fail; exit 1; }
+ ;;
+stop)
+ stat_busy "Stopping $name daemon"
+ /usr/sbin/postfix stop &>/dev/null \
+ && { rm_daemon $name; stat_done; } \
+ || { stat_fail; exit 1; }
+ ;;
+reload)
+ stat_busy "Reloading $name daemon"
+ /usr/sbin/postfix reload &>/dev/null \
+ && { stat_done; } \
+ || { stat_fail; exit 1; }
+ ;;
+restart)
+ $0 stop
+ sleep 1
+ $0 start
+ ;;
+*)
+ echo "usage: $0 {start|stop|restart|reload}"
+ ;;
+esac
+exit 0