Date: Tuesday, August 3, 2010 @ 16:23:16 Author: andyrtr Revision: 86762
upgpkg: mailman 2.1.13-1 update to 2.1.13, fix build issues and user/group handlling, /home/mailman isn't needed anymore Added: mailman/trunk/mailman-2.1-build.patch Modified: mailman/trunk/PKGBUILD mailman/trunk/mailman.install -------------------------+ PKGBUILD | 65 ++-- mailman-2.1-build.patch | 694 ++++++++++++++++++++++++++++++++++++++++++++++ mailman.install | 34 +- 3 files changed, 758 insertions(+), 35 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2010-08-03 19:12:29 UTC (rev 86761) +++ PKGBUILD 2010-08-03 20:23:16 UTC (rev 86762) @@ -2,7 +2,7 @@ # Maintainer: Paul Mattal <[email protected]> pkgname=mailman -pkgver=2.1.12 +pkgver=2.1.13 pkgrel=1 pkgdesc="Mailing list manager with built in web access" arch=('i686' 'x86_64') @@ -12,50 +12,71 @@ # '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 \ +source=(http://ftp.gnu.org/gnu/$pkgname/$pkgname-$pkgver.tgz + mailman-2.1-build.patch rc.mailman) -md5sums=('d565a6d2d0ec6d2dd6936a81e1c1ca86' +md5sums=('3235323ccb3e0135c10b7c66a440390b' + 'ed04d062379eb21e39ce1e70e6b1ade2' '3d83d06d0ec3319bf3c7d9df5d18e89f') +# needs to be build as root for pam allowing to create new user/group +# LANG=C; time rm -rf src/ pkg/ && time makepkg -L --asroot + build() { - cd $srcdir/$pkgname-$pkgver || return 1 + cd $srcdir/$pkgname-$pkgver + + # fix directory permissions to satisfy check_perms + patch -Np1 -i ${srcdir}/mailman-2.1-build.patch - # the mailman user and group are required to build + # the mailman user and group are required to build (better to satisfy check_perms) if [ ! `egrep '^mailman' /etc/passwd` ]; then msg "Adding user/group mailman (temporarily)" - groupadd -g 80 mailman || return 1 - sleep 2 - useradd -u 80 -g mailman -d /home/mailman -s /bin/false mailman \ - || return 1 - mkdir -p /home/mailman || return 1 - chown mailman.mailman /home/mailman || return 1 - chmod a+rx,g+ws /home/mailman || return 1 + groupadd -g 80 mailman + useradd -s /sbin/nologin -c "GNU Mailing List Manager" -d /usr/lib/mailman -u 80 -g mailman -M -r mailman cleanup=1 else cleanup=0 fi - # set permissions and ownership on the target directory - #mkdir -p $pkgdir/home/mailman || return 1 - #chown mailman.mailman $pkgdir/home/mailman || return 1 - #chmod a+rx,g+ws $pkgdir/home/mailman || return 1 - - # configure and build ./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 - make || return 1 - make DESTDIR=$pkgdir install || return 1 + 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 || return 1 - + if [ $cleanup -eq 1 ]; then msg "Removing user/group mailman" userdel mailman - rmdir /home/mailman fi } Added: mailman-2.1-build.patch =================================================================== --- mailman-2.1-build.patch (rev 0) +++ mailman-2.1-build.patch 2010-08-03 20:23:16 UTC (rev 86762) @@ -0,0 +1,694 @@ +diff -ruN mailman-2.1.12-a/bin/Makefile.in mailman-2.1.12-b/bin/Makefile.in +--- mailman-2.1.12-a/bin/Makefile.in 2009-02-23 22:23:35.000000000 +0100 ++++ mailman-2.1.12-b/bin/Makefile.in 2009-07-28 12:19:48.000000000 +0200 +@@ -28,7 +28,6 @@ + DESTDIR= + + CC= @CC@ +-CHMOD= @CHMOD@ + INSTALL= @INSTALL@ + + DEFS= @DEFS@ +@@ -56,7 +55,7 @@ + # Modes for directories and executables created by the install + # process. Default to group-writable directories but + # user-only-writable for executables. +-DIRMODE= 775 ++DIRMODE= 2775 + EXEMODE= 755 + FILEMODE= 644 + INSTALL_PROGRAM=$(INSTALL) -m $(EXEMODE) +@@ -72,8 +71,6 @@ + $(INSTALL) -m $(EXEMODE) $(BUILDDIR)/$$f $(DESTDIR)$(SCRIPTSDIR); \ + done + +-finish: +- + clean: + + distclean: +diff -ruN mailman-2.1.12-a/cron/Makefile.in mailman-2.1.12-b/cron/Makefile.in +--- mailman-2.1.12-a/cron/Makefile.in 2009-02-23 22:23:35.000000000 +0100 ++++ mailman-2.1.12-b/cron/Makefile.in 2009-07-28 12:19:48.000000000 +0200 +@@ -28,7 +28,6 @@ + DESTDIR= + + CC= @CC@ +-CHMOD= @CHMOD@ + INSTALL= @INSTALL@ + + DEFS= @DEFS@ +@@ -68,8 +67,6 @@ + $(INSTALL) -m $(EXEMODE) $(BUILDDIR)/$$f $(DESTDIR)$(CRONDIR); \ + done + +-finish: +- + clean: + + distclean: +diff -ruN mailman-2.1.12-a/Mailman/Archiver/Makefile.in mailman-2.1.12-b/Mailman/Archiver/Makefile.in +--- mailman-2.1.12-a/Mailman/Archiver/Makefile.in 2009-02-23 22:23:35.000000000 +0100 ++++ mailman-2.1.12-b/Mailman/Archiver/Makefile.in 2009-07-28 12:19:48.000000000 +0200 +@@ -28,7 +28,6 @@ + DESTDIR= + + CC= @CC@ +-CHMOD= @CHMOD@ + INSTALL= @INSTALL@ + + DEFS= @DEFS@ +@@ -47,7 +46,7 @@ + # Modes for directories and executables created by the install + # process. Default to group-writable directories but + # user-only-writable for executables. +-DIRMODE= 775 ++DIRMODE= 2775 + EXEMODE= 755 + FILEMODE= 644 + INSTALL_PROGRAM=$(INSTALL) -m $(EXEMODE) +@@ -63,8 +62,6 @@ + $(INSTALL) -m $(FILEMODE) $(srcdir)/$$f $(DESTDIR)$(PACKAGEDIR); \ + done + +-finish: +- + clean: + + distclean: +diff -ruN mailman-2.1.12-a/Mailman/Bouncers/Makefile.in mailman-2.1.12-b/Mailman/Bouncers/Makefile.in +--- mailman-2.1.12-a/Mailman/Bouncers/Makefile.in 2009-02-23 22:23:35.000000000 +0100 ++++ mailman-2.1.12-b/Mailman/Bouncers/Makefile.in 2009-07-28 12:19:48.000000000 +0200 +@@ -28,7 +28,6 @@ + DESTDIR= + + CC= @CC@ +-CHMOD= @CHMOD@ + INSTALL= @INSTALL@ + + DEFS= @DEFS@ +@@ -45,7 +44,7 @@ + # Modes for directories and executables created by the install + # process. Default to group-writable directories but + # user-only-writable for executables. +-DIRMODE= 775 ++DIRMODE= 2775 + EXEMODE= 755 + FILEMODE= 644 + INSTALL_PROGRAM=$(INSTALL) -m $(EXEMODE) +@@ -61,8 +60,6 @@ + $(INSTALL) -m $(FILEMODE) $(srcdir)/$$f $(DESTDIR)$(PACKAGEDIR); \ + done + +-finish: +- + clean: + + distclean: +diff -ruN mailman-2.1.12-a/Mailman/Cgi/Makefile.in mailman-2.1.12-b/Mailman/Cgi/Makefile.in +--- mailman-2.1.12-a/Mailman/Cgi/Makefile.in 2009-02-23 22:23:35.000000000 +0100 ++++ mailman-2.1.12-b/Mailman/Cgi/Makefile.in 2009-07-28 12:19:48.000000000 +0200 +@@ -28,7 +28,6 @@ + DESTDIR= + + CC= @CC@ +-CHMOD= @CHMOD@ + INSTALL= @INSTALL@ + + DEFS= @DEFS@ +@@ -47,7 +46,7 @@ + # Modes for directories and executables created by the install + # process. Default to group-writable directories but + # user-only-writable for executables. +-DIRMODE= 775 ++DIRMODE= 2775 + EXEMODE= 755 + FILEMODE= 644 + INSTALL_PROGRAM=$(INSTALL) -m $(EXEMODE) +@@ -63,8 +62,6 @@ + $(INSTALL) -m $(FILEMODE) $(srcdir)/$$f $(DESTDIR)$(CGIDIR); \ + done + +-finish: +- + clean: + + distclean: +diff -ruN mailman-2.1.12-a/Mailman/Commands/Makefile.in mailman-2.1.12-b/Mailman/Commands/Makefile.in +--- mailman-2.1.12-a/Mailman/Commands/Makefile.in 2009-02-23 22:23:35.000000000 +0100 ++++ mailman-2.1.12-b/Mailman/Commands/Makefile.in 2009-07-28 12:19:48.000000000 +0200 +@@ -28,7 +28,6 @@ + DESTDIR= + + CC= @CC@ +-CHMOD= @CHMOD@ + INSTALL= @INSTALL@ + + DEFS= @DEFS@ +@@ -45,7 +44,7 @@ + # Modes for directories and executables created by the install + # process. Default to group-writable directories but + # user-only-writable for executables. +-DIRMODE= 775 ++DIRMODE= 2775 + EXEMODE= 755 + FILEMODE= 644 + INSTALL_PROGRAM=$(INSTALL) -m $(EXEMODE) +@@ -61,8 +60,6 @@ + $(INSTALL) -m $(FILEMODE) $(srcdir)/$$f $(DESTDIR)$(PACKAGEDIR); \ + done + +-finish: +- + clean: + + distclean: +diff -ruN mailman-2.1.12-a/Mailman/Gui/Makefile.in mailman-2.1.12-b/Mailman/Gui/Makefile.in +--- mailman-2.1.12-a/Mailman/Gui/Makefile.in 2009-02-23 22:23:35.000000000 +0100 ++++ mailman-2.1.12-b/Mailman/Gui/Makefile.in 2009-07-28 12:19:48.000000000 +0200 +@@ -28,7 +28,6 @@ + DESTDIR= + + CC= @CC@ +-CHMOD= @CHMOD@ + INSTALL= @INSTALL@ + + DEFS= @DEFS@ +@@ -45,7 +44,7 @@ + # Modes for directories and executables created by the install + # process. Default to group-writable directories but + # user-only-writable for executables. +-DIRMODE= 775 ++DIRMODE= 2775 + EXEMODE= 755 + FILEMODE= 644 + INSTALL_PROGRAM=$(INSTALL) -m $(EXEMODE) +@@ -61,8 +60,6 @@ + $(INSTALL) -m $(FILEMODE) $(srcdir)/$$f $(DESTDIR)$(PACKAGEDIR); \ + done + +-finish: +- + clean: + + distclean: +diff -ruN mailman-2.1.12-a/Mailman/Handlers/Makefile.in mailman-2.1.12-b/Mailman/Handlers/Makefile.in +--- mailman-2.1.12-a/Mailman/Handlers/Makefile.in 2009-02-23 22:23:35.000000000 +0100 ++++ mailman-2.1.12-b/Mailman/Handlers/Makefile.in 2009-07-28 12:19:48.000000000 +0200 +@@ -28,7 +28,6 @@ + DESTDIR= + + CC= @CC@ +-CHMOD= @CHMOD@ + INSTALL= @INSTALL@ + + DEFS= @DEFS@ +@@ -45,7 +44,7 @@ + # Modes for directories and executables created by the install + # process. Default to group-writable directories but + # user-only-writable for executables. +-DIRMODE= 775 ++DIRMODE= 2775 + EXEMODE= 755 + FILEMODE= 644 + INSTALL_PROGRAM=$(INSTALL) -m $(EXEMODE) +@@ -61,8 +60,6 @@ + $(INSTALL) -m $(FILEMODE) $(srcdir)/$$f $(DESTDIR)$(PACKAGEDIR); \ + done + +-finish: +- + clean: + + distclean: +diff -ruN mailman-2.1.12-a/Mailman/Logging/Makefile.in mailman-2.1.12-b/Mailman/Logging/Makefile.in +--- mailman-2.1.12-a/Mailman/Logging/Makefile.in 2009-02-23 22:23:35.000000000 +0100 ++++ mailman-2.1.12-b/Mailman/Logging/Makefile.in 2009-07-28 12:19:48.000000000 +0200 +@@ -28,7 +28,6 @@ + DESTDIR= + + CC= @CC@ +-CHMOD= @CHMOD@ + INSTALL= @INSTALL@ + + DEFS= @DEFS@ +@@ -45,7 +44,7 @@ + # Modes for directories and executables created by the install + # process. Default to group-writable directories but + # user-only-writable for executables. +-DIRMODE= 775 ++DIRMODE= 2775 + EXEMODE= 755 + FILEMODE= 644 + INSTALL_PROGRAM=$(INSTALL) -m $(EXEMODE) +@@ -61,8 +60,6 @@ + $(INSTALL) -m $(FILEMODE) $(srcdir)/$$f $(DESTDIR)$(PACKAGEDIR); \ + done + +-finish: +- + clean: + + distclean: +diff -ruN mailman-2.1.12-a/Mailman/Makefile.in mailman-2.1.12-b/Mailman/Makefile.in +--- mailman-2.1.12-a/Mailman/Makefile.in 2009-02-23 22:23:35.000000000 +0100 ++++ mailman-2.1.12-b/Mailman/Makefile.in 2009-07-28 12:19:48.000000000 +0200 +@@ -20,8 +20,6 @@ + + # Variables set by configure + +-VERSION= @VERSION@ +- + VPATH= @srcdir@ + srcdir= @srcdir@ + bindir= @bindir@ +@@ -30,7 +28,6 @@ + DESTDIR= + + CC= @CC@ +-CHMOD= @CHMOD@ + INSTALL= @INSTALL@ + + DEFS= @DEFS@ +@@ -48,7 +45,7 @@ + # Modes for directories and executables created by the install + # process. Default to group-writable directories but + # user-only-writable for executables. +-DIRMODE= 775 ++DIRMODE= 2775 + EXEMODE= 755 + FILEMODE= 644 + INSTALL_PROGRAM=$(INSTALL) -m $(EXEMODE) +@@ -79,12 +76,6 @@ + (cd $$d; $(MAKE) DESTDIR=$(DESTDIR) install); \ + done + +-finish: +- @for d in $(SUBDIRS); \ +- do \ +- (cd $$d; $(MAKE) DESTDIR=$(DESTDIR) finish); \ +- done +- + clean: + for d in $(SUBDIRS); \ + do \ +diff -ruN mailman-2.1.12-a/Mailman/MTA/Makefile.in mailman-2.1.12-b/Mailman/MTA/Makefile.in +--- mailman-2.1.12-a/Mailman/MTA/Makefile.in 2009-02-23 22:23:35.000000000 +0100 ++++ mailman-2.1.12-b/Mailman/MTA/Makefile.in 2009-07-28 12:19:48.000000000 +0200 +@@ -28,7 +28,6 @@ + DESTDIR= + + CC= @CC@ +-CHMOD= @CHMOD@ + INSTALL= @INSTALL@ + + DEFS= @DEFS@ +@@ -45,7 +44,7 @@ + # Modes for directories and executables created by the install + # process. Default to group-writable directories but + # user-only-writable for executables. +-DIRMODE= 775 ++DIRMODE= 2775 + EXEMODE= 755 + FILEMODE= 644 + INSTALL_PROGRAM=$(INSTALL) -m $(EXEMODE) +@@ -61,8 +60,6 @@ + $(INSTALL) -m $(FILEMODE) $(srcdir)/$$f $(DESTDIR)$(PACKAGEDIR); \ + done + +-finish: +- + clean: + + distclean: +diff -ruN mailman-2.1.12-a/Mailman/Queue/Makefile.in mailman-2.1.12-b/Mailman/Queue/Makefile.in +--- mailman-2.1.12-a/Mailman/Queue/Makefile.in 2009-02-23 22:23:35.000000000 +0100 ++++ mailman-2.1.12-b/Mailman/Queue/Makefile.in 2009-07-28 12:19:48.000000000 +0200 +@@ -28,7 +28,6 @@ + DESTDIR= + + CC= @CC@ +-CHMOD= @CHMOD@ + INSTALL= @INSTALL@ + + DEFS= @DEFS@ +@@ -45,7 +44,7 @@ + # Modes for directories and executables created by the install + # process. Default to group-writable directories but + # user-only-writable for executables. +-DIRMODE= 775 ++DIRMODE= 2775 + EXEMODE= 755 + FILEMODE= 644 + INSTALL_PROGRAM=$(INSTALL) -m $(EXEMODE) +@@ -61,8 +60,6 @@ + $(INSTALL) -m $(FILEMODE) $(srcdir)/$$f $(DESTDIR)$(PACKAGEDIR); \ + done + +-finish: +- + clean: + + distclean: +diff -ruN mailman-2.1.12-a/Makefile.in mailman-2.1.12-b/Makefile.in +--- mailman-2.1.12-a/Makefile.in 2009-02-23 22:23:35.000000000 +0100 ++++ mailman-2.1.12-b/Makefile.in 2009-07-28 12:19:48.000000000 +0200 +@@ -61,11 +61,10 @@ + # Modes for directories and executables created by the install + # process. Default to group-writable directories but + # user-only-writable for executables. +-DIRMODE= 775 ++DIRMODE= 2775 + EXEMODE= 755 + FILEMODE= 644 + INSTALL_PROGRAM=$(INSTALL) -m $(EXEMODE) +-DIRSETGID= chmod g+s + + DATE = $(shell python -c 'import time; print time.strftime("%d-%b-%Y"),') + LANGPACK = README-I18N.en templates messages +@@ -85,14 +84,24 @@ + + doinstall: $(SUBDIRS) + @echo "Creating architecture independent directories..." ++ dir=$(DESTDIR)$(prefix); \ ++ if test ! -d $$dir; then \ ++ echo "Creating directory hierarchy $$dir"; \ ++ $(INSTALL) -d -m $(DIRMODE) $$dir; \ ++ else true; \ ++ fi; ++ dir=$(DESTDIR)$(var_prefix); \ ++ if test ! -d $$dir; then \ ++ echo "Creating directory hierarchy $$dir"; \ ++ $(INSTALL) -d -m $(DIRMODE) $$dir; \ ++ else true; \ ++ fi; + @for d in $(VAR_DIRS); \ + do \ + dir=$(DESTDIR)$(var_prefix)/$$d; \ + if test ! -d $$dir; then \ + echo "Creating directory hierarchy $$dir"; \ +- $(srcdir)/mkinstalldirs $$dir; \ +- chmod $(DIRMODE) $$dir; \ +- $(DIRSETGID) $$dir; \ ++ $(INSTALL) -d -m $(DIRMODE) $$dir; \ + else true; \ + fi; \ + done +@@ -102,9 +111,7 @@ + dir=$(DESTDIR)$(prefix)/$$d; \ + if test ! -d $$dir; then \ + echo "Creating directory hierarchy $$dir"; \ +- $(srcdir)/mkinstalldirs $$dir; \ +- chmod $(DIRMODE) $$dir; \ +- $(DIRSETGID) $$dir; \ ++ $(INSTALL) -d -m $(DIRMODE) $$dir; \ + else true; \ + fi; \ + done +@@ -114,9 +121,7 @@ + dir=$(DESTDIR)$(exec_prefix)/$$d; \ + if test ! -d $$dir; then \ + echo "Creating directory hierarchy $$dir"; \ +- $(srcdir)/mkinstalldirs $$dir; \ +- chmod $(DIRMODE) $$dir; \ +- $(DIRSETGID) $$dir; \ ++ $(INSTALL) -d -m $(DIRMODE) $$dir; \ + else true; \ + fi; \ + done +diff -ruN mailman-2.1.12-a/messages/Makefile.in mailman-2.1.12-b/messages/Makefile.in +--- mailman-2.1.12-a/messages/Makefile.in 2009-02-23 22:23:35.000000000 +0100 ++++ mailman-2.1.12-b/messages/Makefile.in 2009-07-28 12:19:48.000000000 +0200 +@@ -32,7 +32,6 @@ + DESTDIR= + + CC= @CC@ +-CHMOD= @CHMOD@ + INSTALL= @INSTALL@ + + DEFS= @DEFS@ +@@ -43,7 +42,6 @@ + CFLAGS= $(OPT) $(DEFS) + PACKAGEDIR= $(prefix)/messages + SHELL= /bin/sh +-DIRSETGID= chmod g+s + MSGFMT= @PYTHON@ ../build/bin/msgfmt.py + MSGMERGE= msgmerge + +@@ -60,7 +58,7 @@ + # Modes for directories and executables created by the install + # process. Default to group-writable directories but + # user-only-writable for executables. +-DIRMODE= 775 ++DIRMODE= 2775 + EXEMODE= 755 + FILEMODE= 644 + INSTALL_PROGRAM=$(INSTALL) -m $(EXEMODE) +@@ -90,9 +88,8 @@ + do \ + dir=$(DESTDIR)$(prefix)/$$d; \ + echo "Creating language directory $$dir"; \ +- $(srcdir)/../mkinstalldirs $$dir; \ +- chmod $(DIRMODE) $$dir; \ +- $(DIRSETGID) $$dir; \ ++ $(INSTALL) -d -m $(DIRMODE) `dirname $$dir`; \ ++ $(INSTALL) -d -m $(DIRMODE) $$dir; \ + done + @for d in $(LANGUAGES); \ + do \ +@@ -113,8 +110,6 @@ + + mofiles: $(MOFILES) + +-finish: +- + clean: + -rm -f */LC_MESSAGES/mailman.mo + +diff -ruN mailman-2.1.12-a/misc/Makefile.in mailman-2.1.12-b/misc/Makefile.in +--- mailman-2.1.12-a/misc/Makefile.in 2009-02-23 22:23:35.000000000 +0100 ++++ mailman-2.1.12-b/misc/Makefile.in 2009-07-28 12:19:48.000000000 +0200 +@@ -30,7 +30,6 @@ + DESTDIR= + + CC= @CC@ +-CHMOD= @CHMOD@ + INSTALL= @INSTALL@ + PYTHON= @PYTHON@ + +@@ -62,7 +61,7 @@ + # Modes for directories and executables created by the install + # process. Default to group-writable directories but + # user-only-writable for executables. +-DIRMODE= 775 ++DIRMODE= 2775 + EXEMODE= 755 + FILEMODE= 644 + DATAMODE= 664 +@@ -101,8 +100,6 @@ + (cd $(PKGDIR)/$$p ; umask 02 ; PYTHONPATH=$(PYTHONLIBDIR) $(PYTHON) $(SETUPCMD)); \ + done + +-finish: +- + clean: + + distclean: +diff -ruN mailman-2.1.12-a/scripts/Makefile.in mailman-2.1.12-b/scripts/Makefile.in +--- mailman-2.1.12-a/scripts/Makefile.in 2009-02-23 22:23:35.000000000 +0100 ++++ mailman-2.1.12-b/scripts/Makefile.in 2009-07-28 12:19:48.000000000 +0200 +@@ -28,7 +28,6 @@ + DESTDIR= + + CC= @CC@ +-CHMOD= @CHMOD@ + INSTALL= @INSTALL@ + + DEFS= @DEFS@ +@@ -49,7 +48,7 @@ + # Modes for directories and executables created by the install + # process. Default to group-writable directories but + # user-only-writable for executables. +-DIRMODE= 775 ++DIRMODE= 2775 + EXEMODE= 755 + FILEMODE= 644 + INSTALL_PROGRAM=$(INSTALL) -m $(EXEMODE) +@@ -68,8 +67,6 @@ + $(INSTALL) -m $(FILEMODE) $(srcdir)/join $(DESTDIR)$(SCRIPTSDIR)/subscribe + $(INSTALL) -m $(FILEMODE) $(srcdir)/leave $(DESTDIR)$(SCRIPTSDIR)/unsubscribe + +-finish: +- + clean: + + distclean: +diff -ruN mailman-2.1.12-a/src/Makefile.in mailman-2.1.12-b/src/Makefile.in +--- mailman-2.1.12-a/src/Makefile.in 2009-07-28 12:19:47.000000000 +0200 ++++ mailman-2.1.12-b/src/Makefile.in 2009-07-28 12:19:48.000000000 +0200 +@@ -28,7 +28,6 @@ + DESTDIR= + + CC= @CC@ +-CHMOD= @CHMOD@ + INSTALL= @INSTALL@ + PYTHON= @PYTHON@ + +@@ -63,10 +62,9 @@ + # Modes for directories and executables created by the install + # process. Default to group-writable directories but + # user-only-writable for executables. +-DIRMODE= 775 +-EXEMODE= 755 ++DIRMODE= 2775 ++EXEMODE= 2755 + INSTALL_PROGRAM=$(INSTALL) -m $(EXEMODE) +-DIRSETGID= chmod g+s + + # Fixed definitions + +@@ -110,20 +108,10 @@ + do \ + exe=$(DESTDIR)$(CGIDIR)/$$f$(CGIEXT); \ + $(INSTALL_PROGRAM) $$f $$exe; \ +- $(DIRSETGID) $$exe; \ + done + for f in $(MAIL_PROGS); \ + do \ + $(INSTALL_PROGRAM) $$f $(DESTDIR)$(MAILDIR); \ +- $(DIRSETGID) $(DESTDIR)$(MAILDIR)/$$f; \ +- done +- +-finish: +- -for f in $(SUID_CGI_PROGS); \ +- do \ +- exe=$(DESTDIR)$(CGIDIR)/$$f$(CGIEXT); \ +- chown $(MAILMAN_USER) $$exe; \ +- chmod u+s $$exe; \ + done + + clean: +diff -ruN mailman-2.1.12-a/templates/Makefile.in mailman-2.1.12-b/templates/Makefile.in +--- mailman-2.1.12-a/templates/Makefile.in 2009-02-23 22:23:35.000000000 +0100 ++++ mailman-2.1.12-b/templates/Makefile.in 2009-07-28 12:19:48.000000000 +0200 +@@ -28,7 +28,6 @@ + DESTDIR= + + CC= @CC@ +-CHMOD= @CHMOD@ + INSTALL= @INSTALL@ + TRUE= @TRUE@ + +@@ -48,7 +47,7 @@ + # Modes for directories and executables created by the install + # process. Default to group-writable directories but + # user-only-writable for executables. +-DIRMODE= 775 ++DIRMODE= 2775 + EXEMODE= 755 + FILEMODE= 644 + INSTALL_PROGRAM=$(INSTALL) -m $(EXEMODE) +@@ -61,15 +60,13 @@ + install: + for d in $(LANGUAGES); \ + do \ +- $(srcdir)/../mkinstalldirs $(DESTDIR)$(TEMPLATEDIR)/$$d; \ ++ $(INSTALL) -d -m $(DIRMODE) $(DESTDIR)$(TEMPLATEDIR)/$$d; \ + for f in $(srcdir)/$$d/*.html $(srcdir)/$$d/*.txt; \ + do \ + $(INSTALL) -m $(FILEMODE) $$f $(DESTDIR)$(TEMPLATEDIR)/$$d; \ + done; \ + done + +-finish: +- + clean: + + distclean: +diff -ruN mailman-2.1.12-a/tests/bounces/Makefile.in mailman-2.1.12-b/tests/bounces/Makefile.in +--- mailman-2.1.12-a/tests/bounces/Makefile.in 2009-02-23 22:23:35.000000000 +0100 ++++ mailman-2.1.12-b/tests/bounces/Makefile.in 2009-07-28 12:19:48.000000000 +0200 +@@ -28,7 +28,6 @@ + DESTDIR= + + CC= @CC@ +-CHMOD= @CHMOD@ + INSTALL= @INSTALL@ + + DEFS= @DEFS@ +@@ -46,7 +45,7 @@ + # Modes for directories and executables created by the install + # process. Default to group-writable directories but + # user-only-writable for executables. +-DIRMODE= 775 ++DIRMODE= 2775 + EXEMODE= 755 + FILEMODE= 644 + INSTALL_PROGRAM=$(INSTALL) -m $(EXEMODE) +@@ -60,8 +59,6 @@ + $(INSTALL) -m $(FILEMODE) $$f $(DESTDIR)$(BOUNCEDIR); \ + done + +-finish: +- + clean: + + distclean: +diff -ruN mailman-2.1.12-a/tests/Makefile.in mailman-2.1.12-b/tests/Makefile.in +--- mailman-2.1.12-a/tests/Makefile.in 2009-02-23 22:23:35.000000000 +0100 ++++ mailman-2.1.12-b/tests/Makefile.in 2009-07-28 12:19:48.000000000 +0200 +@@ -28,7 +28,6 @@ + DESTDIR= + + CC= @CC@ +-CHMOD= @CHMOD@ + INSTALL= @INSTALL@ + + DEFS= @DEFS@ +@@ -46,7 +45,7 @@ + # Modes for directories and executables created by the install + # process. Default to group-writable directories but + # user-only-writable for executables. +-DIRMODE= 775 ++DIRMODE= 2775 + EXEMODE= 755 + FILEMODE= 644 + INSTALL_PROGRAM=$(INSTALL) -m $(EXEMODE) +@@ -71,8 +70,6 @@ + (cd $$d; $(MAKE) DESTDIR=$(DESTDIR) install); \ + done + +-finish: +- + clean: + + distclean: +diff -ruN mailman-2.1.12-a/tests/msgs/Makefile.in mailman-2.1.12-b/tests/msgs/Makefile.in +--- mailman-2.1.12-a/tests/msgs/Makefile.in 2009-02-23 22:23:35.000000000 +0100 ++++ mailman-2.1.12-b/tests/msgs/Makefile.in 2009-07-28 12:19:48.000000000 +0200 +@@ -28,7 +28,6 @@ + DESTDIR= + + CC= @CC@ +-CHMOD= @CHMOD@ + INSTALL= @INSTALL@ + + DEFS= @DEFS@ +@@ -46,7 +45,7 @@ + # Modes for directories and executables created by the install + # process. Default to group-writable directories but + # user-only-writable for executables. +-DIRMODE= 775 ++DIRMODE= 2775 + EXEMODE= 755 + FILEMODE= 644 + INSTALL_PROGRAM=$(INSTALL) -m $(EXEMODE) +@@ -60,8 +59,6 @@ + $(INSTALL) -m $(FILEMODE) $$f $(DESTDIR)$(MSGSDIR); \ + done + +-finish: +- + clean: + + distclean: Modified: mailman.install =================================================================== --- mailman.install 2010-08-03 19:12:29 UTC (rev 86761) +++ mailman.install 2010-08-03 20:23:16 UTC (rev 86762) @@ -1,23 +1,31 @@ -# arg 1: the new package version +## arg 1: the new package version post_install() { - groupadd -g 80 mailman &>/dev/null - useradd -u 80 -g mailman -d /home/mailman -s /bin/false mailman &>/dev/null - cd /home/mailman && bin/check_perms -f >/dev/null 2>&1 + # Make sure the group and user "mailman" exists on this system and has the correct values + if grep -q "^mailman:" /etc/group &> /dev/null ; then + groupmod -g 80 -n mailman mailman &> /dev/null + else + groupadd -g 80 mailman &> /dev/null + fi + + if grep -q "^mailman:" /etc/passwd 2> /dev/null ; then + usermod -s /sbin/nologin -c "GNU Mailing List Manager" -d /usr/lib/mailman -u 80 -g mailman mailman &> /dev/null + else + useradd -s /sbin/nologin -c "GNU Mailing List Manager" -d /usr/lib/mailman -u 80 -g mailman -M -r mailman &> /dev/null + fi + + # check file permissions +# cd /usr/lib/mailman && bin/check_perms -f > /dev/null 2>&1 # -f applies fixes we should solve in the PKGBUILD + cd /usr/lib/mailman && bin/check_perms > /dev/null } -# arg 1: the new package version -# arg 2: the old package version +## arg 1: the new package version +## arg 2: the old package version post_upgrade() { post_install $1 } -# arg 1: the old package version +## arg 1: the old package version pre_remove() { userdel mailman &>/dev/null - groupdel mailman &>/dev/null + groupdel mailman &>/dev/null || /bin/true } - -op=$1 -shift - -$op $*
