]> gitweb.michael.orlitzky.com - mjo-overlay.git/commitdiff
Add the mailman-2.1.14 ebuild.
authorMichael Orlitzky <michael@orlitzky.com>
Sun, 15 Jul 2012 17:33:50 +0000 (13:33 -0400)
committerMichael Orlitzky <michael@orlitzky.com>
Sun, 15 Jul 2012 17:33:50 +0000 (13:33 -0400)
net-mail/mailman/Manifest [new file with mode: 0644]
net-mail/mailman/files/50_mailman.conf-r1 [new file with mode: 0644]
net-mail/mailman/files/README.gentoo-r3 [new file with mode: 0644]
net-mail/mailman/files/mailman-2.1.13-ldflags.patch [new file with mode: 0644]
net-mail/mailman/files/mailman-2.1.14_rc1-directory-check.patch [new file with mode: 0644]
net-mail/mailman/files/mailman-2.1.9-icons.patch [new file with mode: 0644]
net-mail/mailman/files/mailman.rc [new file with mode: 0644]
net-mail/mailman/mailman-2.1.14.ebuild [new file with mode: 0644]
net-mail/mailman/metadata.xml [new file with mode: 0644]

diff --git a/net-mail/mailman/Manifest b/net-mail/mailman/Manifest
new file mode 100644 (file)
index 0000000..cd95ac7
--- /dev/null
@@ -0,0 +1,9 @@
+AUX 50_mailman.conf-r1 592 RMD160 2f2be797205a63b728fe89a3367bbfb0e1f5d5dc SHA1 12a9d7276eb796c7512ece411a56f4b45f861a7d SHA256 4512a9dd6cba38a080654cbe172941a053fdc8b33afb65748d76716e9d00a029
+AUX README.gentoo-r3 6804 RMD160 8885ce718cee4c1ff7fba103b6be314dfbf794c2 SHA1 343a4af9782136775fa3fe20d132d1e70b5468da SHA256 9db15d248be59d98f038718b50d5a02f08f5fc0870bf0f0ebec4c5d008c4e31b
+AUX mailman-2.1.13-ldflags.patch 1022 RMD160 24cb935e95056a55ce77de1c00c083d88dbf2a52 SHA1 ea60f2a9b567c7832525ad150f6a2399d8feb1e1 SHA256 75b9fe8ef757541776532f76b1262c1616d440178ad39c432fe2d529eecf5645
+AUX mailman-2.1.14_rc1-directory-check.patch 786 RMD160 4dcf690c6a5f26feff25376a5adfc261d887d2c2 SHA1 6049bf7e1b21a72861683d9251111209564f9a55 SHA256 13c5988eeaf1fad7c7f4db2c817bb234dce022636e0ebe1a7de9d0ef8400d91c
+AUX mailman-2.1.9-icons.patch 555 RMD160 d0beb080e0dd4c753ce5e075b3c7db424b5474ef SHA1 786edc8b3ed11920aaaa23a8f3c0e4f9ae190a87 SHA256 cd78a7447febcbe1901144a190ef14cf9075b8055cc275e0405fc748f9c855f0
+AUX mailman.rc 597 RMD160 be0a574298a1d8d547a4ca76f864dd5fee9b897d SHA1 f464f5ba7310934d300a9af7c614fdf7498f7d2b SHA256 ef4f5482cf68ba44a0fbb83acde29295bd8dcb6512d259d14387dfc29beeb625
+DIST mailman-2.1.14.tgz 8201150 RMD160 a36d403b9c00e5354b204b62b5f0e96ab0779186 SHA1 c92de1a5ee2d8b0c83d29836b35bd422116c96f4 SHA256 1d6be802b718639126c4069eb7f9cd3a347765e1cb199cc3bb14d71572d09523
+EBUILD mailman-2.1.14.ebuild 5895 RMD160 32abc81848663e81486db4a6390b2914bfe3bc39 SHA1 8190d408d7fe35d4f9f2cac6d5a71d6945429ee8 SHA256 334ef09a518098f67d2c485f4538cd4c07f24e02d536b1fe85708d2487a04e82
+MISC metadata.xml 218 RMD160 30759d93f0209fdd74f29393ae54999fe6b2bdff SHA1 486b307ff1dae10aef7d18472460a21bc2decdfb SHA256 09421ca1b9299683d07f68ddbbd3ed97251dac613121b420841a3251da7fcb89
diff --git a/net-mail/mailman/files/50_mailman.conf-r1 b/net-mail/mailman/files/50_mailman.conf-r1
new file mode 100644 (file)
index 0000000..82a2321
--- /dev/null
@@ -0,0 +1,24 @@
+<IfDefine MAILMAN>
+       ScriptAlias /mailman/ "/usr/local/mailman/cgi-bin/"
+       <Directory "/usr/local/mailman/cgi-bin/">
+               AllowOverride None
+               Options None
+               Order allow,deny
+               Allow from all
+       </Directory>
+
+       Alias /pipermail/ "/usr/local/mailman/archives/public/"
+       <Directory "/usr/local/mailman/archives/public/">
+               AllowOverride None
+               Options ExecCGI FollowSymLinks
+               Order allow,deny  
+               Allow from all
+       </Directory>
+
+       Alias /mailman-icons/ "/usr/local/mailman/icons/"
+       <Directory "/usr/local/mailman/icons/">
+               AllowOverride None
+               Order allow,deny
+               Allow from all
+       </Directory>
+</IfDefine>
diff --git a/net-mail/mailman/files/README.gentoo-r3 b/net-mail/mailman/files/README.gentoo-r3
new file mode 100644 (file)
index 0000000..e5e0e3b
--- /dev/null
@@ -0,0 +1,182 @@
+# Copyright 1999-2004 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-mail/mailman/files/README.gentoo-r3,v 1.2 2008/11/14 11:07:55 hanno Exp $
+
+Follow these instructions to finish setting up mailman. This file and the
+original ebuild were tweaked by me <lamer@gentoo.org> but were graciously
+submitted by Joby Walker (YOU RULE!) 
+2003 Jul 09: updated by Jesus Perez and re-tweaked by me <raker@gentoo.org>
+for 2.1.x.
+
+Please view the documentation on Mailman at: http://www.list.org/
+
+This documentation assumes you're using the default gentoo path
+(/usr/lib/mailman/), if you've changed it with MAILMAN_PREFIX, adjust them
+accordingly.
+
+1) If this is your first time installing mailman, after your "emerge mailman",
+you need to add -D MAILMAN to /etc/conf.d/apache or /etc/conf.d/apache2 and restart
+apache.
+
+2) In your /etc/conf.d/apache (for apache 1.x)
+       or /etc/conf.d/apache2 (for apache 2.x) 
+       file add the additional option to the
+       APACHE_OPTS or APACHE2_OPTS variable:
+
+       -D MAILMAN
+
+3) Make sure mailman is a part of the cron group
+
+4) This must be done as user mailman:
+
+       su - mailman
+
+Add the cron jobs:
+
+       cd cron
+       crontab crontab.in
+       cd ..
+
+Create the site password:
+
+       bin/mmsitepass
+
+and main list:
+
+       bin/newlist mailman
+
+
+5) Change back to root:
+
+       exit
+
+(Postfix users: read the notes at the end of this file before you continue)
+Add this to /etc/mail/aliases (and see point 9 for notes):
+     mailman:              "|/usr/lib/mailman/mail/mailman post mailman"
+     mailman-admin:        "|/usr/lib/mailman/mail/mailman admin mailman"
+     mailman-bounces:      "|/usr/lib/mailman/mail/mailman bounces mailman"
+     mailman-confirm:      "|/usr/lib/mailman/mail/mailman confirm mailman"
+     mailman-join:         "|/usr/lib/mailman/mail/mailman join mailman"
+     mailman-leave:        "|/usr/lib/mailman/mail/mailman leave mailman"
+     mailman-owner:        "|/usr/lib/mailman/mail/mailman owner mailman"
+     mailman-request:      "|/usr/lib/mailman/mail/mailman request mailman"
+     mailman-subscribe:    "|/usr/lib/mailman/mail/mailman subscribe mailman"
+     mailman-unsubscribe:  "|/usr/lib/mailman/mail/mailman unsubscribe mailman"
+
+For courier, the aliases have to go to /etc/courier/aliases and you have to skip
+the quotes.
+
+Run newaliases (only if you use sendmail).
+
+       newaliases
+    
+6) Start the mailman daemon:
+
+       /etc/init.d/mailman start
+
+and add it to default runlevel (optional but recommended):
+
+       rc-update add mailman default
+
+7) For each list created (either with web interface or with bin/newlist) 
+this must be added to /etc/mail/aliases (see smrsh notes below)
+replace <list-name> with the name of the list:
+
+       <list-name>: "|/usr/lib/mailman/mail/mailman post <list-name>"
+       <list-name>-admin: "|/usr/lib/mailman/mail/mailman admin <list-name>"
+       <list-name>-bounces: "|/usr/lib/mailman/mail/mailman bounces <list-name>"
+       <list-name>-confirm: "|/usr/lib/mailman/mail/mailman confirm <list-name>"
+       <list-name>-join: "|/usr/lib/mailman/mail/mailman join <list-name>"
+       <list-name>-leave: "|/usr/lib/mailman/mail/mailman leave <list-name>"
+       <list-name>-owner: "|/usr/lib/mailman/mail/mailman owner <list-name>"
+       <list-name>-request: "|/usr/lib/mailman/mail/mailman request <list-name>"
+       <list-name>-subscribe: "|/usr/lib/mailman/mail/mailman subscribe <list-name>"
+       <list-name>-unsubscribe: "|/usr/lib/mailman/mail/mailman unsubscribe <list-name>"
+
+For courier, the aliases have to go to /etc/courier/aliases and you have to skip
+the quotes.
+
+Run newaliases:
+
+       newaliases
+
+smrsh notes
+-----------
+(if you use sendmail, you are surely using srmsh) you must note that 
+sendmail won't run any program outside of EBINDIR. I tried to change 
+EBINDIR using,define(`confEBINDIR', `/usr/lib/mailman/mail')dnl in 
+sendmail.mc but it didn't work, so mailman must be placed in EBINDIR, 
+which in Gentoo is /usr/adm/sm.bin, so you must run as root:
+
+     ln -s /usr/lib/mailman/mail/mailman /usr/adm/sm.bin/mailman
+
+And the lines in /etc/mail/aliases which refer to 
+/usr/lib/mailman/mail/mailman must be changed to mailman:
+
+     <list-name>:              "|mailman post <list-name>"
+     <list-name>-admin:        "|mailman admin <list-name>"
+     <list-name>-bounces:      "|mailman bounces <list-name>"
+     <list-name>-confirm:      "|mailman confirm <list-name>"
+     <list-name>-join:         "|mailman join <list-name>"
+     <list-name>-leave:        "|mailman leave <list-name>"
+     <list-name>-owner:        "|mailman owner <list-name>"
+     <list-name>-request:      "|mailman request <list-name>"
+     <list-name>-subscribe:    "|mailman subscribe <list-name>"
+     <list-name>-unsubscribe:  "|mailman unsubscribe <list-name>"
+
+exim notes
+----------
+You can write an exim stanza for the router and transport that looks something
+like (Derived from, and in part taken from cpanel):
+
+mailman_virtual_router:
+       driver = accept
+       require_files = /var/lib/mailman/lists/${lc::$local_part}/config.pck
+       local_part_suffix_optional
+       local_part_suffix = -admin     : \
+                                               -bounces   : -bounces+* : \
+                                               -confirm   : -confirm+* : \
+                                               -join      : -leave     : \
+                                               -owner     : -request   : \
+                                               -subscribe : -unsubscribe
+       transport = mailman_virtual_transport
+
+mailman_virtual_transport:
+    driver = pipe
+    command = /usr/lib/mailman/mail/mailman \
+              '${if def:local_part_suffix \
+                    {${sg{$local_part_suffix}{-(\\w+)(\\+.*)?}{\$1}}} \
+                    {post}}' \
+              ${lc:$local_part}
+    current_directory = /usr/lib/mailman
+    home_directory = /usr/lib/mailman
+    user = mailman
+    group = mailman
+
+Note the double colon in the require files.  See
+http://wiki.exim.org/FAQ/General_Debugging/Q0060 for more information.
+
+This should be modified if you're using the vhosts USE flag, specifically you
+need to modify the location of the config.pck file, to be
+${lc::$local_part}-${lc::$domain} instead of simply ${lc::$local_part}, and for the
+transport you need to change the last part of the command in the same fashion.
+
+Other Helpful things to know...
+-------------------------------
+run "bin/check_perms -f" from the root mailman directory
+(/usr/lib/mailman) to check and fix permission problems.
+
+The INSTALL file is located in /usr/share/doc/mailman-$VERSION/ 
+
+Postfix notes
+-------------
+If you're using Postfix, don't manually change your /etc/mail/aliases
+file, as described above. Instead, follow these instructions:
+
+http://list.org/mailman-install/node13.html
+
+This will set up Mailman and Postfix to automatically generate the new
+aliases when you create new lists. It will also make sure that Postfix
+uses the correct group ID when it's talking to Mailman, otherwise you
+will get security errors from Mailman.
+
diff --git a/net-mail/mailman/files/mailman-2.1.13-ldflags.patch b/net-mail/mailman/files/mailman-2.1.13-ldflags.patch
new file mode 100644 (file)
index 0000000..1c27834
--- /dev/null
@@ -0,0 +1,26 @@
+--- src/Makefile.in~   2009-02-23 22:23:35.000000000 +0100
++++ src/Makefile.in    2010-08-08 02:03:16.000000000 +0200
+@@ -46,6 +46,7 @@
+ CGIDIR=       $(exec_prefix)/cgi-bin
+ CGIEXT=               @CGIEXT@
+ MAILDIR=      $(exec_prefix)/mail
++LDFLAGS= @LDFLAGS@
+ SHELL=                /bin/sh
+@@ -91,13 +92,13 @@
+ all: $(PROGRAMS)
+ mailman: $(srcdir)/mail-wrapper.c $(COMMONOBJS)
+-      $(CC) -I. $(MAIL_FLAGS) $(CFLAGS) $(COMMONOBJS) -o $@ $(srcdir)/mail-wrapper.c
++      $(CC) $(LDFLAGS) -I. $(MAIL_FLAGS) $(CFLAGS) $(COMMONOBJS) -o $@ $(srcdir)/mail-wrapper.c
+ #addaliases: $(srcdir)/alias-wrapper.c $(COMMONOBJS)
+ #     $(CC) -I. $(ALIAS_FLAGS) $(CFLAGS) -o $@ $(srcdir)/alias-wrapper.c
+ $(CGI_PROGS): $(srcdir)/cgi-wrapper.c $(COMMONOBJS)
+-      $(CC) -DSCRIPT="\"$@\"" -I. $(CGI_FLAGS) $(CFLAGS) $(COMMONOBJS) -o $@ $(srcdir)/cgi-wrapper.c
++      $(CC) $(LDFLAGS) -DSCRIPT="\"$@\"" -I. $(CGI_FLAGS) $(CFLAGS) $(COMMONOBJS) -o $@ $(srcdir)/cgi-wrapper.c
+ common.o: $(srcdir)/common.c $(srcdir)/common.h Makefile
+       $(CC) -c -I. $(COMMON_FLAGS) $(CFLAGS) $(srcdir)/common.c
diff --git a/net-mail/mailman/files/mailman-2.1.14_rc1-directory-check.patch b/net-mail/mailman/files/mailman-2.1.14_rc1-directory-check.patch
new file mode 100644 (file)
index 0000000..a3c26ed
--- /dev/null
@@ -0,0 +1,19 @@
+--- mailman-2.1.14rc1/bin/update       2010-09-09 18:51:09.000000000 +0200
++++ mailman-2.1.14rc1-1/bin/update     2010-09-14 01:02:09.000000000 +0200
+@@ -35,6 +35,7 @@
+ """
+ import os
++import stat
+ import sys
+ import time
+ import errno
+@@ -428,7 +429,7 @@
+     # Now update for the Mailman 2.1.5 qfile format.  For every filebase in
+     # the qfiles/* directories that has both a .pck and a .db file, pull the
+     # data out and re-queue them.
+-    for dirname in os.listdir(mm_cfg.QUEUE_DIR):
++    for dirname in [x for x in os.listdir(mm_cfg.QUEUE_DIR) if stat.S_ISDIR(os.stat(os.path.join(mm_cfg.QUEUE_DIR,x)).st_mode)]:
+         dirpath = os.path.join(mm_cfg.QUEUE_DIR, dirname)
+         if dirpath == mm_cfg.BADQUEUE_DIR:
+             # The files in qfiles/bad can't possibly be pickles
diff --git a/net-mail/mailman/files/mailman-2.1.9-icons.patch b/net-mail/mailman/files/mailman-2.1.9-icons.patch
new file mode 100644 (file)
index 0000000..07cd63e
--- /dev/null
@@ -0,0 +1,12 @@
+diff -rau mailman-2.1.9-orig/Mailman/Defaults.py.in mailman-2.1.9-mailman-icons/Mailman/Defaults.py.in
+--- mailman-2.1.9-orig/Mailman/Defaults.py.in  2006-08-04 14:20:33.000000000 +0200
++++ mailman-2.1.9/Mailman/Defaults.py.in       2008-02-03 14:27:02.000000000 +0200
+@@ -54,7 +54,7 @@
+ # disable Mailman's logo footer altogther, hack
+ # Mailman/htmlformat.py:MailmanLogo(), which also contains the hardcoded links
+ # and image names.
+-IMAGE_LOGOS = '/icons/'
++IMAGE_LOGOS = '/mailman-icons/'
+ # The name of the Mailman favicon
+ SHORTCUT_ICON = 'mm-icon.png'
diff --git a/net-mail/mailman/files/mailman.rc b/net-mail/mailman/files/mailman.rc
new file mode 100644 (file)
index 0000000..bc5a688
--- /dev/null
@@ -0,0 +1,27 @@
+#!/sbin/runscript
+# Copyright 1999-2004 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-mail/mailman/files/mailman.rc,v 1.5 2004/07/14 23:50:52 agriffis Exp $
+
+depend() {
+       need net
+       use logger
+}
+
+start() {
+       ebegin "Starting mailman"
+       su - mailman -c 'bin/mailmanctl -s start' >/dev/null 2>&1
+       eend $?
+}
+
+stop() {
+       ebegin "Stopping mailman"
+       su - mailman -c 'bin/mailmanctl stop' >/dev/null 2>&1
+       eend $?
+}
+
+svc_restart() {
+       ebegin "Restarting mailman"
+       su - mailman -c 'bin/mailmanctl restart' >/dev/null 2>&1
+       eend $?
+}
diff --git a/net-mail/mailman/mailman-2.1.14.ebuild b/net-mail/mailman/mailman-2.1.14.ebuild
new file mode 100644 (file)
index 0000000..998aa6d
--- /dev/null
@@ -0,0 +1,163 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-mail/mailman/mailman-2.1.14.ebuild,v 1.7 2011/11/02 22:09:34 vapier Exp $
+
+inherit eutils python multilib
+
+DESCRIPTION="A python-based mailing list server with an extensive web interface"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tgz"
+HOMEPAGE="http://www.list.org/"
+
+SLOT="0"
+LICENSE="GPL-2"
+KEYWORDS="amd64 ppc sparc x86"
+IUSE=""
+
+DEPEND=">=dev-lang/python-2.3
+       virtual/mta
+       virtual/cron
+       virtual/httpd-cgi"
+RDEPEND="${DEPEND}"
+
+pkg_setup() {
+       INSTALLDIR=${MAILMAN_PREFIX:-"/usr/$(get_libdir)/mailman"}
+       VAR_PREFIX=${MAILMAN_VAR_PREFIX:-"/var/lib/mailman"}
+       CGIUID=${MAILMAN_CGIUID:-apache}
+       CGIGID=${MAILMAN_CGIGID:-apache}
+       MAILUSR=${MAILMAN_MAILUSR:-mailman}
+       MAILUID=${MAILMAN_MAILUID:-280}
+       MAILGRP=${MAILMAN_MAILGRP:-mailman}
+       MAILGID=${MAILMAN_MAILGID:-280}
+
+       # Bug #58526: switch to enew{group,user}.
+       # need to add mailman here for compile process.
+       # Duplicated at pkg_postinst() for binary install.
+       enewgroup ${MAILGRP} ${MAILGID}
+       enewuser  ${MAILUSR} ${MAILUID} /bin/bash ${INSTALLDIR} mailman,cron
+}
+
+src_unpack() {
+       unpack ${A}
+       cd "${S}"
+       epatch "${FILESDIR}/${PN}-2.1.14_rc1-directory-check.patch" || die "patch failed."
+       epatch "${FILESDIR}/${PN}-2.1.9-icons.patch" || die "patch failed."
+       epatch "${FILESDIR}/${PN}-2.1.13-ldflags.patch"
+}
+
+src_compile() {
+       econf --without-permcheck \
+               --prefix="${INSTALLDIR}" \
+               --with-mail-gid=${MAILGID} \
+               --with-cgi-gid=${CGIGID} \
+               --with-cgi-ext="${MAILMAN_CGIEXT}" \
+               --with-var-prefix="${VAR_PREFIX}" \
+               --with-username=${MAILUSR} \
+               --with-groupname=${MAILGRP} \
+       || die "configure failed"
+
+       emake || die "make failed"
+}
+
+src_install () {
+       emake "DESTDIR=${D}" doinstall || die
+
+       insinto /etc/apache2/modules.d
+       newins "${FILESDIR}/50_mailman.conf-r1" 50_mailman.conf
+       dosed "s:/usr/local/mailman/cgi-bin:${INSTALLDIR}/cgi-bin:g" /etc/apache2/modules.d/50_mailman.conf
+       dosed "s:/usr/local/mailman/icons:${INSTALLDIR}/icons:g" /etc/apache2/modules.d/50_mailman.conf
+       dosed "s:/usr/local/mailman/archives:${VAR_PREFIX}/archives:g" /etc/apache2/modules.d/50_mailman.conf
+
+       newdoc "${FILESDIR}/README.gentoo-r3" README.gentoo || die "newdoc failed"
+
+       dodoc ACK* BUGS FAQ NEWS README* TODO UPGRADING INSTALL contrib/mailman.mc \
+               contrib/README.check_perms_grsecurity contrib/virtusertable || die "dodoc failed"
+
+       exeinto ${INSTALLDIR}/bin
+       doexe build/contrib/*.py contrib/majordomo2mailman.pl contrib/auto \
+               contrib/mm-handler* || die
+
+       dodir /etc/mailman
+       mv "${D}/${INSTALLDIR}/Mailman/mm_cfg.py" "${D}/etc/mailman"
+       dosym /etc/mailman/mm_cfg.py ${INSTALLDIR}/Mailman/mm_cfg.py
+
+       # Save the old config for updates from pre-2.1.9-r2
+       # To be removed some distant day
+       for i in /var/mailman /home/mailman /usr/local/mailman ${INSTALLDIR}
+       do
+               if [ -f ${i}/Mailman/mm_cfg.py ] && ! [ -L ${i}/Mailman/mm_cfg.py ]; then
+                       cp ${i}/Mailman/mm_cfg.py "${D}/etc/mailman/mm_cfg.py"
+               fi
+       done
+
+       newinitd "${FILESDIR}/mailman.rc" mailman
+
+       keepdir ${VAR_PREFIX}/logs
+       keepdir ${VAR_PREFIX}/locks
+       keepdir ${VAR_PREFIX}/spam
+       keepdir ${VAR_PREFIX}/archives/public
+       keepdir ${VAR_PREFIX}/archives/private
+       keepdir ${VAR_PREFIX}/lists
+       keepdir ${VAR_PREFIX}/qfiles
+
+       chown -R ${MAILUSR}:${MAILGRP} "${D}/${VAR_PREFIX}" "${D}/${INSTALLDIR}" "${D}"/etc/mailman/*
+       chown ${CGIUID}:${MAILGRP} "${D}/${VAR_PREFIX}/archives/private"
+       chmod 2775 "${D}/${INSTALLDIR}" "${D}/${INSTALLDIR}"/templates/* \
+               "${D}/${INSTALLDIR}"/messages/* "${D}/${VAR_PREFIX}" "${D}/${VAR_PREFIX}"/{logs,lists,spam,locks,archives/public}
+       chmod 2770 "${D}/${VAR_PREFIX}/archives/private"
+       chmod 2770 "${D}/${VAR_PREFIX}/qfiles"
+       chmod 2755 "${D}/${INSTALLDIR}"/cgi-bin/* "${D}/${INSTALLDIR}/mail/mailman"
+
+}
+
+pkg_postinst() {
+       python_mod_optimize ${INSTALLDIR}/bin/ ${INSTALLDIR}/Mailman \
+               ${INSTALLDIR}/Mailman/*/
+
+       enewgroup ${MAILGRP} ${MAILGID}
+       enewuser  ${MAILUSR} ${MAILUID} -1 ${INSTALLDIR} mailman,cron
+       elog
+       elog "Please read /usr/share/doc/${PF}/README.gentoo.bz2 for additional"
+       elog "Setup information, mailman will NOT run unless you follow"
+       elog "those instructions!"
+       elog
+
+       elog "An example Mailman configuration file for Apache has been installed into:"
+       elog "  ${APACHE2_MODULES_CONFDIR}/50_mailman.conf"
+       elog
+       elog "To enable, you will need to add \"-D MAILMAN\" to"
+       elog "/etc/conf.d/apache2."
+       elog
+
+       ewarn "Default-Configuration has changed deeply in 2.1.9-r2. You can configure"
+       ewarn "mailman with the following variables:"
+       ewarn "MAILMAN_PREFIX (default: /usr/$(get_libdir)/mailman)"
+       ewarn "MAILMAN_VAR_PREFIX (default: /var/lib/mailman)"
+       ewarn "MAILMAN_CGIUID (default: apache)"
+       ewarn "MAILMAN_CGIGID (default: apache)"
+       ewarn "MAILMAN_CGIEXT (default: empty)"
+       ewarn "MAILMAN_MAILUSR (default: mailman)"
+       ewarn "MAILMAN_MAILUID (default: 280)"
+       ewarn "MAILMAN_MAILGRP (default: mailman)"
+       ewarn "MAILMAN_MAILGID (default: 280)"
+       ewarn
+       ewarn "Config file is now symlinked in /etc/mailman, so etc-update works."
+       ewarn
+       ewarn "If you're upgrading from below 2.1.9-r2 or changed MAILMAN_PREFIX, you"
+       ewarn "NEED to make a few manual updates to your system:"
+       ewarn
+       ewarn "1.  Update your mailman users's home directory: usermod -d ${INSTALLDIR} mailman"
+       ewarn "2.  Re-import the crontab: su - mailman -c 'crontab cron/crontab.in'"
+       ewarn "3.  Copy your old mm_cfg.py file to /etc/mailman/mm_cfg.py"
+       ewarn
+       ewarn "Additionally if you've modified MAILMAN_VAR_PREFIX (or upgraded from"
+       ewarn "a pre 2.1.9-r2 installation), you should move your old lists/ and"
+       ewarn "archives/ directory to the new location, ensuring that the"
+       ewarn "permissions is correct.  See bug #208789 for a discussion."
+       ebeep
+}
+
+pkg_postrm() {
+       INSTALLDIR=${MAILMAN_PREFIX:-"/usr/$(get_libdir)/mailman"}
+       python_mod_cleanup ${INSTALLDIR}/bin ${INSTALLDIR}/Mailman \
+               ${INSTALLDIR}/Mailman/*/
+}
diff --git a/net-mail/mailman/metadata.xml b/net-mail/mailman/metadata.xml
new file mode 100644 (file)
index 0000000..b507dbb
--- /dev/null
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>net-mail</herd>
+<maintainer><email>hanno@gentoo.org</email></maintainer>
+</pkgmetadata>