summaryrefslogtreecommitdiff
path: root/community/mailman/PKGBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'community/mailman/PKGBUILD')
-rw-r--r--community/mailman/PKGBUILD82
1 files changed, 82 insertions, 0 deletions
diff --git a/community/mailman/PKGBUILD b/community/mailman/PKGBUILD
new file mode 100644
index 000000000..91ef3a656
--- /dev/null
+++ b/community/mailman/PKGBUILD
@@ -0,0 +1,82 @@
+# $Id: PKGBUILD 83707 2013-02-04 14:51:45Z seblu $
+# Maintainer: Sébastien Luttringer <seblu@archlinux.org>
+# Contributor: Paul Mattal <paul@archlinux.org>
+
+pkgname=mailman
+pkgver=2.1.15
+pkgrel=3
+pkgdesc='The GNU Mailing List Manager'
+arch=(i686 x86_64)
+license=('GPL')
+url='http://www.list.org/'
+depends=('glibc' 'python2' 'smtp-server')
+# we need to have the mailman user to build mailman
+makedepends=('mailman')
+# 'Defaults.py' should not be changed by users; 'mm_cfg.py' should instead.
+backup=('usr/lib/mailman/Mailman/mm_cfg.py')
+install=$pkgname.install
+source=("http://ftp.gnu.org/gnu/$pkgname/$pkgname-$pkgver.tgz"
+ 'mailman-2.1-build.patch'
+ "$pkgname.profile.sh"
+ "$pkgname.profile.csh"
+ "$pkgname.service")
+md5sums=('7d207489e8e9de0727cb334d46029833'
+ 'ed04d062379eb21e39ce1e70e6b1ade2'
+ 'a9c71ec940c56173415fbd49087d10b0'
+ '85a8c30ffc444e677b286f54df530482'
+ 'f3ea6ef02ab135274406ce52ea8bbb7b')
+
+build() {
+ cd $pkgname-$pkgver
+ # some files in mailman doesn't use configure parameter
+ find . -type f -exec \
+ sed -i '1s,^#! \?/usr/bin/\(env \|\)python$,#!/usr/bin/python2,' {} \;
+ # fix directory permissions to satisfy check_perms
+ patch -p1 -i "$srcdir/mailman-2.1-build.patch"
+ # set some sane defaults before the configure script has a chance to screw them up
+ ./configure \
+ --without-permcheck \
+ --prefix=/usr/lib/mailman \
+ --with-var-prefix=/var/lib/mailman \
+ --with-mail-gid=mailman \
+ --with-username=mailman \
+ --with-groupname=mailman \
+ --with-cgi-gid=http \
+ --with-python=/usr/bin/python2 \
+ --with-mailhost=localhost \
+ --with-urlhost=localhost
+ make
+}
+
+package() {
+ cd $pkgname-$pkgver
+ make DESTDIR="$pkgdir" install
+
+ # let's follow Fedora FHS way; Gentoo does it the other way round
+
+ # Create a link so that the config file mm_cfg.py appears in config
+ # directory /etc/mailman. We don't put mm_cfg.py in the config directory
+ # because its executable code (python file) and the security policy wants
+ # to keep executable code out of /etc and inside of a lib directory instead,
+ # and because traditionally mm_cfg.py was in the Mailman subdirectory and
+ # experienced mailman admins will expect to find it there. But having it
+ # "appear" in the config directory is good practice and heading in the
+ # right direction for FHS compliance.
+ install -d -m755 "$pkgdir/etc/$pkgname"
+ ln -sv /usr/lib/mailman/Mailman/mm_cfg.py "$pkgdir/etc/$pkgname/mm_cfg.py"
+ # fix some permissions to satisfy check_perms
+ chown -R mailman:mailman "$pkgdir"/{usr/lib/mailman,var/lib/mailman,etc/mailman/*}
+ chown http:mailman "$pkgdir"/var/lib/mailman/archives/private
+ chmod 2770 "$pkgdir"/var/lib/mailman/archives/private
+ chmod 2755 "$pkgdir"/usr/lib/mailman/cgi-bin/*
+ chmod 2755 "$pkgdir"/usr/lib/mailman/mail/mailman
+ cd "$srcdir"
+ # systemd
+ install -Dm 644 $pkgname.service \
+ "$pkgdir/usr/lib/systemd/system/$pkgname.service"
+ # profiles
+ install -Dm 755 $pkgname.profile.sh "$pkgdir/etc/profile.d/$pkgname.sh"
+ install -Dm 755 $pkgname.profile.csh "$pkgdir/etc/profile.d/$pkgname.csh"
+}
+
+# vim:set ts=2 sw=2 et: