318 lines
11 KiB
RPMSpec
318 lines
11 KiB
RPMSpec
%define mailman_uid 64910
|
|
%define mailman_gid 64910
|
|
%define nobody_gid 65013
|
|
%define pkgver %(echo %version | tr _ -)
|
|
|
|
Name: mailman
|
|
Version: 2.1.18_1
|
|
Release: 1mamba
|
|
Summary: Free software for managing electronic mail discussion and e-newsletter lists
|
|
Group: System/Servers
|
|
Vendor: openmamba
|
|
Distribution: openmamba
|
|
Packager: Silvan Calarco <silvan.calarco@mambasoft.it>
|
|
URL: http://mailman.sourceforge.net
|
|
Source0: http://downloads.sourceforge.net/sourceforge/mailman/mailman-%{pkgver}.tgz
|
|
Source1: %{name}-update_aliases.sh
|
|
Source2: %{name}-cron
|
|
Source3: %{name}-update_aliases_vmailmgr.sh
|
|
Source4: %{name}-apache.conf
|
|
Source5: %{name}-initscript
|
|
Patch0: %{name}-2.1.9-fix_buildroot.patch
|
|
Patch1: %{name}-2.1.10-template_it_antispam_fix.patch
|
|
Patch2: %{name}-2.1.10-cmd_subscribe_fixsyntax.patch
|
|
Patch3: %{name}-2.1.11-use_python2.4.patch
|
|
License: GPL
|
|
## AUTOBUILDREQ-BEGIN
|
|
BuildRequires: glibc-devel
|
|
## AUTOBUILDREQ-END
|
|
BuildRequires: expect
|
|
BuildRequires: libpython-devel
|
|
BuildRequires: python
|
|
BuildRequires: dnspython
|
|
Requires(pre): expect >= 8.4.5
|
|
Requires: python >= 2.2.3
|
|
Requires: apache >= 2.0.45
|
|
Requires: vixie-cron >= 3.0.1
|
|
Requires: dnspython
|
|
Requires: mta
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-root
|
|
|
|
# FIXME: postfix integration is missing
|
|
|
|
%description
|
|
Mailman is free software for managing electronic mail discussion and e-newsletter lists.
|
|
Mailman is integrated with the web, making it easy for users to manage their accounts and for list owners to administer their lists.
|
|
Mailman supports built-in archiving, automatic bounce processing, content filtering, digest delivery, spam filters, and more.
|
|
|
|
%prep
|
|
%setup -q -n %{name}-%{pkgver}
|
|
#%patch0 -p1
|
|
# FIXME: the following patch disables the confirmation url link in email
|
|
# so that some smtp server filters like smpt.fastwebnet.it don't
|
|
# block the message (error "554 Message Refused")
|
|
%patch1 -p1
|
|
#%patch2 -p0
|
|
#%patch3 -p1
|
|
|
|
%build
|
|
# activate sendmail patching the handler (otherwise it won't work for
|
|
# safety reasons)
|
|
sed -i "s|assert 0|#assert 0|" Mailman/Handlers/Sendmail.py
|
|
sed -i "s|/usr/bin/env|/bin/env|" bin/msgfmt.py tests/onebounce.py
|
|
|
|
%configure \
|
|
--prefix=%{_datadir}/mailman \
|
|
--exec_prefix=%{_datadir}/mailman \
|
|
--bindir=%{_bindir} \
|
|
--with-permcheck=no \
|
|
--with-var-prefix=/var/mailman \
|
|
--with-cgi-gid=nobody \
|
|
--with-mailhost=localhost \
|
|
--with-urlhost=localhost \
|
|
--with-mail-gid=mailman \
|
|
--with-mail-uid=mailman \
|
|
--with-python=%{_bindir}/python \
|
|
PYTHON=%{__python}
|
|
|
|
%make
|
|
|
|
%install
|
|
[ "%{buildroot}" != / ] && rm -rf %{buildroot}
|
|
install -d %{buildroot}/var/www/cgi-bin
|
|
%makeinstall
|
|
|
|
sed -i "s|MAILMAN_USER = ''|MAILMAN_USER = 'mailman'|
|
|
s|MAILMAN_GROUP = ''|MAILMAN_GROUP = 'mailman'|" \
|
|
%{buildroot}%{_datadir}/mailman/Mailman/Defaults.py
|
|
|
|
install -D %{buildroot}%{_datadir}/mailman/cron/crontab.in \
|
|
%{buildroot}%{_sysconfdir}/cron.d/mailman
|
|
install -D -m 0755 %{S:5} \
|
|
%{buildroot}%{_initrddir}/mailman
|
|
install -m 0755 %{S:1} \
|
|
%{buildroot}%{_datadir}/mailman/bin/update_aliases.sh
|
|
install -m 0755 %{S:3} \
|
|
%{buildroot}%{_datadir}/mailman/bin/update_aliases_vmailmgr.sh
|
|
install -D %{S:2} \
|
|
%{buildroot}%{_sysconfdir}/cron.daily/mailman
|
|
install -D %{S:4} \
|
|
%{buildroot}%{_sysconfdir}/httpd/httpd.d/mailman.conf
|
|
|
|
mv %{buildroot}%{_datadir}/mailman/icons %{buildroot}/var/www
|
|
|
|
%clean
|
|
[ "%{buildroot}" != / ] && rm -rf %{buildroot}
|
|
|
|
%pre
|
|
# new install
|
|
if [ $1 -ge 1 ]; then
|
|
groupadd -g %{nobody_gid} nobody 2>/dev/null
|
|
groupadd -g %{mailman_gid} mailman 2>/dev/null
|
|
useradd -u %{mailman_uid} -g mailman -d /dev/null mailman \
|
|
-s /bin/false 2>/dev/null
|
|
fi
|
|
exit 0
|
|
|
|
%post
|
|
# new install
|
|
if [ $1 -eq 1 ]; then
|
|
sed -i "s|\(DEFAULT_EMAIL_HOST = \).*|\1'`hostname -f`'|
|
|
s|\(DEFAULT_URL_HOST = \).*|\1'`hostname -f`'|
|
|
s|#\(DELIVERY_MODULE = 'Sendmail'\)|\1|
|
|
s|\(DELIVERY_MODULE = 'SMTPDirect'\)|#\1|" \
|
|
%{_datadir}/mailman/Mailman/Defaults.py
|
|
|
|
[ -e /usr/sbin/postfix ] && {
|
|
# postfix configuation
|
|
postconf -e alias_database=hash:/etc/aliases,hash:/etc/aliases-mailman
|
|
%{_datadir}/mailman/bin/newlist -q \
|
|
mailman postmaster@`postconf -hv mydomain` \
|
|
`/usr/bin/mkpasswd -l 10 -s 0` &>/dev/null
|
|
echo "\
|
|
Mailman list created.
|
|
Use %{_datadir}/mailman/bin/mmsitepass to set mailman administrator password."
|
|
|
|
} || {
|
|
[ -f /etc/qmail/me ] && {
|
|
# qmail configuration
|
|
%{_datadir}/mailman/bin/newlist -q \
|
|
mailman postmaster@`cat /etc/qmail/me` \
|
|
`/usr/bin/mkpasswd -l 10 -s 0` &>/dev/null
|
|
%{_datadir}/mailman/bin/update_aliases.sh
|
|
echo "\
|
|
Mailman list created.
|
|
Use %{_datadir}/mailman/bin/mmsitepass to set mailman administrator password."
|
|
}
|
|
}
|
|
fi
|
|
exit 0
|
|
|
|
%postun
|
|
# update
|
|
if [ $1 -eq 1 ]; then
|
|
/sbin/chkconfig mailman
|
|
[ $? -eq 0 ] && %{_initrddir}/mailman restart 2>/dev/null
|
|
fi
|
|
if [ $1 -eq 0 ]; then
|
|
[ -e /usr/sbin/postconf ] && postconf -e alias_database=hash:/etc/aliases
|
|
fi
|
|
exit 0
|
|
|
|
%preun
|
|
# erase
|
|
if [ $1 -eq 0 ]; then
|
|
/sbin/chkconfig --del mailman
|
|
%{_initrddir}/mailman stop 2>/dev/null
|
|
userdel mailman 2>/dev/null
|
|
groupdel mailman 2>/dev/null
|
|
fi
|
|
exit 0
|
|
|
|
%files
|
|
%defattr(-,root,root)
|
|
%config(noreplace) %{_sysconfdir}/httpd/httpd.d/mailman.conf
|
|
%dir %attr(2775,root,root) %{_datadir}/mailman/
|
|
%attr(2775,root,mailman) %{_datadir}/mailman/bin/*
|
|
%attr(2775,root,mailman) %{_datadir}/mailman/cgi-bin/*
|
|
%attr(2775,root,mailman) %{_datadir}/mailman/cron/*
|
|
%attr(2775,root,mailman) %{_datadir}/mailman/mail/*
|
|
%attr(2775,root,mailman) %{_datadir}/mailman/Mailman/*
|
|
%attr(2775,root,mailman) %{_datadir}/mailman/messages/*
|
|
#%attr(2775,root,mailman) %{_datadir}/mailman/pythonlib/*
|
|
%attr(2775,root,mailman) %{_datadir}/mailman/scripts/*
|
|
%attr(2775,root,mailman) %{_datadir}/mailman/templates/*
|
|
%attr(2775,root,mailman) %{_datadir}/mailman/tests/*
|
|
%config(noreplace) %{_datadir}/mailman/Mailman/Defaults.py
|
|
%config(noreplace) %{_datadir}/mailman/Mailman/mm_cfg.py
|
|
%attr(0755,root,root) %{_initrddir}/mailman
|
|
%{_sysconfdir}/cron.d/mailman
|
|
%{_sysconfdir}/cron.daily/mailman
|
|
%dir %attr(2775,root,mailman) /var/mailman
|
|
%dir %attr(2770,root,mailman) /var/mailman/archives/private
|
|
%dir %attr(2775,root,mailman) /var/mailman/archives/public
|
|
%dir %attr(2775,root,mailman) /var/mailman/data
|
|
%attr(2775,root,mailman) /var/mailman/data/sitelist.cfg
|
|
%dir %attr(2775,root,mailman) /var/mailman/lists
|
|
%dir %attr(2775,root,mailman) /var/mailman/logs
|
|
%dir %attr(2775,root,mailman) /var/mailman/qfiles
|
|
%dir %attr(2775,root,mailman) /var/mailman/spam
|
|
/var/www/icons/*
|
|
%doc gnu-COPYING-GPL
|
|
#%doc README ACKNOWLEDGMENTS FAQ BUGS README.* TODO UPGRADING NEWS
|
|
|
|
%changelog
|
|
* Tue Jun 17 2014 Silvan Calarco <silvan.calarco@mambasoft.it> 2.1.18_1-1mamba
|
|
- update to 2.1.18_1
|
|
|
|
* Mon Nov 25 2013 Automatic Build System <autodist@mambasoft.it> 2.1.17-1mamba
|
|
- automatic version update by autodist
|
|
|
|
* Wed Oct 30 2013 Automatic Build System <autodist@mambasoft.it> 2.1.16-1mamba
|
|
- automatic version update by autodist
|
|
|
|
* Thu May 30 2013 Silvan Calarco <silvan.calarco@mambasoft.it> 2.1.15-3mamba
|
|
- python 2.7 rebuild
|
|
|
|
* Sat Apr 13 2013 Silvan Calarco <silvan.calarco@mambasoft.it> 2.1.15-2mamba
|
|
- fix pidfile location in initscript for systemd to correctly detect status
|
|
|
|
* Thu Jan 03 2013 Automatic Build System <autodist@mambasoft.it> 2.1.15-1mamba
|
|
- update to 2.1.15
|
|
|
|
* Tue Sep 21 2010 Automatic Build System <autodist@mambasoft.it> 2.1.14-1mamba
|
|
- automatic update by autodist
|
|
|
|
* Thu Feb 04 2010 Silvan Calarco <silvan.calarco@mambasoft.it> 2.1.13-1mamba
|
|
- update to 2.1.13
|
|
|
|
* Mon Mar 30 2009 Silvan Calarco <silvan.calarco@mambasoft.it> 2.1.12-2mamba
|
|
- remove use_python2.4 patch
|
|
|
|
* Mon Mar 30 2009 Silvan Calarco <silvan.calarco@mambasoft.it> 2.1.12-1mamba
|
|
- automatic update by autodist
|
|
|
|
* Thu Jan 08 2009 Silvan Calarco <silvan.calarco@mambasoft.it> 2.1.11-2mamba
|
|
- update cron and update_aliases script for exiting with 0
|
|
|
|
* Fri Dec 05 2008 Silvan Calarco <silvan.calarco@mambasoft.it> 2.1.11-1mamba
|
|
- update to 2.1.11
|
|
- added patch to force use of python 2.4 (python 2.6 not supported yet); initscript patched too
|
|
|
|
* Thu Jun 12 2008 Silvan Calarco <silvan.calarco@mambasoft.it> 2.1.10-2mamba
|
|
- added a patch to fix a syntax error in cmd_subscribe.py
|
|
|
|
* Tue Jun 10 2008 Silvan Calarco <silvan.calarco@mambasoft.it> 2.1.10-1mamba
|
|
- update to 2.1.10
|
|
- added anti-spam patch to workaround a problem with fastweb-it smtp server
|
|
|
|
* Fri Jan 18 2008 Silvan Calarco <silvan.calarco@mambasoft.it> 2.1.9-7mamba
|
|
- initscript: send output to /dev/null so startup script won't hung when
|
|
used with |tee
|
|
|
|
* Sat Jun 02 2007 Silvan Calarco <silvan.calarco@mambasoft.it> 2.1.9-6mamba
|
|
- fix various permissions
|
|
|
|
* Thu May 24 2007 Silvan Calarco <silvan.calarco@mambasoft.it> 2.1.9-5mamba
|
|
- fix permissions on %{_datadir}/mailman directory
|
|
|
|
* Thu May 24 2007 Silvan Calarco <silvan.calarco@mambasoft.it> 2.1.9-4mamba
|
|
- use nobody as cgi and mail gid
|
|
- patch: remove buildroot patchs in python compiled files
|
|
- set nofiles as the mail-gid
|
|
|
|
* Sun Mar 18 2007 Silvan Calarco <silvan.calarco@mambasoft.it> 2.1.9-3qilnx
|
|
- change gid to nobody as used by postfix
|
|
- fixed general permissions
|
|
- added httpd.d configuration file
|
|
|
|
* Wed Mar 14 2007 Silvan Calarco <silvan.calarco@mambasoft.it> 2.1.9-2qilnx
|
|
- fixed scripts for integration with postfix as well as qmail
|
|
|
|
* Mon Sep 18 2006 Davide Madrisan <davide.madrisan@qilinux.it> 2.1.9-1qilnx
|
|
- update to version 2.1.9 by autospec
|
|
- also fixes several security issues including CVE-2006-[2941,3636] (qibug#88)
|
|
|
|
* Wed Jun 28 2006 Davide Madrisan <davide.madrisan@qilinux.it> 2.1.8b1-2qilnx
|
|
- fixed creation of used mailman when qmail is not installed
|
|
- execute qmail dependent commands in the specfile scriptlets only if qmail
|
|
is installed
|
|
|
|
* Thu Apr 06 2006 Silvan Calarco <silvan.calarco@mambasoft.it> 2.1.8b1-1qilnx
|
|
- update to version 2.1.8b1 by autospec
|
|
- removed dependency on qmail
|
|
|
|
* Thu Sep 22 2005 Davide Madrisan <davide.madrisan@qilinux.it> 2.1.6-1qilnx
|
|
- update to version 2.1.6 by autospec
|
|
- also fixes the security vulnerability CVE- 2005-3573
|
|
- removed security patches (merged upstream)
|
|
- %%post script fixed
|
|
|
|
* Fri Feb 11 2005 Davide Madrisan <davide.madrisan@qilinux.it> 2.1.5-3qilnx
|
|
- security fix QSA-2005-014 (CAN-2004-1177, CAN-2005-0202)
|
|
|
|
* Wed Jun 30 2004 Silvan Calarco <silvan.calarco@mambasoft.it> 2.1.5-2qilnx
|
|
- fixed a /usr/bin/env dependency problem
|
|
|
|
* Thu May 28 2004 Davide Madrisan <davide.madrisan@qilinux.it> 2.1.5-1qilnx
|
|
- new version rebuild
|
|
|
|
* Wed May 26 2004 Davide Madrisan <davide.madrisan@qilinux.it> 2.1.4-5qilnx
|
|
- added security patch for remote password retrieval (CAN-2004-0412)
|
|
backported from mailman 2.1.5 by Mark J Cox <mjc@redhat.com>
|
|
|
|
* Tue May 13 2004 Silvan Calarco <silvan.calarco@mambasoft.it> 2.1.4-4qilnx
|
|
- added update_aliases_vmailmgr.sh script for virtual domain aliases creation
|
|
|
|
* Mon May 10 2004 Silvan Calarco <silvan.calarco@mambasoft.it> 2.1.4-3qilnx
|
|
- some fixes on post script
|
|
|
|
* Mon May 03 2004 Silvan Calarco <silvan.calarco@mambasoft.it> 2.1.4-2qilnx
|
|
- added automatic mailman list configuration
|
|
|
|
* Tue Feb 17 2004 Davide Madrisan <davide.madrisan@qilinux.it> 2.1.4-1qilnx
|
|
- new version rebuilt (security bugfixes)
|
|
|
|
* Tue Sep 16 2003 Silvan Calarco <silvan.calarco@mambasoft.it> 2.1.2-1qilnx
|
|
- first build
|