# $Id: PKGBUILD 67164 2012-03-05 00:39:58Z pschmitz $ # Maintainer: Paul Mattal pkgname=mailman pkgver=2.1.14 pkgrel=4 pkgdesc="Mailing list manager with built in web access" arch=('i686' 'x86_64') license=('GPL') url="http://www.list.org/" depends=('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' 'rc.mailman') md5sums=('9ea163871ceccbd33fee4c9e335fcf7b' 'ed04d062379eb21e39ce1e70e6b1ade2' '3d83d06d0ec3319bf3c7d9df5d18e89f') build() { cd $srcdir/$pkgname-$pkgver # fix calls to /usr/bin/python find . -name '*.py' -exec sed -i 's@^#!.*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 sed -e 's/@MAILHOST@/localhost/g' \ -e 's/@URLHOST@/localhost/g' \ -i Mailman/Defaults.py.in ./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 make } package() { cd $srcdir/$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 # install the launch script install -D -m755 $srcdir/rc.mailman $pkgdir/etc/rc.d/mailman }