diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..cbb3a13 --- /dev/null +++ b/.gitignore @@ -0,0 +1,4 @@ +*.rpm +*.log +*spec-20* +*.tar.gz diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..eec42e8 --- /dev/null +++ b/Makefile @@ -0,0 +1,21 @@ +# Makefile for source rpm: smeserver-mailman +# $Id: Makefile,v 1.1 2021/01/01 10:30:04 brianr Exp $ +NAME := smeserver-mailman +SPECFILE = $(firstword $(wildcard *.spec)) + +define find-makefile-common +for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done +endef + +MAKEFILE_COMMON := $(shell $(find-makefile-common)) + +ifeq ($(MAKEFILE_COMMON),) +# attept a checkout +define checkout-makefile-common +test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2 +endef + +MAKEFILE_COMMON := $(shell $(checkout-makefile-common)) +endif + +include $(MAKEFILE_COMMON) diff --git a/README.md b/README.md index dae3044..72375be 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,16 @@ -# smeserver-mailman +# smeserver-mailman -SMEServer Koozali developed git repo for smeserver-mailman smecontribs \ No newline at end of file +SMEServer Koozali developed git repo for smeserver-mailman smecontribs + +## Wiki +
https://wiki.koozali.org/Mailman +
https://wiki.koozali.org/Mailman/fr + +## Bugzilla +Show list of outstanding bugs: [here](https://bugs.koozali.org/buglist.cgi?component=smeserver-mailman&product=SME%20Contribs&query_format=advanced&limit=0&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=CONFIRMED) + +## Description + +
*This description has been generated by an LLM AI system and cannot be relied on to be fully correct.* +*Once it has been checked, then this comment will be deleted* +
diff --git a/additional/CHANGELOG.git b/additional/CHANGELOG.git new file mode 100644 index 0000000..200a429 --- /dev/null +++ b/additional/CHANGELOG.git @@ -0,0 +1,12 @@ +commit 45d1ffc0a1fa838d06eda9ab2a9901a0fb5f1546 +Author: Stephane de Labrusse +Date: Fri Jun 20 01:38:55 2014 +0200 + + * Fri Jun 20 2014 stephane de Labrusse 1.5.0-1.sme + - Initial release to sme9 + +commit d05699eacd465f518ce93326d2340e375ea18f66 +Author: Stephane de Labrusse +Date: Fri Jun 20 01:35:24 2014 +0200 + + first commit to SME Server 9 diff --git a/additional/README.md b/additional/README.md new file mode 100644 index 0000000..e69de29 diff --git a/additional/smelist.c b/additional/smelist.c new file mode 100644 index 0000000..317c2bb --- /dev/null +++ b/additional/smelist.c @@ -0,0 +1,11 @@ +#include +#include +#include +#include +#define REAL_PATH "/usr/lib/mailman/bin/smelist.pl" + +main(int argc, char **argv) +{ + execv( REAL_PATH, argv); +} + diff --git a/additional/smeserver-mailman.spec b/additional/smeserver-mailman.spec new file mode 100644 index 0000000..123b840 --- /dev/null +++ b/additional/smeserver-mailman.spec @@ -0,0 +1,354 @@ +# $Id: smeserver-mailman.spec,v 1.10 2013/09/20 15:59:31 unnilennium Exp $ +# Authority: gordonr +# Name: Gordon Rowell + +# avoid brp bytecompile +%define __os_install_post %{nil} + +Summary: Mailman configuration for SME server. +%define name smeserver-mailman +Name: %{name} +%define version 1.5.0 +%define release 1 +Version: %{version} +Release: %{release}%{?dist} +License: GPL +Group: Applications/Internet +Source: %{name}-%{version}.tar.gz +BuildRoot: /var/tmp/%{name}-%{version}-%{release}-buildroot +BuildArchitectures: noarch +Requires: e-smith-base +Requires: e-smith-release >= 9.0 +Requires: mailman >= 2.1.9-20.el5.sme +Requires: e-smith-formmagick >= 1.4.0-12 +BuildRequires: e-smith-devtools >= 1.13.1-03 +Obsoletes: e-smith-mailman +Provides: e-smith-mailman +AutoReqProv: no + +%description +Add Mailman integration to the SME server. + +%changelog +* Fri Jun 20 2014 stephane de Labrusse 1.5.0-1.sme +- Initial release to sme9 + +* Fri Sep 20 2013 JP Pialasse 1.3.0-45.sme +- fix bug [SME: 7787] + +* Thu Sep 19 2013 JP Pialasse 1.3.0-44.sme +- fix case sensitive TRUE to true in smeserver-mailman-1.3.0-restarthang.patch +- wrong path to actions folder fixed +- see [SME: 7845] + +* Sun Jul 14 2013 JP Pialasse 1.3.0-42.sme +- apply locale 2013-07-14 patch + +* Sun Jul 14 2013 JP Pialasse 1.3.0-41.sme +- fix signal-event hang on mailman restart [SME ] +* Mon Jul 01 2013 JP Pialasse 1.3.0-40.sme +- fix expanding pyc pyo [SME: 7730] + +* Mon Jul 01 2013 JP Pialasse 1.3.0-38.sme +- import to sme8 buildsys +- fix bootstrap hang [SME: 6693] + +* Tue Mar 20 2012 SME Translation Server 1.3.0-37.el6 +- apply locale 2012-03-20 patch + +* Wed Apr 27 2011 SME Translation Server 1.3.0-36.sme +- apply locale 2011-04-27 patch + +* Sun Mar 06 2011 SME Translation Server 1.3.0-35.sme +- apply locale 2011-03-06 patch + +* Tue Mar 02 2010 SME Translation Server 1.3.0-34.sme +- apply locale 2010-03-02 patch + +* Tue Oct 27 2009 SME Translation Server 1.3.0-33.sme +- apply locale 2009-10-27 patch + +* Mon Aug 24 2009 SME Translation Server 1.3.0-32.sme +- apply locale 2009-08-24 patch + +* Wed May 20 2009 SME Translation Server 1.3.0-31.sme +- apply locale 2009-05-20 patch + +* Mon Apr 27 2009 SME Translation Server 1.3.0-30.sme +- apply locale 2009-04-27 patch + +* Tue Mar 03 2009 SME Translation Server +- apply locale 2009-03-03 patch + +* Sun Mar 1 2009 Jonathan Martens 1.3.0-28 +- Apply 1 Mar 2009 locale patch [SME: 5018] + +* Sat Jan 31 2009 Jonathan Martens 1.3.0-27 +- Apply 31 Jan 2009 locale patch [SME: 4951] + +* Wed Nov 5 2008 Jonathan Martens 1.3.0-26 +- Apply 5 Nov 2008 locale patch + +* Tue Oct 14 2008 Jonathan Martens 1.3.0-25 +- Apply 14 Oct 2008 locale patch + +* Tue Jul 1 2008 Jonathan Martens 1.3.6-24 +- Apply 1 July 2008 locale patch + +* Fri Jun 27 2008 Jonathan Martens 1.3.6-23 +- Apply 27 Jun 2008 locale patch + +* Thu May 21 2008 Jonathan Martens 1.3.6-22 +- Apply 21 May 2008 locale patch +- Fixed version number in previous changelog entry + +* Mon May 5 2008 Jonathan Martens 1.3.6-21 +- Apply 5 May 2008 locale patch + +* Sat Apr 26 2008 Jonathan Martens 1.3.0-20 +- Add common tags to e-smith-formmagick's general + +* Sat Apr 26 2008 Jonathan Martens 1.3.0-19 +- Added 26 April 2008 locale patch + +* Wed Apr 23 2008 Jonathan Martens 1.3.0-18 +- Added 23 April 2008 locale patch +- Fixed changelog + +* Wed Apr 23 2008 Daniel B. 1.3.0-17 +- Fix path for the archives [SME: 4252] + +* Tue Apr 22 2008 Jonathan Martens 1.3.0-16 +- Added 22 April 2008 locale patch + +* Sun Apr 29 2007 Shad L. Lords +- Clean up spec so package can be built by koji/plague + +* Thu Dec 07 2006 Shad L. Lords +- Update to new release naming. No functional changes. +- Make Packager generic + +* Fri Sep 22 2006 Gordon Rowell 1.3.0-15 +- Allow hyphen in list names in smelist command [SME: 1307] + +* Fri Sep 22 2006 Gordon Rowell 1.3.0-14 +- Add /sbin/e-smith/alias2mailman to convert hand-built alias files + to mailman lists. Converst ~alias/.qmail- to the mailman + list +- List owner is mailman{DefaultOwner} defaulting to admin + +* Fri Sep 22 2006 Gordon Rowell 1.3.0-13 +- Fix various permissions to satisfy /usr/lib/mailman/check_perms +- Update mailman dependency to latest from CentOS + +* Wed Mar 8 2006 Gordon Rowell 1.3.0-12 +- Run the addlist/rmlist actions before generic_template_expand [SME: 665] + +* Wed Mar 8 2006 Gordon Rowell 1.3.0-11 +- Ensure that mailman record exists prior to trying to set the status + +* Wed Mar 8 2006 Gordon Rowell 1.3.0-10 +- Adjust path in post-install script to match CentOS structure + +* Wed Mar 8 2006 Gordon Rowell 1.3.0-09 +- Make further use of services2adjust and templates2expand + +* Wed Mar 8 2006 Gordon Rowell 1.3.0-08 +- Make use of services2adjust and templates2expand +- Update dependency as this is for 7.0 + +* Wed Mar 8 2006 Gordon Rowell 1.3.0-07 +- Create qfiles heirarchy +- Fix up taint issue in smelist script + +* Thu Jan 5 2006 Gordon Rowell 1.3.0-06 +- TODO: Check permissions on /var/spool/mailman/qfiles. The + 'in' directory needs to be writable by the mailman CGI script, + which is running as www. + +* Thu Jan 5 2006 Gordon Rowell 1.3.0-05 +- Remove postun section which depended on action scripts which + no longer exist + +* Fri Dec 23 2005 Gordon Rowell 1.3.0-04 +- Allow mail for mailman user +- TODO: We should have configurable allow/deny for system accounts + +* Tue Oct 25 2005 Gordon Rowell 1.3.0-03 +- No change +- TODO: Rewrite templates to new API and move to templates2expand +- TODO: Add pre script to relocate /opt/mailman parts for upgrades + +* Tue Oct 25 2005 Gordon Rowell 1.3.0-02 +- Require patched mailman - SME Server runs httpd as www, not apache +- Relocate paths from /opt/mailman to /usr/lib/mailman to match mailman pkg +- Changed references to accounts db to new location + +* Tue Oct 25 2005 Gordon Rowell 1.3.0-01 +- Package renamed to smeserver-mailman, including patches to 1.1.10-05 +- TODO: Relocate to /usr/lib/mailman +- TODO: Change DB references, and rewrite to new API + +* Fri Oct 14 2005 Michael Soulier +- [1.1.10-05] +- Fixed error with creation of alias file with dot in the name. + +* Wed Mar 16 2005 Michael Soulier +- [1.1.10-04] +- Added FQDN of box as a potential virtual host. + +* Mon Mar 14 2005 Michael Soulier +- [1.1.10-03] +- Removed circular event call. + +* Wed Feb 23 2005 Michael Soulier +- [1.1.10-02] +- Forgot to set mode on smelist. + +* Wed Feb 16 2005 Michael Soulier +- [1.1.10-01] +- Added hooks into domain creation and deletion. + +* Wed Feb 16 2005 Michael Soulier +- [1.1.9-01] +- Rolling again to get past build error on sme61build. + +* Wed Feb 16 2005 Michael Soulier +- [1.1.8-01] +- Added create-system-user call to make the mailman user. +- Added a link to the mailman UI. + +* Tue Feb 15 2005 Michael Soulier +- [1.1.7-01] +- Updated mailman-conf to call a post-install script when first run. If this + is ever included in a blade, post-install should move to the blade handler. + +* Tue Feb 15 2005 Michael Soulier +- [1.1.6-01] +- Fixed badly placed lib. +- Added post-install script to move it out of scriptlets. + +* Tue Feb 15 2005 Michael Soulier +- [1.1.5-01] +- Added conf and restart actions. +- Added a simple panel. + +* Tue Feb 15 2005 Michael Soulier +- [1.1.4-01] +- Fixed perms on /opt/mailman, and bad symlink. + +* Sun Feb 13 2005 Michael Soulier +- [1.1.3-01] +- Fixed error in createlinks. + +* Sun Feb 13 2005 Michael Soulier +- [1.1.2-01] +- Rolling initial build of imported package. [msoulier] + +* Sun Feb 13 2005 Michael Soulier +- [1.1.1-01] +- Reimplementation after lost packages. Implementing for mailman 2.1.5. + [msoulier] + +* Sun Sep 08 2002 Shad L. Lords +- 1.0-5 +- updated addlist and rmlist to better handle conflicts + +* Sun Sep 01 2002 Shad L. Lords +- 1.0-4 +- updated accounts so that ezmlm can coexist with mailman + +* Tue Aug 27 2002 Shad L. Lords +- 1.0-3 +- make site have a random password on install +- make mailman list have random password on install + +* Sat Aug 24 2002 Shad L. Lords +- 1.0-2 +- changed mailman-addlist to set perms and ownership correctly. +- changed permissions from root,mailman to mailman,mailman + +* Fri Aug 23 2002 Shad L. Lords +- 1.0-1 +- Initial release + +%prep +%setup + +/bin/rm -r root/opt/mailman + +%build +perl createlinks +mkdir -p root/usr/lib/mailman/aliases + +mkdir -p root/opt +ln -s /usr/lib/mailman root/opt/mailman +mkdir -p root/var/spool/mailman/qfiles +for dir in archive bounces commands in news out retry shunt virgin +do + mkdir -p root/var/spool/mailman/qfiles/$dir +done + + +%install +rm -rf $RPM_BUILD_ROOT +(cd root ; find . -depth -print | cpio -dump $RPM_BUILD_ROOT) +rm -f e-smith-%{version}-filelist +/sbin/e-smith/genfilelist \ + --dir '/usr/lib/mailman' 'attr(02775,root,mailman)' \ + --dir '/usr/lib/mailman/bin' 'attr(02775,root,mailman)' \ + --dir '/var/spool/mailman' 'attr(02775,root,mailman)' \ + --dir '/usr/lib/mailman/aliases' 'attr(02775,mailman,mailman)' \ + --file '/usr/lib/mailman/bin/post-install' 'attr(0755,root,mailman)' \ + --file '/usr/lib/mailman/bin/smelist' 'attr(04755,root,mailman)' \ + --dir '/usr/lib/mailman/Mailman' 'attr(02775,root,mailman)' \ + --dir '/usr/lib/mailman/Mailman/MTA' 'attr(02775,root,mailman)' \ + --file '/usr/lib/mailman/Mailman/MTA/SME.py' 'attr(02775,root,mailman)' \ + --dir '/var/spool/mailman/qfiles' 'attr(02770,mailman,mailman)' \ + --dir '/var/spool/mailman/qfiles/archive' 'attr(02770,mailman,mailman)' \ + --dir '/var/spool/mailman/qfiles/bounces' 'attr(02770,mailman,mailman)' \ + --dir '/var/spool/mailman/qfiles/commands' 'attr(02770,mailman,mailman)' \ + --dir '/var/spool/mailman/qfiles/in' 'attr(02770,mailman,mailman)' \ + --dir '/var/spool/mailman/qfiles/news' 'attr(02770,mailman,mailman)' \ + --dir '/var/spool/mailman/qfiles/out' 'attr(02770,mailman,mailman)' \ + --dir '/var/spool/mailman/qfiles/retry' 'attr(02770,mailman,mailman)' \ + --dir '/var/spool/mailman/qfiles/shunt' 'attr(02770,mailman,mailman)' \ + --dir '/var/spool/mailman/qfiles/virgin' 'attr(02770,mailman,mailman)' \ + $RPM_BUILD_ROOT > %{name}-%{version}-filelist + +# SME8 build to avoid error +#/usr/lib/rpm/brp-python-bytecompile +#rm -rf $RPM_BUILD_ROOT/etc/e-smith/events/domain-create/templates2expand/usr/lib/mailman/Mailman/mm_cfg.pyc +#rm -rf $RPM_BUILD_ROOT/etc/e-smith/events/domain-create/templates2expand/usr/lib/mailman/Mailman/mm_cfg.pyo +#rm -rf $RPM_BUILD_ROOT/etc/e-smith/events/domain-delete/templates2expand/usr/lib/mailman/Mailman/mm_cfg.pyc +#rm -rf $RPM_BUILD_ROOT/etc/e-smith/events/domain-delete/templates2expand/usr/lib/mailman/Mailman/mm_cfg.pyo +#rm -rf $RPM_BUILD_ROOT/etc/e-smith/events/bootstrap-console-save/templates2expand/usr/lib/mailman/Mailman/mm_cfg.pyc +#rm -rf $RPM_BUILD_ROOT/etc/e-smith/events/bootstrap-console-save/templates2expand/usr/lib/mailman/Mailman/mm_cfg.pyo +#rm -rf $RPM_BUILD_ROOT/etc/e-smith/events/mailman-update/templates2expand/usr/lib/mailman/Mailman/mm_cfg.pyc +#rm -rf $RPM_BUILD_ROOT/etc/e-smith/events/mailman-update/templates2expand/usr/lib/mailman/Mailman/mm_cfg.pyo +#rm -rf $RPM_BUILD_ROOT/usr/lib/mailman/Mailman/mm_cfg.pyc +#rm -rf $RPM_BUILD_ROOT/usr/lib/mailman/Mailman/mm_cfg.pyo +#rm -rf $RPM_BUILD_ROOT/usr/lib/mailman/Mailman/MTA/SME.pyc +#rm -rf $RPM_BUILD_ROOT/usr/lib/mailman/Mailman/MTA/SME.pyo + +# fixe for unwanted listed compiled python files +cat %{name}-%{version}-filelist |sed '/py[oc]$/d'>%{name}-%{version}-filelist.tmp +cat %{name}-%{version}-filelist.tmp> %{name}-%{version}-filelist +#rm -rf %{name}-%{version}-filelist.tmp + +%clean +rm -rf $RPM_BUILD_ROOT + +%files -f %{name}-%{version}-filelist + +%defattr(-,root,root) + +%pre +/sbin/e-smith/create-system-user mailman 41 \ + "Mailman user" /usr/lib/mailman /bin/false + +%post + +%preun + +%postun diff --git a/contriborbase b/contriborbase new file mode 100644 index 0000000..9b7fd51 --- /dev/null +++ b/contriborbase @@ -0,0 +1 @@ +contribs10 diff --git a/createlinks b/createlinks new file mode 100755 index 0000000..31a7952 --- /dev/null +++ b/createlinks @@ -0,0 +1,111 @@ +#!/usr/bin/perl -w + +use esmith::Build::CreateLinks qw(:all); + +# For the panel link +panel_link('mailman', 'manager'); + +for my $event ( qw( + mailman-addlist + mailman-rmlist + )) +{ + event_link($event, $event, "02"); + + templates2events("/var/service/qpsmtpd/config/goodrcptto", $event); + + templates2events("/var/qmail/users/assign", $event); + + safe_symlink("/var/qmail/bin/qmail-newu", + "root/etc/e-smith/events/$event/S55email-assign"); + + safe_symlink("sighup", + "root/etc/e-smith/events/$event/services2adjust/qpsmtpd"); + + safe_symlink("sighup", + "root/etc/e-smith/events/$event/services2adjust/sqpsmtpd"); +} + + +for my $event ( qw( + bootstrap-console-save + )) +{ + + templates2events( "/usr/lib/mailman/Mailman/mm_cfg.py", $event); + + templates2events( "/etc/httpd/conf/httpd.conf", $event); + +} + +for my $event ( qw( + mailman-update + domain-create + domain-delete + )) +{ + + templates2events( "/usr/lib/mailman/Mailman/mm_cfg.py", $event); + + templates2events( "/etc/httpd/conf/httpd.conf", $event); + + + safe_symlink("/usr/lib/mailman/bin/post-install", + "root/etc/e-smith/events/$event/S20mailman-post-install"); +# removed because cause signal-event and panel to hang +# safe_symlink("restart", +# "root/etc/e-smith/events/$event/services2adjust/mailman"); +safe_symlink("restart", + "root/etc/e-smith/events/$event/services2adjust/mailman"); + +#safe_symlink("../actions/mailman-restart", +# "root/etc/e-smith/events/$event/S94mailman-restart"); +} + + + +for my $event ( qw( + mailman-update + )) +{ + + + + safe_symlink("sigusr1", + "root/etc/e-smith/events/$event/services2adjust/httpd-e-smith"); + + +} + + +my $event= "smeserver-mailman-update"; + +templates2events( "/etc/dar/DailyBackup.dcf", $event); +templates2events( "/usr/lib/mailman/Mailman/mm_cfg.py", $event); +templates2events( "/etc/httpd/conf/httpd.conf", $event); +templates2events("/var/qmail/users/assign", $event); +templates2events("/var/service/qpsmtpd/config/goodrcptto", $event); + +safe_symlink("/usr/lib/mailman/bin/post-install", + "root/etc/e-smith/events/$event/S20mailman-post-install"); +safe_symlink("/var/qmail/bin/qmail-newu", + "root/etc/e-smith/events/$event/S55email-assign"); +#systemd-specific action mandatory for this package-update event +event_link("systemd-reload", $event, "89"); +event_link("systemd-default", $event, "88"); + +safe_symlink("sigusr1", + "root/etc/e-smith/events/$event/services2adjust/httpd-e-smith"); +safe_symlink("restart", + "root/etc/e-smith/events/$event/services2adjust/mailman"); +safe_symlink("sighup", + "root/etc/e-smith/events/$event/services2adjust/qpsmtpd"); +safe_symlink("sighup", + "root/etc/e-smith/events/$event/services2adjust/sqpsmtpd"); + + +use esmith::Build::Backup qw(:all); +backup_includes("smeserver-mailman", qw( +/var/lib/mailman/ +/usr/lib/mailman/aliases/ +)); diff --git a/root/etc/e-smith/db/configuration/defaults/mailman/SitePass b/root/etc/e-smith/db/configuration/defaults/mailman/SitePass new file mode 100644 index 0000000..e69de29 diff --git a/root/etc/e-smith/db/configuration/defaults/mailman/access b/root/etc/e-smith/db/configuration/defaults/mailman/access new file mode 100644 index 0000000..a48cf0d --- /dev/null +++ b/root/etc/e-smith/db/configuration/defaults/mailman/access @@ -0,0 +1 @@ +public diff --git a/root/etc/e-smith/db/configuration/defaults/mailman/adminaccess b/root/etc/e-smith/db/configuration/defaults/mailman/adminaccess new file mode 100644 index 0000000..3e18ebf --- /dev/null +++ b/root/etc/e-smith/db/configuration/defaults/mailman/adminaccess @@ -0,0 +1 @@ +private diff --git a/root/etc/e-smith/db/configuration/defaults/mailman/archivesaccess b/root/etc/e-smith/db/configuration/defaults/mailman/archivesaccess new file mode 100644 index 0000000..3e18ebf --- /dev/null +++ b/root/etc/e-smith/db/configuration/defaults/mailman/archivesaccess @@ -0,0 +1 @@ +private diff --git a/root/etc/e-smith/db/configuration/defaults/mailman/status b/root/etc/e-smith/db/configuration/defaults/mailman/status new file mode 100644 index 0000000..86981e6 --- /dev/null +++ b/root/etc/e-smith/db/configuration/defaults/mailman/status @@ -0,0 +1 @@ +enabled diff --git a/root/etc/e-smith/db/configuration/defaults/mailman/type b/root/etc/e-smith/db/configuration/defaults/mailman/type new file mode 100644 index 0000000..24e1098 --- /dev/null +++ b/root/etc/e-smith/db/configuration/defaults/mailman/type @@ -0,0 +1 @@ +service diff --git a/root/etc/e-smith/events/actions/mailman-addlist b/root/etc/e-smith/events/actions/mailman-addlist new file mode 100755 index 0000000..f8847c8 --- /dev/null +++ b/root/etc/e-smith/events/actions/mailman-addlist @@ -0,0 +1,71 @@ +#!/usr/bin/perl -w + +#---------------------------------------------------------------------- +# copyright (C) 2000-2001 e-smith, inc. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# Technical support for this program is available from e-smith, inc. +# For details, please visit our web site at www.e-smith.com or +# call us on 1 888 ESMITH 1 (US/Canada toll free) or +1 613 564 8000 +#---------------------------------------------------------------------- + +package esmith; + +use strict; +use Errno; +use esmith::config; +use esmith::util; +use esmith::db; + +my %conf; +tie %conf, 'esmith::config'; + +my %accounts; +tie %accounts, 'esmith::config', '/home/e-smith/db/accounts'; + +my $listName = $ARGV [1]; +my $domain = $ARGV [2]; + +die "Listname argument missing." unless defined ($listName); +$domain = db_get(\%conf, "DomainName") unless defined ($domain); + +my $listStatus = db_get_type(\%accounts, $listName); +die "$listName already exists and is not a mailman mailing list.\n" if ($listStatus && $listStatus ne "mailmanlist"); +db_set(\%accounts, $listName, "mailmanlist", { Domain => "$domain" }); + +my $cookedListName = $listName; +$cookedListName =~ s/\./:/g; +my $alias = "/usr/lib/mailman/aliases/.qmail-$listName"; + +my %queues = ("", "post", + "-admin", "admin", + "-bounces", "bounces", + "-confirm", "confirm", + "-join", "join", + "-leave", "leave", + "-owner", "owner", + "-request", "request", + "-subscribe", "subscribe", + "-unsubscribe", "unsubscribe"); + +umask(002); +while(my ($tail,$que) = each(%queues)) +{ + open(ALIAS, "> $alias$tail") or die "Cannot open $alias. $!\n"; + print ALIAS "| /var/qmail/bin/preline /usr/lib/mailman/mail/mailman $que $listName\n"; + close ALIAS or die "Cannot close $alias. $!\n"; + chown(41,41,"$alias$tail"); +} diff --git a/root/etc/e-smith/events/actions/mailman-restart b/root/etc/e-smith/events/actions/mailman-restart new file mode 100644 index 0000000..b36abfa --- /dev/null +++ b/root/etc/e-smith/events/actions/mailman-restart @@ -0,0 +1,57 @@ +#!/usr/bin/perl + +#---------------------------------------------------------------------- +# $Id: tug-restart,v 1.23 2003/06/25 14:04:54 msoulier Exp $ +#---------------------------------------------------------------------- +# copyright (C) 1999-2003 Mitel Networks Corporation +#---------------------------------------------------------------------- + +package esmith; + +use strict; +use warnings; +use esmith::ConfigDB; +use esmith::util; + +use constant TRUE => 1; +use constant FALSE => 0; + +my $init = '/etc/init.d/mailman'; +my $action; + +my $db = esmith::ConfigDB->open_ro + or die "Failed to open configuration database.\n"; + +my $status = $db->get_prop('mailman', 'status') || 'disabled'; + +if ($status eq 'enabled') +{ + $action = 'start'; + $action = 'restart' if is_running(); +} +else +{ + $action = ''; + $action = 'stop' if is_running(); +} + +if ($action) +{ + esmith::util::serviceControl( + NAME => 'mailman', + ACTION => $action, + BACKGROUND => 'true' + ) or die "Failed to $action mailman\n"; +} + +exit 0; + +sub is_running +{ + chomp( my $output = `$init status` ); + if ($output =~ /is running/) + { + return TRUE; + } + return FALSE; +} diff --git a/root/etc/e-smith/events/actions/mailman-rmlist b/root/etc/e-smith/events/actions/mailman-rmlist new file mode 100755 index 0000000..53869a4 --- /dev/null +++ b/root/etc/e-smith/events/actions/mailman-rmlist @@ -0,0 +1,62 @@ +#!/usr/bin/perl -w + +#---------------------------------------------------------------------- +# copyright (C) 2000-2001 e-smith, inc. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# Technical support for this program is available from e-smith, inc. +# For details, please visit our web site at www.e-smith.com or +# call us on 1 888 ESMITH 1 (US/Canada toll free) or +1 613 564 8000 +#---------------------------------------------------------------------- + +package esmith; + +use strict; +use Errno; +use esmith::config; +use esmith::util; +use esmith::db; + +my %conf; +tie %conf, 'esmith::config'; + +my %accounts; +tie %accounts, 'esmith::config', '/home/e-smith/db/accounts'; + +my $listName = $ARGV [1]; + +die "Listname argument missing." unless defined ($listName); + +my $listStatus = db_get_type(\%accounts, $listName); +db_delete(\%accounts, $listName) if ($listStatus && $listStatus eq "mailmanlist"); + +my $alias = "/usr/lib/mailman/aliases/.qmail-$listName"; + +my %queues = ("", "post", + "-admin", "admin", + "-bounces", "bounces", + "-confirm", "confirm", + "-join", "join", + "-leave", "leave", + "-owner", "owner", + "-request", "request", + "-subscribe", "subscribe", + "-unsubscribe", "unsubscribe"); + +while(my ($tail,$que) = each(%queues)) +{ + unlink("$alias$tail"); +} diff --git a/root/etc/e-smith/locale/bg/etc/e-smith/web/functions/mailman b/root/etc/e-smith/locale/bg/etc/e-smith/web/functions/mailman new file mode 100644 index 0000000..82666b2 --- /dev/null +++ b/root/etc/e-smith/locale/bg/etc/e-smith/web/functions/mailman @@ -0,0 +1,44 @@ + + + FORM_TITLE + Конфигурация на диспечера на пощенски списъци Mailman + + + FIRST_DESC + Настройките по-долу ще конфигурират диспечера на пощенски списъци Mailman.

Уеб интерфейса на mailman е тук.

]]>
+
+ + Mailman + Mailman + + + ERR_UPDATE + ГРЕШКА: Възникна грешка при актуализация на конфигурацията на Mailman. + + + SUCCESS + Конфигурацията на Mailman бе успешно актуализирана. + + + STATUS_DESC + Следващите контроли управляват текущото състояние на диспечера на пощенски списъци Mailman на този сървър. Изберете желаната стойност и запишете настройките. + + + STATUS_LABEL + Състояние на Mailman + + + ACCESS_DESC + If selected as private only LAN will access to this element, public will give access to all Internet + + + ARCHIVES_ACCESS + Archives access + + + ADMIN_ACCESS + Административни услуги + + + +
diff --git a/root/etc/e-smith/locale/da/etc/e-smith/web/functions/mailman b/root/etc/e-smith/locale/da/etc/e-smith/web/functions/mailman new file mode 100644 index 0000000..a3412a5 --- /dev/null +++ b/root/etc/e-smith/locale/da/etc/e-smith/web/functions/mailman @@ -0,0 +1,44 @@ + + + FORM_TITLE + Konfigurer Mailman mailing liste + + + FIRST_DESC + Nedenstående optioner vil konfigurere din Mailman mailing liste.

Mailmans webinterface er her.

]]>
+
+ + Mailman + Mailman + + + ERR_UPDATE + Fejl: Der opstod en fejl i forbindelse med opdatering af Mailman konfigurationen + + + SUCCESS + Mailman konfigurationen er opdateret. + + + STATUS_DESC + Følgende værdier håndterer den nuværende status på Mailman mailing liste på denne server. Vælg de ønskede værdier og tryk gem + + + STATUS_LABEL + Status på Mailman + + + ACCESS_DESC + Hvis der vælges privat, vil kun LAN have adgang til dette element, offentlig vil give adgang for hele internettet + + + ARCHIVES_ACCESS + Archives access + + + ADMIN_ACCESS + Administrative tjenester + + + +
diff --git a/root/etc/e-smith/locale/de/etc/e-smith/web/functions/mailman b/root/etc/e-smith/locale/de/etc/e-smith/web/functions/mailman new file mode 100644 index 0000000..3be8492 --- /dev/null +++ b/root/etc/e-smith/locale/de/etc/e-smith/web/functions/mailman @@ -0,0 +1,44 @@ + + + FORM_TITLE + Mailman-Mailinglistenverwaltung einrichten + + + FIRST_DESC + Die unten stehenden Optionen dienen zur Konfiguration Ihrer Mailman-Mailinglistenverwaltung.

Das Mailman-Webinterface befindet sich hier.

]]>
+
+ + Mailman + Mailman + + + ERR_UPDATE + FEHLER: Beim Aktualisieren der Konfiguration von Mailman ist ein Fehler aufgetreten. + + + SUCCESS + Die Mailman-Konfiguration wurde erfolgreich aktualisiert. + + + STATUS_DESC + Das folgende Kontrollfeld steuert den aktuellen Status der Mailman-Mailinglistenverwaltung auf diesem Server. Wählen Sie den gewünschten Wert und speichern Sie das Panel. + + + STATUS_LABEL + Mailman-Status + + + ACCESS_DESC + If selected as private only LAN will access to this element, public will give access to all Internet + + + ARCHIVES_ACCESS + Archives access + + + ADMIN_ACCESS + Administrative Dienste + + + +
diff --git a/root/etc/e-smith/locale/el/etc/e-smith/web/functions/mailman b/root/etc/e-smith/locale/el/etc/e-smith/web/functions/mailman new file mode 100644 index 0000000..4403538 --- /dev/null +++ b/root/etc/e-smith/locale/el/etc/e-smith/web/functions/mailman @@ -0,0 +1,44 @@ + + + FORM_TITLE + Configure Mailman mailing list manager + + + FIRST_DESC + The options below will configure your Mailman mailing list manager.

The mailman web interface is here.

]]>
+
+ + Mailman + Mailman + + + ERR_UPDATE + ERROR: An error occurred while updating the Mailman configuration. + + + SUCCESS + The Mailman configuration was successfully updated. + + + STATUS_DESC + The following control manages the current status of the Mailman mailing list manager on this server. Select the desired value and save the panel. + + + STATUS_LABEL + Mailman status + + + ACCESS_DESC + If selected as private only LAN will access to this element, public will give access to all Internet + + + ARCHIVES_ACCESS + Πρόσβαση διακομιστή IMAP + + + ADMIN_ACCESS + Διαχείριση + + + +
diff --git a/root/etc/e-smith/locale/en-us/etc/e-smith/web/functions/mailman b/root/etc/e-smith/locale/en-us/etc/e-smith/web/functions/mailman new file mode 100644 index 0000000..ac268b9 --- /dev/null +++ b/root/etc/e-smith/locale/en-us/etc/e-smith/web/functions/mailman @@ -0,0 +1,57 @@ + + + FORM_TITLE + Configure Mailman mailing list manager + + + FIRST_DESC + + The options below will configure your Mailman mailing list + manager.

+

The mailman web interface is here.

+ ]]> +
+
+ + Mailman + Mailman + + + ERR_UPDATE + + ERROR: An error occurred while updating the Mailman configuration. + + + + SUCCESS + The Mailman configuration was successfully updated. + + + STATUS_DESC + + The following control manages the current status of the Mailman + mailing list manager on this server. Select the desired value and + save the panel. + + + + STATUS_LABEL + Mailman status + + + ACCESS_DESC + If selected as private only LAN will access to this element, public will give access to all Internet + + + ARCHIVES_ACCESS + Archives access + + + ADMIN_ACCESS + Administrative access + + + +
diff --git a/root/etc/e-smith/locale/es/etc/e-smith/web/functions/mailman b/root/etc/e-smith/locale/es/etc/e-smith/web/functions/mailman new file mode 100644 index 0000000..0664c85 --- /dev/null +++ b/root/etc/e-smith/locale/es/etc/e-smith/web/functions/mailman @@ -0,0 +1,44 @@ + + + FORM_TITLE + Configure Mailman mailing list manager + + + FIRST_DESC + The options below will configure your Mailman mailing list manager.

The mailman web interface is here.

]]>
+
+ + Mailman + Mailman + + + ERR_UPDATE + ERROR: An error occurred while updating the Mailman configuration. + + + SUCCESS + The Mailman configuration was successfully updated. + + + STATUS_DESC + The following control manages the current status of the Mailman mailing list manager on this server. Select the desired value and save the panel. + + + STATUS_LABEL + Mailman status + + + ACCESS_DESC + If selected as private only LAN will access to this element, public will give access to all Internet + + + ARCHIVES_ACCESS + Acceso a servidor IMAP + + + ADMIN_ACCESS + Administrar + + + +
diff --git a/root/etc/e-smith/locale/et/etc/e-smith/web/functions/mailman b/root/etc/e-smith/locale/et/etc/e-smith/web/functions/mailman new file mode 100644 index 0000000..3f62421 --- /dev/null +++ b/root/etc/e-smith/locale/et/etc/e-smith/web/functions/mailman @@ -0,0 +1,44 @@ + + + FORM_TITLE + Configure Mailman mailing list manager + + + FIRST_DESC + The options below will configure your Mailman mailing list manager.

The mailman web interface is here.

]]>
+
+ + Mailman + Mailman + + + ERR_UPDATE + ERROR: An error occurred while updating the Mailman configuration. + + + SUCCESS + The Mailman configuration was successfully updated. + + + STATUS_DESC + The following control manages the current status of the Mailman mailing list manager on this server. Select the desired value and save the panel. + + + STATUS_LABEL + Mailman status + + + ACCESS_DESC + If selected as private only LAN will access to this element, public will give access to all Internet + + + ARCHIVES_ACCESS + IMAP serveri juurdepääs + + + ADMIN_ACCESS + Administreeri + + + +
diff --git a/root/etc/e-smith/locale/fr/etc/e-smith/web/functions/mailman b/root/etc/e-smith/locale/fr/etc/e-smith/web/functions/mailman new file mode 100644 index 0000000..00ae649 --- /dev/null +++ b/root/etc/e-smith/locale/fr/etc/e-smith/web/functions/mailman @@ -0,0 +1,44 @@ + + + FORM_TITLE + Configurer le gestionnaire de liste de diffusion Mailman + + + FIRST_DESC + Les options ci-dessous vont configurer votre gestionnaire de liste de diffusion Mailman.

L'interface web Mailman est ici.

]]>
+
+ + Mailman + Mailman + + + ERR_UPDATE + ERREUR: Une erreur s'est produite en mettant à jour la configuration de Mailman. + + + SUCCESS + La configuration de Mailman a été correctement mise à jour. + + + STATUS_DESC + Les commandes suivantes contrôlent le statut du gestionnaire de liste de diffusion Mailman sur ce serveur. Sélectionnez les valeurs désirées et sauvegardez le panneau. + + + STATUS_LABEL + Statut de Mailman + + + ACCESS_DESC + Si sélectionné sur « privé », seul le LAN accédera à cet élément ; le réglage sur « public » ouvrira l'accès à tout l'internet + + + ARCHIVES_ACCESS + Accès aux archives + + + ADMIN_ACCESS + Accès d'administration + + + +
diff --git a/root/etc/e-smith/locale/he/etc/e-smith/web/functions/mailman b/root/etc/e-smith/locale/he/etc/e-smith/web/functions/mailman new file mode 100644 index 0000000..d548e88 --- /dev/null +++ b/root/etc/e-smith/locale/he/etc/e-smith/web/functions/mailman @@ -0,0 +1,44 @@ + + + FORM_TITLE + Configure Mailman mailing list manager + + + FIRST_DESC + The options below will configure your Mailman mailing list manager.

The mailman web interface is here.

]]>
+
+ + Mailman + Mailman + + + ERR_UPDATE + ERROR: An error occurred while updating the Mailman configuration. + + + SUCCESS + The Mailman configuration was successfully updated. + + + STATUS_DESC + The following control manages the current status of the Mailman mailing list manager on this server. Select the desired value and save the panel. + + + STATUS_LABEL + Mailman status + + + ACCESS_DESC + If selected as private only LAN will access to this element, public will give access to all Internet + + + ARCHIVES_ACCESS + העבר לארכיון + + + ADMIN_ACCESS + ניהול + + + +
diff --git a/root/etc/e-smith/locale/hu/etc/e-smith/web/functions/mailman b/root/etc/e-smith/locale/hu/etc/e-smith/web/functions/mailman new file mode 100644 index 0000000..4ec714e --- /dev/null +++ b/root/etc/e-smith/locale/hu/etc/e-smith/web/functions/mailman @@ -0,0 +1,44 @@ + + + FORM_TITLE + Configure Mailman mailing list manager + + + FIRST_DESC + The options below will configure your Mailman mailing list manager.

The mailman web interface is here.

]]>
+
+ + Mailman + Mailman + + + ERR_UPDATE + ERROR: An error occurred while updating the Mailman configuration. + + + SUCCESS + The Mailman configuration was successfully updated. + + + STATUS_DESC + The following control manages the current status of the Mailman mailing list manager on this server. Select the desired value and save the panel. + + + STATUS_LABEL + Mailman status + + + ACCESS_DESC + If selected as private only LAN will access to this element, public will give access to all Internet + + + ARCHIVES_ACCESS + IMAP szerver hozzáférés + + + ADMIN_ACCESS + Adminisztráció + + + +
diff --git a/root/etc/e-smith/locale/id/etc/e-smith/web/functions/mailman b/root/etc/e-smith/locale/id/etc/e-smith/web/functions/mailman new file mode 100644 index 0000000..83fdc0c --- /dev/null +++ b/root/etc/e-smith/locale/id/etc/e-smith/web/functions/mailman @@ -0,0 +1,44 @@ + + + FORM_TITLE + Configure Mailman mailing list manager + + + FIRST_DESC + The options below will configure your Mailman mailing list manager.

The mailman web interface is here.

]]>
+
+ + Mailman + Mailman + + + ERR_UPDATE + ERROR: An error occurred while updating the Mailman configuration. + + + SUCCESS + The Mailman configuration was successfully updated. + + + STATUS_DESC + The following control manages the current status of the Mailman mailing list manager on this server. Select the desired value and save the panel. + + + STATUS_LABEL + Mailman status + + + ACCESS_DESC + If selected as private only LAN will access to this element, public will give access to all Internet + + + ARCHIVES_ACCESS + IMAP server akses + + + ADMIN_ACCESS + Administrasi + + + +
diff --git a/root/etc/e-smith/locale/it/etc/e-smith/web/functions/mailman b/root/etc/e-smith/locale/it/etc/e-smith/web/functions/mailman new file mode 100644 index 0000000..6ddee65 --- /dev/null +++ b/root/etc/e-smith/locale/it/etc/e-smith/web/functions/mailman @@ -0,0 +1,44 @@ + + + FORM_TITLE + Configura il gestore di mailing list Mailman + + + FIRST_DESC + Le opzioni sotto riportate configureranno Mailman mailing list manager.

L'interfaccia WEB di Mailman è: here.

]]>
+
+ + Mailman + Mailman + + + ERR_UPDATE + ERRORE: si è verificato un errore aggiornando la configurazione di Mailman. + + + SUCCESS + La configurazione di Mailman è stata aggiornata con successo. + + + STATUS_DESC + Il controllo seguente gestisce le stato corrente di Mailman su questo server. Selezionare il valore desiderato e salvare il pannello. + + + STATUS_LABEL + Stato di Mailman + + + ACCESS_DESC + Se selezionato come privato solo la LAN potrà accedere aquesto elemento, pubblico darà l'accesso a tutta la rete Internet. + + + ARCHIVES_ACCESS + Accesso agli Archivi + + + ADMIN_ACCESS + Accesso amministrativo + + + +
diff --git a/root/etc/e-smith/locale/ja/etc/e-smith/web/functions/mailman b/root/etc/e-smith/locale/ja/etc/e-smith/web/functions/mailman new file mode 100644 index 0000000..21f2bbe --- /dev/null +++ b/root/etc/e-smith/locale/ja/etc/e-smith/web/functions/mailman @@ -0,0 +1,44 @@ + + + FORM_TITLE + Configure Mailman mailing list manager + + + FIRST_DESC + The options below will configure your Mailman mailing list manager.

The mailman web interface is here.

]]>
+
+ + Mailman + Mailman + + + ERR_UPDATE + ERROR: An error occurred while updating the Mailman configuration. + + + SUCCESS + The Mailman configuration was successfully updated. + + + STATUS_DESC + The following control manages the current status of the Mailman mailing list manager on this server. Select the desired value and save the panel. + + + STATUS_LABEL + Mailman status + + + ACCESS_DESC + If selected as private only LAN will access to this element, public will give access to all Internet + + + ARCHIVES_ACCESS + アーカイブ + + + ADMIN_ACCESS + 管理 + + + +
diff --git a/root/etc/e-smith/locale/nb/etc/e-smith/web/functions/mailman b/root/etc/e-smith/locale/nb/etc/e-smith/web/functions/mailman new file mode 100644 index 0000000..6fe9834 --- /dev/null +++ b/root/etc/e-smith/locale/nb/etc/e-smith/web/functions/mailman @@ -0,0 +1,44 @@ + + + FORM_TITLE + Configure Mailman mailing list manager + + + FIRST_DESC + The options below will configure your Mailman mailing list manager.

The mailman web interface is here.

]]>
+
+ + Mailman + Mailman + + + ERR_UPDATE + ERROR: An error occurred while updating the Mailman configuration. + + + SUCCESS + The Mailman configuration was successfully updated. + + + STATUS_DESC + The following control manages the current status of the Mailman mailing list manager on this server. Select the desired value and save the panel. + + + STATUS_LABEL + Mailman status + + + ACCESS_DESC + If selected as private only LAN will access to this element, public will give access to all Internet + + + ARCHIVES_ACCESS + IMAP server tilgang + + + ADMIN_ACCESS + Administrer + + + +
diff --git a/root/etc/e-smith/locale/nl/etc/e-smith/web/functions/mailman b/root/etc/e-smith/locale/nl/etc/e-smith/web/functions/mailman new file mode 100644 index 0000000..c111ccf --- /dev/null +++ b/root/etc/e-smith/locale/nl/etc/e-smith/web/functions/mailman @@ -0,0 +1,44 @@ + + + FORM_TITLE + Configureer de Mailman mailing lijst manager + + + FIRST_DESC + De onderstaand opties configureren Uw Mailman mailing lijst manager.

De Mailman web interface is hier.

]]>
+
+ + Mailman + Mailman + + + ERR_UPDATE + FOUT: Er is een probleem opgetreden bij het wijzigen van de Mail man configuratie. + + + SUCCESS + De Mailman configuratie is gewijzigd. + + + STATUS_DESC + Het volgende paneel regelt de huidige status van de Mailman lijst manager op deze server. Selecteer de gewenste instelling en sla het paneel op. + + + STATUS_LABEL + Mailman status + + + ACCESS_DESC + If selected as private only LAN will access to this element, public will give access to all Internet + + + ARCHIVES_ACCESS + Archives access + + + ADMIN_ACCESS + Administratieve diensten + + + +
diff --git a/root/etc/e-smith/locale/pl/etc/e-smith/web/functions/mailman b/root/etc/e-smith/locale/pl/etc/e-smith/web/functions/mailman new file mode 100644 index 0000000..224dbcf --- /dev/null +++ b/root/etc/e-smith/locale/pl/etc/e-smith/web/functions/mailman @@ -0,0 +1,44 @@ + + + FORM_TITLE + Configure Mailman mailing list manager + + + FIRST_DESC + The options below will configure your Mailman mailing list manager.

The mailman web interface is here.

]]>
+
+ + Mailman + Mailman + + + ERR_UPDATE + ERROR: An error occurred while updating the Mailman configuration. + + + SUCCESS + The Mailman configuration was successfully updated. + + + STATUS_DESC + The following control manages the current status of the Mailman mailing list manager on this server. Select the desired value and save the panel. + + + STATUS_LABEL + Mailman status + + + ACCESS_DESC + If selected as private only LAN will access to this element, public will give access to all Internet + + + ARCHIVES_ACCESS + Archiwuj + + + ADMIN_ACCESS + Zarządzaj + + + +
diff --git a/root/etc/e-smith/locale/pt-br/etc/e-smith/web/functions/mailman b/root/etc/e-smith/locale/pt-br/etc/e-smith/web/functions/mailman new file mode 100644 index 0000000..9f9d652 --- /dev/null +++ b/root/etc/e-smith/locale/pt-br/etc/e-smith/web/functions/mailman @@ -0,0 +1,44 @@ + + + FORM_TITLE + Configurar o Mailman Mailing List Manager. + + + FIRST_DESC + As opções abaixo irão configurar seu Mailman Mailing List Manager.

A interface web Maillman está aqui.

]]>
+
+ + Mailman + Mailman + + + ERR_UPDATE + ERRO: Ocorreu um erro enquanto atualizando a configuração do Mailman + + + SUCCESS + A configuração do Mailman foi atualizada com sucesso. + + + STATUS_DESC + Os seguintes controles gerenciam o statua atual do Mailman Mailing List Manager neste servidor. Selecione o valor desejado e salve no final. + + + STATUS_LABEL + Status do Mailman + + + ACCESS_DESC + If selected as private only LAN will access to this element, public will give access to all Internet + + + ARCHIVES_ACCESS + Archives access + + + ADMIN_ACCESS + Administrar + + + +
diff --git a/root/etc/e-smith/locale/pt/etc/e-smith/web/functions/mailman b/root/etc/e-smith/locale/pt/etc/e-smith/web/functions/mailman new file mode 100644 index 0000000..0dceae1 --- /dev/null +++ b/root/etc/e-smith/locale/pt/etc/e-smith/web/functions/mailman @@ -0,0 +1,44 @@ + + + FORM_TITLE + Configure Mailman mailing list manager + + + FIRST_DESC + The options below will configure your Mailman mailing list manager.

The mailman web interface is here.

]]>
+
+ + Mailman + Mailman + + + ERR_UPDATE + ERROR: An error occurred while updating the Mailman configuration. + + + SUCCESS + The Mailman configuration was successfully updated. + + + STATUS_DESC + The following control manages the current status of the Mailman mailing list manager on this server. Select the desired value and save the panel. + + + STATUS_LABEL + Mailman status + + + ACCESS_DESC + If selected as private only LAN will access to this element, public will give access to all Internet + + + ARCHIVES_ACCESS + Acesso ao servidor IMAP + + + ADMIN_ACCESS + Administrar + + + +
diff --git a/root/etc/e-smith/locale/ro/etc/e-smith/web/functions/mailman b/root/etc/e-smith/locale/ro/etc/e-smith/web/functions/mailman new file mode 100644 index 0000000..423ba95 --- /dev/null +++ b/root/etc/e-smith/locale/ro/etc/e-smith/web/functions/mailman @@ -0,0 +1,44 @@ + + + FORM_TITLE + Configure Mailman mailing list manager + + + FIRST_DESC + The options below will configure your Mailman mailing list manager.

The mailman web interface is here.

]]>
+
+ + Mailman + Mailman + + + ERR_UPDATE + ERROR: An error occurred while updating the Mailman configuration. + + + SUCCESS + The Mailman configuration was successfully updated. + + + STATUS_DESC + The following control manages the current status of the Mailman mailing list manager on this server. Select the desired value and save the panel. + + + STATUS_LABEL + Mailman status + + + ACCESS_DESC + If selected as private only LAN will access to this element, public will give access to all Internet + + + ARCHIVES_ACCESS + Archives access + + + ADMIN_ACCESS + Administrează + + + +
diff --git a/root/etc/e-smith/locale/ru/etc/e-smith/web/functions/mailman b/root/etc/e-smith/locale/ru/etc/e-smith/web/functions/mailman new file mode 100644 index 0000000..86f589b --- /dev/null +++ b/root/etc/e-smith/locale/ru/etc/e-smith/web/functions/mailman @@ -0,0 +1,44 @@ + + + FORM_TITLE + Configure Mailman mailing list manager + + + FIRST_DESC + The options below will configure your Mailman mailing list manager.

The mailman web interface is here.

]]>
+
+ + Mailman + Mailman + + + ERR_UPDATE + ERROR: An error occurred while updating the Mailman configuration. + + + SUCCESS + The Mailman configuration was successfully updated. + + + STATUS_DESC + The following control manages the current status of the Mailman mailing list manager on this server. Select the desired value and save the panel. + + + STATUS_LABEL + Mailman status + + + ACCESS_DESC + If selected as private only LAN will access to this element, public will give access to all Internet + + + ARCHIVES_ACCESS + Доступ к IMAP серверу + + + ADMIN_ACCESS + Администрировать + + + +
diff --git a/root/etc/e-smith/locale/sl/etc/e-smith/web/functions/mailman b/root/etc/e-smith/locale/sl/etc/e-smith/web/functions/mailman new file mode 100644 index 0000000..43e3e4b --- /dev/null +++ b/root/etc/e-smith/locale/sl/etc/e-smith/web/functions/mailman @@ -0,0 +1,44 @@ + + + FORM_TITLE + Configure Mailman mailing list manager + + + FIRST_DESC + The options below will configure your Mailman mailing list manager.

The mailman web interface is here.

]]>
+
+ + Mailman + Mailman + + + ERR_UPDATE + ERROR: An error occurred while updating the Mailman configuration. + + + SUCCESS + The Mailman configuration was successfully updated. + + + STATUS_DESC + The following control manages the current status of the Mailman mailing list manager on this server. Select the desired value and save the panel. + + + STATUS_LABEL + Mailman status + + + ACCESS_DESC + If selected as private only LAN will access to this element, public will give access to all Internet + + + ARCHIVES_ACCESS + IMAP dostop do streznika + + + ADMIN_ACCESS + Upravljaj + + + +
diff --git a/root/etc/e-smith/locale/sv/etc/e-smith/web/functions/mailman b/root/etc/e-smith/locale/sv/etc/e-smith/web/functions/mailman new file mode 100644 index 0000000..589c7c3 --- /dev/null +++ b/root/etc/e-smith/locale/sv/etc/e-smith/web/functions/mailman @@ -0,0 +1,44 @@ + + + FORM_TITLE + Configure Mailman mailing list manager + + + FIRST_DESC + The options below will configure your Mailman mailing list manager.

The mailman web interface is here.

]]>
+
+ + Mailman + Mailman + + + ERR_UPDATE + ERROR: An error occurred while updating the Mailman configuration. + + + SUCCESS + The Mailman configuration was successfully updated. + + + STATUS_DESC + The following control manages the current status of the Mailman mailing list manager on this server. Select the desired value and save the panel. + + + STATUS_LABEL + Mailman status + + + ACCESS_DESC + If selected as private only LAN will access to this element, public will give access to all Internet + + + ARCHIVES_ACCESS + Archives access + + + ADMIN_ACCESS + Administrativa tjänster + + + +
diff --git a/root/etc/e-smith/locale/th/etc/e-smith/web/functions/mailman b/root/etc/e-smith/locale/th/etc/e-smith/web/functions/mailman new file mode 100644 index 0000000..fc7b09b --- /dev/null +++ b/root/etc/e-smith/locale/th/etc/e-smith/web/functions/mailman @@ -0,0 +1,44 @@ + + + FORM_TITLE + Configure Mailman mailing list manager + + + FIRST_DESC + The options below will configure your Mailman mailing list manager.

The mailman web interface is here.

]]>
+
+ + Mailman + Mailman + + + ERR_UPDATE + ERROR: An error occurred while updating the Mailman configuration. + + + SUCCESS + The Mailman configuration was successfully updated. + + + STATUS_DESC + The following control manages the current status of the Mailman mailing list manager on this server. Select the desired value and save the panel. + + + STATUS_LABEL + Mailman status + + + ACCESS_DESC + If selected as private only LAN will access to this element, public will give access to all Internet + + + ARCHIVES_ACCESS + การเข้าถึง IMAP เซอร์ฟเวอร์ + + + ADMIN_ACCESS + บริหาร + + + +
diff --git a/root/etc/e-smith/locale/tr/etc/e-smith/web/functions/mailman b/root/etc/e-smith/locale/tr/etc/e-smith/web/functions/mailman new file mode 100644 index 0000000..02df8d0 --- /dev/null +++ b/root/etc/e-smith/locale/tr/etc/e-smith/web/functions/mailman @@ -0,0 +1,44 @@ + + + FORM_TITLE + Configure Mailman mailing list manager + + + FIRST_DESC + The options below will configure your Mailman mailing list manager.

The mailman web interface is here.

]]>
+
+ + Mailman + Mailman + + + ERR_UPDATE + ERROR: An error occurred while updating the Mailman configuration. + + + SUCCESS + The Mailman configuration was successfully updated. + + + STATUS_DESC + The following control manages the current status of the Mailman mailing list manager on this server. Select the desired value and save the panel. + + + STATUS_LABEL + Mailman status + + + ACCESS_DESC + If selected as private only LAN will access to this element, public will give access to all Internet + + + ARCHIVES_ACCESS + IMAP sunucu erişimi + + + ADMIN_ACCESS + Yönet + + + +
diff --git a/root/etc/e-smith/locale/zh-cn/etc/e-smith/web/functions/mailman b/root/etc/e-smith/locale/zh-cn/etc/e-smith/web/functions/mailman new file mode 100644 index 0000000..36a351e --- /dev/null +++ b/root/etc/e-smith/locale/zh-cn/etc/e-smith/web/functions/mailman @@ -0,0 +1,44 @@ + + + FORM_TITLE + 配置mailman邮件列表管理器 + + + FIRST_DESC + 下面的选项将会应用于Mailman管理器。

Mailman的web页面是 here.

]]>
+
+ + Mailman + mailman + + + ERR_UPDATE + 错误: 更新Mainman 配置时出错。 + + + SUCCESS + Mailman 配置已经更新。 + + + STATUS_DESC + The following control manages the current status of the Mailman mailing list manager on this server. Select the desired value and save the panel. + + + STATUS_LABEL + mailman状态 + + + ACCESS_DESC + If selected as private only LAN will access to this element, public will give access to all Internet + + + ARCHIVES_ACCESS + IMAP 服务器访问 + + + ADMIN_ACCESS + 管理 + + + +
diff --git a/root/etc/e-smith/locale/zh-tw/etc/e-smith/web/functions/mailman b/root/etc/e-smith/locale/zh-tw/etc/e-smith/web/functions/mailman new file mode 100644 index 0000000..ea87d15 --- /dev/null +++ b/root/etc/e-smith/locale/zh-tw/etc/e-smith/web/functions/mailman @@ -0,0 +1,44 @@ + + + FORM_TITLE + 設定Mailman郵件表列管理員 + + + FIRST_DESC + 下方選項將設定Mailman郵件表列管理員。

mailman網路介面在此

]]>
+
+ + Mailman + Mailman電子郵件收發軟體 + + + ERR_UPDATE + 錯誤:更新Mailman設定檔時發生錯誤。 + + + SUCCESS + Mailman設定檔成功更新。 + + + STATUS_DESC + 以下的控制功能是管理目前此伺服器上Mailman郵件表列管理員的狀態。選擇想要的數值並儲存於此控制台。 + + + STATUS_LABEL + Mailman狀態 + + + ACCESS_DESC + If selected as private only LAN will access to this element, public will give access to all Internet + + + ARCHIVES_ACCESS + Archives access + + + ADMIN_ACCESS + 管理 + + + +
diff --git a/root/etc/e-smith/templates.metadata/usr/lib/mailman/Mailman/mm_cfg.py b/root/etc/e-smith/templates.metadata/usr/lib/mailman/Mailman/mm_cfg.py new file mode 100644 index 0000000..349a8c6 --- /dev/null +++ b/root/etc/e-smith/templates.metadata/usr/lib/mailman/Mailman/mm_cfg.py @@ -0,0 +1 @@ +GID="mailman" diff --git a/root/etc/e-smith/templates/etc/httpd/conf/httpd.conf/86mailmanAlias b/root/etc/e-smith/templates/etc/httpd/conf/httpd.conf/86mailmanAlias new file mode 100644 index 0000000..6a46420 --- /dev/null +++ b/root/etc/e-smith/templates/etc/httpd/conf/httpd.conf/86mailmanAlias @@ -0,0 +1,4 @@ +Alias /mailman/public /var/lib/mailman/archives/public +ScriptAlias /mailman /usr/lib/mailman/cgi-bin +RedirectMatch ^/mailman[/]*$ /mailman/listinfo + diff --git a/root/etc/e-smith/templates/etc/httpd/conf/httpd.conf/90e-smithAccess90mailman b/root/etc/e-smith/templates/etc/httpd/conf/httpd.conf/90e-smithAccess90mailman new file mode 100644 index 0000000..e61a69a --- /dev/null +++ b/root/etc/e-smith/templates/etc/httpd/conf/httpd.conf/90e-smithAccess90mailman @@ -0,0 +1,24 @@ +#------------------------------------------------------------ +# mailman directories +#------------------------------------------------------------ + + + Options ExecCGI + Require { (($mailman{access} || 'public' ) eq "public" ) ? "all granted": "ip $localAccess";} + + + + Options Indexes Includes FollowSymLinks + Require { (($mailman{archivesaccess} || 'private' ) eq "public" ) ? "all granted": "ip $localAccess";} + + + + Options Indexes Includes FollowSymLinks + Require { (($mailman{archivesaccess} || 'private' ) eq "public" ) ? "all granted": "ip $localAccess";} + + + + Require { (($mailman{adminaccess} || 'private' ) eq "public" ) ? "all granted": "ip $localAccess";} + + + diff --git a/root/etc/e-smith/templates/usr/lib/mailman/Mailman/mm_cfg.py/10defaults b/root/etc/e-smith/templates/usr/lib/mailman/Mailman/mm_cfg.py/10defaults new file mode 100644 index 0000000..8506bcf --- /dev/null +++ b/root/etc/e-smith/templates/usr/lib/mailman/Mailman/mm_cfg.py/10defaults @@ -0,0 +1,46 @@ +# -*- python -*- + +# Copyright (C) 1998 by the Free Software Foundation, Inc. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + + +"""This is the module which takes your site-specific settings. + +From a raw distribution it should be copied to mm_cfg.py. If you +already have an mm_cfg.py, be careful to add in only the new settings +you want. The complete set of distributed defaults, with annotation, +are in ./Defaults. In mm_cfg, override only those you want to +change, after the + + from Defaults import * + +line (see below). + +Note that these are just default settings - many can be overridden via the +admin and user interfaces on a per-list or per-user basis. + +Note also that some of the settings are resolved against the active list +setting by using the value as a format string against the +list-instance-object's dictionary - see the distributed value of +DEFAULT_MSG_FOOTER for an example.""" + + +####################################################### +# Here's where we get the distributed defaults. # + +from Defaults import * +import pwd, grp + diff --git a/root/etc/e-smith/templates/usr/lib/mailman/Mailman/mm_cfg.py/20override b/root/etc/e-smith/templates/usr/lib/mailman/Mailman/mm_cfg.py/20override new file mode 100644 index 0000000..e1be83e --- /dev/null +++ b/root/etc/e-smith/templates/usr/lib/mailman/Mailman/mm_cfg.py/20override @@ -0,0 +1,22 @@ +############################################################## +# Here's where we override shipped defaults with settings # +# suitable for the RPM package. # +ADMINDB_PAGE_TEXT_LIMIT = 8192 +DEFAULT_ADMIN_MEMBER_CHUNKSIZE = 50 +DEFAULT_BOUNCE_MATCHING_HEADERS = """ +""" +DEFAULT_DIGEST_SIZE_THRESHHOLD = 250 +DEFAULT_MAX_MESSAGE_SIZE = 100 +DEFAULT_MAX_NUM_RECIPIENTS = 25 +DEFAULT_MSG_FOOTER = """_______________________________________________ +%(description)s +%(list_name)s@%(host_name)s +%(web_page_url)slistinfo%(cgiext)s/%(list_name)s +""" +LOG_DIR = '/var/log/mailman' +MAILMAN_UID = pwd.getpwnam('mailman')[2] +MAILMAN_GID = grp.getgrnam('mailman')[2] +PUBLIC_ARCHIVE_URL = 'http://%(hostname)s/mailman/public/%(listname)s' +QUEUE_DIR = '/var/spool/mailman/qfiles' +USE_ENVELOPE_SENDER = 1 + diff --git a/root/etc/e-smith/templates/usr/lib/mailman/Mailman/mm_cfg.py/30hostname b/root/etc/e-smith/templates/usr/lib/mailman/Mailman/mm_cfg.py/30hostname new file mode 100644 index 0000000..ca62928 --- /dev/null +++ b/root/etc/e-smith/templates/usr/lib/mailman/Mailman/mm_cfg.py/30hostname @@ -0,0 +1,7 @@ +############################################################## +# Put YOUR site-specific configuration below, in mm_cfg.py . # +# See Defaults.py for explanations of the values. # + +DEFAULT_EMAIL_HOST = '{ $DomainName }' +DEFAULT_URL_HOST = '{ $DomainName }' + diff --git a/root/etc/e-smith/templates/usr/lib/mailman/Mailman/mm_cfg.py/40archiver b/root/etc/e-smith/templates/usr/lib/mailman/Mailman/mm_cfg.py/40archiver new file mode 100644 index 0000000..0d5de86 --- /dev/null +++ b/root/etc/e-smith/templates/usr/lib/mailman/Mailman/mm_cfg.py/40archiver @@ -0,0 +1,17 @@ +{ + $OUT = ""; + if( -x "/usr/lib/mailman/mhonarc/filter") + { + $OUT .= "PUBLIC_EXTERNAL_ARCHIVER = '/usr/lib/mailman/mhonarc/filter %(listname)s'\n"; + $OUT .= "PRIVATE_EXTERNAL_ARCHIVER = '/usr/lib/mailman/mhonarc/filter %(listname)s'\n"; + $OUT .= "PUBLIC_EXTERNAL_ARCHIVER = '/usr/lib/mailman/mhonarc/filter %(listname)s'\n"; + $OUT .= "PRIVATE_EXTERNAL_ARCHIVER = '/usr/lib/mailman/mhonarc/filter %(listname)s'\n"; + } + else + { + $OUT .= "PUBLIC_EXTERNAL_ARCHIVER = 0\n"; + $OUT .= "PRIVATE_EXTERNAL_ARCHIVER = 0\n"; + $OUT .= "PUBLIC_EXTERNAL_ARCHIVER = 0\n"; + $OUT .= "PRIVATE_EXTERNAL_ARCHIVER = 0\n"; + } +} diff --git a/root/etc/e-smith/templates/usr/lib/mailman/Mailman/mm_cfg.py/50MTA b/root/etc/e-smith/templates/usr/lib/mailman/Mailman/mm_cfg.py/50MTA new file mode 100644 index 0000000..7d03939 --- /dev/null +++ b/root/etc/e-smith/templates/usr/lib/mailman/Mailman/mm_cfg.py/50MTA @@ -0,0 +1,6 @@ +############################################################## +# Set MTA to special SME.py module for creation/deletion # +# of lists. # + +MTA = 'SME' + diff --git a/root/etc/e-smith/templates/usr/lib/mailman/Mailman/mm_cfg.py/60virtual b/root/etc/e-smith/templates/usr/lib/mailman/Mailman/mm_cfg.py/60virtual new file mode 100644 index 0000000..4229482 --- /dev/null +++ b/root/etc/e-smith/templates/usr/lib/mailman/Mailman/mm_cfg.py/60virtual @@ -0,0 +1,16 @@ +{ + # vim: ft=perl: + use esmith::DomainsDB; + + my $domains = esmith::DomainsDB->open_ro; + $OUT = ''; + + foreach my $domainrec ($domains->domains) + { + next if $domainrec->prop('SystemServiceDomain'); + $OUT .= "add_virtualhost('$domainrec->{key}', '$domainrec->{key}')\n"; + } + # Also add the FQDN of the box itself, in case the list is being addressed + # in that fashion. + $OUT .= "add_virtualhost('$SystemName.$DomainName', '$SystemName.$DomainName')\n"; +} diff --git a/root/etc/e-smith/templates/usr/lib/mailman/Mailman/mm_cfg.py/90cleanup b/root/etc/e-smith/templates/usr/lib/mailman/Mailman/mm_cfg.py/90cleanup new file mode 100644 index 0000000..cbdc063 --- /dev/null +++ b/root/etc/e-smith/templates/usr/lib/mailman/Mailman/mm_cfg.py/90cleanup @@ -0,0 +1,21 @@ +############################################################## +# The following are set to clean up variables that were set # +# above. Do not change or remove these unless you know what # +# you are doing. # + +DEFAULT_DIGEST_FOOTER = DEFAULT_MSG_FOOTER +DEFAULT_HOST_NAME = DEFAULT_EMAIL_HOST +DEFAULT_URL = DEFAULT_URL_PATTERN % DEFAULT_URL_HOST +INQUEUE_DIR = os.path.join(QUEUE_DIR, 'in') +OUTQUEUE_DIR = os.path.join(QUEUE_DIR, 'out') +CMDQUEUE_DIR = os.path.join(QUEUE_DIR, 'commands') +BOUNCEQUEUE_DIR = os.path.join(QUEUE_DIR, 'bounces') +NEWSQUEUE_DIR = os.path.join(QUEUE_DIR, 'news') +ARCHQUEUE_DIR = os.path.join(QUEUE_DIR, 'archive') +SHUNTQUEUE_DIR = os.path.join(QUEUE_DIR, 'shunt') +VIRGINQUEUE_DIR = os.path.join(QUEUE_DIR, 'virgin') +BADQUEUE_DIR = os.path.join(QUEUE_DIR, 'bad') +MAILDIR_DIR = os.path.join(QUEUE_DIR, 'maildir') + +# Note - if you're looking for something that is imported from mm_cfg, but you +# didn't find it above, it's probably in Defaults.py. diff --git a/root/etc/e-smith/templates/var/qmail/users/assign/90mailmanlists b/root/etc/e-smith/templates/var/qmail/users/assign/90mailmanlists new file mode 100644 index 0000000..e49153e --- /dev/null +++ b/root/etc/e-smith/templates/var/qmail/users/assign/90mailmanlists @@ -0,0 +1,56 @@ +{ + use esmith::config; + use esmith::db; + + $OUT = ''; + + # Generate mailman user assignments for mailing lists. These will be handled + # by ~mailman/aliases/.qmail-listname and ~mailman/aliases/.qmail-listname-ext. + + my %accounts; + tie %accounts, 'esmith::config', "/home/e-smith/db/accounts"; + + my (undef, undef, $uid, $gid, undef, undef, undef, $dir, undef) + = getpwnam("mailman"); + + # It is almost impossible to get Text::Template to output nothing + # on failure. It can be done by removing the newline at the end of + # this file but that is messy. Therefore, we'll simply return an + # error message that will make qmail-newu fail. Also send a + # warning message that will be captured in the logs. + + unless (defined $uid && defined $gid && defined $dir) + { + my $msg = + "Failed to obtain user details for \'mailman\' " + . "while processing group assignments."; + + warn "$msg\n"; + $OUT = $msg; + return; + } + + my $mailman_assign = "mailman:${uid}:${gid}:${dir}/aliases"; + + foreach my $listname (db_get(\%accounts)) + { + next unless db_get_type(\%accounts, $listname) eq "mailmanlist"; + + # Assign mail for listname@ + $OUT .= "=${listname}:${mailman_assign}:-:${listname}:\n"; + + # Assign mail for listname-ext@ + $OUT .= "+${listname}-:${mailman_assign}:-${listname}-::\n"; + } + + # Need to remove the final newline character. Blank lines in + # /var/qmail/users/assign are prohibited. + + chomp($OUT); + + # Failsafe: /var/qmail/users/assign cannot have blank lines. + # Therefore, if $OUT is empty, simply set up an assign for the + # ezmlm user. + + $OUT = "=mailman:${mailman_assign}:::" unless $OUT; +} diff --git a/root/etc/e-smith/templates/var/service/qpsmtpd/config/goodrcptto/80mailman b/root/etc/e-smith/templates/var/service/qpsmtpd/config/goodrcptto/80mailman new file mode 100644 index 0000000..fecb07a --- /dev/null +++ b/root/etc/e-smith/templates/var/service/qpsmtpd/config/goodrcptto/80mailman @@ -0,0 +1,3 @@ +{ + $OUT .= "mailman\@$_\n" for (@domains); +} diff --git a/root/etc/e-smith/web/functions/mailman b/root/etc/e-smith/web/functions/mailman new file mode 100644 index 0000000..4fc0e1c --- /dev/null +++ b/root/etc/e-smith/web/functions/mailman @@ -0,0 +1,84 @@ +#!/usr/bin/perl -wT +# vim: ft=xml: + +#---------------------------------------------------------------------- +# heading : Configuration +# description : Mailman +# navigation : 6000 6750 +# +# copyright (C) 1999-2003 Mitel Networks Corporation +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# Technical support for this program is available from Mitel Networks +# Please visit our web site www.mitel.com/sme/ for details. +#---------------------------------------------------------------------- + +use strict; +use esmith::FormMagick::Panel::mailman; + +my $cgi = esmith::FormMagick::Panel::mailman->new(); +$cgi->display(); + +__DATA__ +
+ + + + FIRST_DESC + + + + STATUS_DESC + + + + ACCESS_DESC + + + + ACCESS_DESC + + + + ACCESS_DESC + + + + + +
diff --git a/root/sbin/e-smith/alias2mailman b/root/sbin/e-smith/alias2mailman new file mode 100644 index 0000000..5f28a24 --- /dev/null +++ b/root/sbin/e-smith/alias2mailman @@ -0,0 +1,68 @@ +#!/bin/sh +#---------------------------------------------------------------------- +# Copyright (C) 2006 Gordon Rowell +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License or more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +#---------------------------------------------------------------------- + +# Quick conversion of ~alias file to mailman + +LIST=$1 +OWNER=$2 + +TYPE=$(db accounts gettype $LIST) + +if [ -n "$TYPE" ] +then + echo "$LIST is an existing account of type $TYPE" + exit 1 +fi + +ALIAS_FILE=/var/qmail/alias/.qmail-$LIST + +if [ ! -f $ALIAS_FILE ] +then + echo "$ALIAS_FILE doesn't exist" + exit 2 +fi + +OWNER=$(config getprop mailman DefaultOwner) +OWNER=${OWNER:-"admin@$DOMAIN"} + +/usr/lib/mailman/bin/newlist -q $LIST $OWNER dummypass > /dev/null 2>&1 || : + +cat > /tmp/hide << EOF +advertised = 1 +archive_private = 1 +send_reminders = 0 +send_welcome_msg = 0 +send_goodbye_msg = 0 +description = 'Mailing list $LIST' +EOF + +/usr/lib/mailman/bin/config_list -i /tmp/hide $LIST > /dev/null 2>&1 || : +rm -f /tmp/hide + +/usr/lib/mailman/bin/change_pw -l $LIST 2> /dev/null || + echo "New mailman password: *UNCHANGED*"; : + +grep -v '^#' $ALIAS_FILE | + sed -e 's/&//' | + /usr/lib/mailman/bin/add_members -r - -a n $LIST + +expand-template /var/qmail/users/assign +/var/qmail/bin/qmail-newu + +mv $ALIAS_FILE $ALIAS_FILE.mailman diff --git a/root/usr/lib/mailman/Mailman/MTA/SME.py b/root/usr/lib/mailman/Mailman/MTA/SME.py new file mode 100644 index 0000000..0a08e7f --- /dev/null +++ b/root/usr/lib/mailman/Mailman/MTA/SME.py @@ -0,0 +1,55 @@ +# Copyright (C) 2001,2002 by the Free Software Foundation, Inc. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + +"""Creation/deletion hooks for the SME and Q-Mail +""" + +import os +import time +import errno +import pwd +from stat import * + +from Mailman import mm_cfg +from Mailman import Utils +from Mailman import LockFile +from Mailman.i18n import _ +from Mailman.MTA.Utils import makealiases +from Mailman.Logging.Syslog import syslog + + + +def create(mlist, cgi=0, nolock=0): + listname = mlist.internal_name() + msg = 'command failed: %s (status: %s, %s)' + acmd = '/usr/lib/mailman/bin/smelist addlist ' + listname + status = (os.system(acmd) >> 8) & 0xff + if status: + errstr = os.strerror(status) + syslog('error', msg, acmd, status, errstr) + raise RuntimeError, msg % (acmd, status, errstr) + + + +def remove(mlist, cgi=0): + listname = mlist.internal_name() + msg = 'command failed: %s (status: %s, %s)' + acmd = '/usr/lib/mailman/bin/smelist rmlist ' + listname + status = (os.system(acmd) >> 8) & 0xff + if status: + errstr = os.strerror(status) + syslog('error', msg, acmd, status, errstr) + raise RuntimeError, msg % (acmd, status, errstr) diff --git a/root/usr/lib/mailman/bin/post-install b/root/usr/lib/mailman/bin/post-install new file mode 100644 index 0000000..8c29dfd --- /dev/null +++ b/root/usr/lib/mailman/bin/post-install @@ -0,0 +1,33 @@ +#!/bin/bash + +[ -d /var/lib/mailman/lists/mailman ] && exit 0 + +echo " " +DOMAIN=`/sbin/e-smith/config get DomainName` +if [ ! -d /var/lib/mailman/lists/mailman ]; then + MATRIX="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz" + LENGTH="18" + while [ "${n:=1}" -le "$LENGTH" ]; do + PASS="$PASS${MATRIX:$(($RANDOM%${#MATRIX})):1}" + let n+=1 + done + /sbin/e-smith/config setprop mailman SitePass $PASS + + /usr/lib/mailman/bin/mmsitepass "$PASS" > /dev/null 2>&1 || : + /usr/lib/mailman/bin/newlist -q mailman admin@${DOMAIN} dummypass > /dev/null 2>&1 || : + cat > /tmp/hide << EOF +advertised = 0 +archive_private = 1 +description = 'Mailman Mailing List' +EOF + /usr/lib/mailman/bin/config_list -i /tmp/hide mailman > /dev/null 2>&1 || : + rm -f /tmp/hide + echo -n "* " + /usr/lib/mailman/bin/change_pw -l mailman 2> /dev/null || echo "New mailman password: *UNCHANGED*"; : + "/usr/lib/mailman/bin/add_members -r - -a n mailman << EOF + admin@${DOMAIN} +EOF" > /dev/null 2>&1 || : +else + /etc/e-smith/events/actions/email-assign || : +fi +/usr/lib/mailman/bin/check_perms -f diff --git a/root/usr/lib/mailman/bin/smelist.pl b/root/usr/lib/mailman/bin/smelist.pl new file mode 100644 index 0000000..ef94fb7 --- /dev/null +++ b/root/usr/lib/mailman/bin/smelist.pl @@ -0,0 +1,31 @@ +#!/usr/bin/perl -wT + +package esmith; +use strict; +use esmith::util; + +my $usage = "$0 is not meant to be called from the command line. +"; + +my ($event, $list) = @ARGV; +die $usage unless $event; +die $usage unless $list; + +BEGIN +{ + $ENV {'PATH'} = ''; + $ENV {'SHELL'} = '/bin/bash'; + delete $ENV {'ENV'}; +} + +die "Unknown event $event" + unless ($event =~ /^(addlist|rmlist|update)$/); +$event = $1; + +die "Invalid list name $list" + unless ($list =~ /^([\w\-\._]+)$/); +$list = $1; + +esmith::util::setRealToEffective (); +system ("/sbin/e-smith/signal-event", "mailman-$event", "$list") == 0 + or die ("Error occurred while modifying mailman list $list.\n"); diff --git a/root/usr/lib/systemd/system/mailman.service.d/51koozali.conf b/root/usr/lib/systemd/system/mailman.service.d/51koozali.conf new file mode 100644 index 0000000..aa4f147 --- /dev/null +++ b/root/usr/lib/systemd/system/mailman.service.d/51koozali.conf @@ -0,0 +1,2 @@ +[Install] +WantedBy=sme-server.target diff --git a/root/usr/share/perl5/vendor_perl/esmith/FormMagick/Panel/mailman.pm b/root/usr/share/perl5/vendor_perl/esmith/FormMagick/Panel/mailman.pm new file mode 100644 index 0000000..75f7e93 --- /dev/null +++ b/root/usr/share/perl5/vendor_perl/esmith/FormMagick/Panel/mailman.pm @@ -0,0 +1,128 @@ +#----------------------------------------------------------------------) +# $Id: mailman.pm,v 1.1 2005/02/16 02:34:26 msoulier Exp $ +#---------------------------------------------------------------------- +# copyright (C) 2002 Mitel Networks Corporation +#---------------------------------------------------------------------- + +package esmith::FormMagick::Panel::mailman; + +use strict; +use esmith::ConfigDB; +use esmith::FormMagick; + +use constant SIGEVENT => '/sbin/e-smith/signal-event'; + +our @ISA = qw(esmith::FormMagick); +our $VERSION = sprintf '%d.%03d', q$Revision: 1.1 $ =~ /: (\d+).(\d+)/; + +=head1 NAME + +esmith::FormMagick::Panel::mailman - panel backend + +=head1 SYNOPSIS + +use esmith::FormMagick::Panel::mailman; + +my $panel = esmith::FormMagick::Panel::mailman->new(); +$panel->display(); + +=head1 DESCRIPTION + +This class is the esmith::FormMagick subclass for the Mailman panel in the +server manager. It is the backend responsible for handling form submissions, +and helping to output the form itself. + +=head2 new + +Class constructor. + +=cut + +sub new +{ + my $class = ref($_[0]) || $_[0]; + my $self = $class->SUPER::new(); + $self->{calling_package} = __PACKAGE__; + + my $db = esmith::ConfigDB->open + or die "Could not open configuration database"; + + $self->{db} = $db; + $self->debug(0); + return $self; +} + +=head2 get_status + +This method returns the current mailman status. + +=cut + +sub get_status +{ + my $self = shift; + my $status = $self->{db}->get_prop('mailman', 'status') || 'disabled'; + return $status; +} + +=head2 get_access + +This method returns the current mailman access. + +=cut + +sub get_access +{ + my $self = shift; + my $access = $self->{db}->get_prop('mailman', 'access') || 'public'; + return $access; +} + +=head2 get_archivesaccess + +This method returns the current mailman archivesaccess. + +=cut + +sub get_archivesaccess +{ + my $self = shift; + my $archivesaccess = $self->{db}->get_prop('mailman', 'archivesaccess') || 'private'; + return $archivesaccess; +} + +=head2 get_adminaccess + +This method returns the current mailman adminaccess. + +=cut + +sub get_adminaccess +{ + my $self = shift; + my $adminaccess = $self->{db}->get_prop('mailman', 'adminaccess') || 'private'; + return $adminaccess; +} + + +=head2 change_settings + +This method handles the form submission for the first page. + +=cut + +sub change_settings +{ + my $self = shift; + my $q = $self->{cgi}; + + my $status = $q->param('status'); + $self->{db}->set_prop('mailman', 'status', $status, type => 'service'); + + system(SIGEVENT, 'mailman-update') == 0 + or return $self->error('ERR_UPDATE'); + + return $self->success('SUCCESS'); +} + +1; diff --git a/smeserver-mailman.spec b/smeserver-mailman.spec new file mode 100644 index 0000000..2f7711a --- /dev/null +++ b/smeserver-mailman.spec @@ -0,0 +1,436 @@ +# $Id: smeserver-mailman.spec,v 1.22 2024/09/06 00:35:37 terryfage Exp $ +# Authority: gordonr +# Name: Gordon Rowell + +# avoid brp bytecompile +%define __os_install_post %{nil} +%define debug_package %{nil} + +Summary: Mailman configuration for SME server. +%define name smeserver-mailman +Name: %{name} +%define version 1.5.0 +%define release 22 +Version: %{version} +Release: %{release}%{?dist} +License: GPL +Group: Applications/Internet +Source: %{name}-%{version}.tar.xz +BuildRoot: /var/tmp/%{name}-%{version}-%{release}-buildroot +BuildArchitectures: noarch +Requires: e-smith-base +Requires: e-smith-release >= 10.0 +Requires: e-smith-apache >= 2.6.0-19 +Requires: mailman >= 2.1.9-20.el5.sme +Requires: e-smith-formmagick >= 1.4.0-12 +BuildRequires: e-smith-devtools >= 1.13.1-03 +Obsoletes: e-smith-mailman +Provides: e-smith-mailman +AutoReqProv: no +#Patch0: smeserver-mailman-1.5.0.bz2411.Backup_mailman.patch + +%description +Add Mailman integration to the SME server. + +%changelog +* Sat Sep 07 2024 cvs2git.sh aka Brian Read 1.5.0-22.sme +- Roll up patches and move to git repo [SME: 12338] + +* Sat Sep 07 2024 BogusDateBot +- Eliminated rpmbuild "bogus date" warnings due to inconsistent weekday, + by assuming the date is correct and changing the weekday. + +* Fri Sep 06 2024 terry Fage 1.5.0-21.sme +- apply locale 2024-09-05.patch + +* Fri Nov 11 2022 Jean-Philippe Pialasse 1.5.0-20.sme +- apply locale 2022-11-11 patch + +* Sat Jul 30 2022 Brian Read 1.5.0-18.sme +- Re-build and link to latest devtools [SME: 11997] + +* Sat Jul 30 2022 Jean-Philippe Pialasse 1.5.0-17.sme +- update to httpd 2.4 access syntax [SME: 12050] +- rebuild for core backup [SME: 12015] + +* Sat Jul 23 2022 Jean-Philippe Pialasse 1.5.0-16.sme +- apply locale 2022-07-24.patch +- add to core backup [SME: 12015] + remove patch only adding to dar in SME 2411 +- already compatible with httpd 2.4 syntax [SME: 12050] + +* Tue Apr 12 2022 Jean-Philippe Pialasse 1.5.0-15.sme +- Re-build and link to latest devtools permissions as expected by mailman [SME: 11941] +- make mailman enabled on install [SME: 2248] +- by default listinfo is public [SME: 2247] +- by default admin and archives are private [SME: 2247] +- make access modifiable [SME: 2247] + +* Tue Apr 12 2022 Jean-Philippe Pialasse 1.5.0-14.sme +- increase master password size to 18 [SME: 11937] + +* Sun Apr 10 2022 Jean-Philippe Pialasse 1.5.0-13.sme +- add c wrapper with setuid [SME: 11278] + +* Sun Apr 10 2022 Jean-Philippe Pialasse 1.5.0-12.sme +- Re-build and link to latest devtools missing service start [SME: 11278] + add update event + +* Tue Mar 15 2022 Jean-Philippe Pialasse 1.5.0-11.sme +- Re-build and link to latest devtools www line should be after apache line in /etc/group [SME: 8056] + +* Mon Aug 23 2021 Terry Fage 1.5.0-10.sme +- apply locale 2021-08-22 patch + +* Thu Jun 03 2021 Jean-Philippe Pialasse 1.5.0-9.sme +- Re-build and link to latest devtools conflicting folders [SME: 11278] + +* Mon Feb 22 2021 JP Pialasse 1.5.0-8.sme +- Eliminated rpmbuild "bogus date" warnings due to inconsistent weekday, + by assuming the date is correct and changing the weekday. + Thu May 21 2008 --> Thu May 15 2008 or Wed May 21 2008 or Thu May 22 2008 or .... +- allow build on SME10 + +* Wed Mar 09 2016 JP Pialasse 1.5.0-7.sme +- apply locale 2016-03-09 patch + +* Fri Sep 11 2015 stephane de Labrusse 1.5.0-6.sme +- Mailman is now added to the backup/restore process [SME: 2411] +- Added smeserver-mailman-1.5.0.bz2411.Backup_mailman.patch + +* Fri Aug 21 2015 stephane de Labrusse 1.5.0-5.sme +- mailman wants that the group apache appears before the www group in /etc/group +- script added in %pre to change that order. [SME: 8056] + +* Fri Aug 21 2015 stephane de Labrusse 1.5.0-3.sme +- Initial release to contribs9 [SME: 8453] + +* Fri Jun 20 2014 stephane de Labrusse 1.5.0-1.sme +- Initial release to sme9 + +* Fri Sep 20 2013 JP Pialasse 1.3.0-45.sme +- Re-build and link to latest devtools bug [SME: 7787] + +* Thu Sep 19 2013 JP Pialasse 1.3.0-44.sme +- Re-build and link to latest devtools case sensitive TRUE to true in smeserver-mailman-1.3.0-restarthang.patch +- wrong path to actions folder fixed +- see [SME: 7845] + +* Sun Jul 14 2013 JP Pialasse 1.3.0-42.sme +- apply locale 2013-07-14 patch + +* Sun Jul 14 2013 JP Pialasse 1.3.0-41.sme +- Re-build and link to latest devtools signal-event hang on mailman restart [SME ] +* Mon Jul 01 2013 JP Pialasse 1.3.0-40.sme +- Re-build and link to latest devtools expanding pyc pyo [SME: 7730] + +* Mon Jul 01 2013 JP Pialasse 1.3.0-38.sme +- import to sme8 buildsys +- Re-build and link to latest devtools bootstrap hang [SME: 6693] + +* Tue Mar 20 2012 SME Translation Server 1.3.0-37.el6 +- apply locale 2012-03-20 patch + +* Wed Apr 27 2011 SME Translation Server 1.3.0-36.sme +- apply locale 2011-04-27 patch + +* Sun Mar 06 2011 SME Translation Server 1.3.0-35.sme +- apply locale 2011-03-06 patch + +* Tue Mar 02 2010 SME Translation Server 1.3.0-34.sme +- apply locale 2010-03-02 patch + +* Tue Oct 27 2009 SME Translation Server 1.3.0-33.sme +- apply locale 2009-10-27 patch + +* Mon Aug 24 2009 SME Translation Server 1.3.0-32.sme +- apply locale 2009-08-24 patch + +* Wed May 20 2009 SME Translation Server 1.3.0-31.sme +- apply locale 2009-05-20 patch + +* Mon Apr 27 2009 SME Translation Server 1.3.0-30.sme +- apply locale 2009-04-27 patch + +* Tue Mar 03 2009 SME Translation Server +- apply locale 2009-03-03 patch + +* Sun Mar 1 2009 Jonathan Martens 1.3.0-28 +- Apply 1 Mar 2009 locale patch [SME: 5018] + +* Sat Jan 31 2009 Jonathan Martens 1.3.0-27 +- Apply 31 Jan 2009 locale patch [SME: 4951] + +* Wed Nov 5 2008 Jonathan Martens 1.3.0-26 +- Apply 5 Nov 2008 locale patch + +* Tue Oct 14 2008 Jonathan Martens 1.3.0-25 +- Apply 14 Oct 2008 locale patch + +* Tue Jul 1 2008 Jonathan Martens 1.3.6-24 +- Apply 1 July 2008 locale patch + +* Fri Jun 27 2008 Jonathan Martens 1.3.6-23 +- Apply 27 Jun 2008 locale patch + +* Wed May 21 2008 Jonathan Martens 1.3.6-22 + Thu May 21 2008 --> Thu May 15 2008 or Wed May 21 2008 or Thu May 22 2008 or .... +- Apply 21 May 2008 locale patch +- Fixed version number in previous changelog entry + +* Mon May 5 2008 Jonathan Martens 1.3.6-21 +- Apply 5 May 2008 locale patch + +* Sat Apr 26 2008 Jonathan Martens 1.3.0-20 +- Add common tags to e-smith-formmagick's general + +* Sat Apr 26 2008 Jonathan Martens 1.3.0-19 +- Added 26 April 2008 locale patch + +* Wed Apr 23 2008 Jonathan Martens 1.3.0-18 +- Added 23 April 2008 locale patch +- Fixed changelog + +* Wed Apr 23 2008 Daniel B. 1.3.0-17 +- Fix path for the archives [SME: 4252] + +* Tue Apr 22 2008 Jonathan Martens 1.3.0-16 +- Added 22 April 2008 locale patch + +* Sun Apr 29 2007 Shad L. Lords +- Clean up spec so package can be built by koji/plague + +* Thu Dec 07 2006 Shad L. Lords +- Update to new release naming. No functional changes. +- Make Packager generic + +* Fri Sep 22 2006 Gordon Rowell 1.3.0-15 +- Allow hyphen in list names in smelist command [SME: 1307] + +* Fri Sep 22 2006 Gordon Rowell 1.3.0-14 +- Add /sbin/e-smith/alias2mailman to convert hand-built alias files + to mailman lists. Converst ~alias/.qmail- to the mailman + list +- List owner is mailman{DefaultOwner} defaulting to admin + +* Fri Sep 22 2006 Gordon Rowell 1.3.0-13 +- Fix various permissions to satisfy /usr/lib/mailman/check_perms +- Update mailman dependency to latest from CentOS + +* Wed Mar 8 2006 Gordon Rowell 1.3.0-12 +- Run the addlist/rmlist actions before generic_template_expand [SME: 665] + +* Wed Mar 8 2006 Gordon Rowell 1.3.0-11 +- Ensure that mailman record exists prior to trying to set the status + +* Wed Mar 8 2006 Gordon Rowell 1.3.0-10 +- Adjust path in post-install script to match CentOS structure + +* Wed Mar 8 2006 Gordon Rowell 1.3.0-09 +- Make further use of services2adjust and templates2expand + +* Wed Mar 8 2006 Gordon Rowell 1.3.0-08 +- Make use of services2adjust and templates2expand +- Update dependency as this is for 7.0 + +* Wed Mar 8 2006 Gordon Rowell 1.3.0-07 +- Create qfiles heirarchy +- Fix up taint issue in smelist script + +* Thu Jan 5 2006 Gordon Rowell 1.3.0-06 +- TODO: Check permissions on /var/spool/mailman/qfiles. The + 'in' directory needs to be writable by the mailman CGI script, + which is running as www. + +* Thu Jan 5 2006 Gordon Rowell 1.3.0-05 +- Remove postun section which depended on action scripts which + no longer exist + +* Fri Dec 23 2005 Gordon Rowell 1.3.0-04 +- Allow mail for mailman user +- TODO: We should have configurable allow/deny for system accounts + +* Tue Oct 25 2005 Gordon Rowell 1.3.0-03 +- No change +- TODO: Rewrite templates to new API and move to templates2expand +- TODO: Add pre script to relocate /opt/mailman parts for upgrades + +* Tue Oct 25 2005 Gordon Rowell 1.3.0-02 +- Require patched mailman - SME Server runs httpd as www, not apache +- Relocate paths from /opt/mailman to /usr/lib/mailman to match mailman pkg +- Changed references to accounts db to new location + +* Tue Oct 25 2005 Gordon Rowell 1.3.0-01 +- Package renamed to smeserver-mailman, including patches to 1.1.10-05 +- TODO: Relocate to /usr/lib/mailman +- TODO: Change DB references, and rewrite to new API + +* Fri Oct 14 2005 Michael Soulier +- [1.1.10-05] +- Fixed error with creation of alias file with dot in the name. + +* Wed Mar 16 2005 Michael Soulier +- [1.1.10-04] +- Added FQDN of box as a potential virtual host. + +* Mon Mar 14 2005 Michael Soulier +- [1.1.10-03] +- Removed circular event call. + +* Wed Feb 23 2005 Michael Soulier +- [1.1.10-02] +- Forgot to set mode on smelist. + +* Wed Feb 16 2005 Michael Soulier +- [1.1.10-01] +- Added hooks into domain creation and deletion. + +* Wed Feb 16 2005 Michael Soulier +- [1.1.9-01] +- Rolling again to get past build error on sme61build. + +* Wed Feb 16 2005 Michael Soulier +- [1.1.8-01] +- Added create-system-user call to make the mailman user. +- Added a link to the mailman UI. + +* Tue Feb 15 2005 Michael Soulier +- [1.1.7-01] +- Updated mailman-conf to call a post-install script when first run. If this + is ever included in a blade, post-install should move to the blade handler. + +* Tue Feb 15 2005 Michael Soulier +- [1.1.6-01] +- Fixed badly placed lib. +- Added post-install script to move it out of scriptlets. + +* Tue Feb 15 2005 Michael Soulier +- [1.1.5-01] +- Added conf and restart actions. +- Added a simple panel. + +* Tue Feb 15 2005 Michael Soulier +- [1.1.4-01] +- Fixed perms on /opt/mailman, and bad symlink. + +* Sun Feb 13 2005 Michael Soulier +- [1.1.3-01] +- Fixed error in createlinks. + +* Sun Feb 13 2005 Michael Soulier +- [1.1.2-01] +- Rolling initial build of imported package. [msoulier] + +* Sun Feb 13 2005 Michael Soulier +- [1.1.1-01] +- Reimplementation after lost packages. Implementing for mailman 2.1.5. + [msoulier] + +* Sun Sep 08 2002 Shad L. Lords +- 1.0-5 +- updated addlist and rmlist to better handle conflicts + +* Sun Sep 01 2002 Shad L. Lords +- 1.0-4 +- updated accounts so that ezmlm can coexist with mailman + +* Tue Aug 27 2002 Shad L. Lords +- 1.0-3 +- make site have a random password on install +- make mailman list have random password on install + +* Sat Aug 24 2002 Shad L. Lords +- 1.0-2 +- changed mailman-addlist to set perms and ownership correctly. +- changed permissions from root,mailman to mailman,mailman + +* Fri Aug 23 2002 Shad L. Lords +- 1.0-1 +- Initial release + +%prep +%setup +#%patch0 -p1 + +#/bin/rm -r root/opt/mailman + +%build +perl createlinks +gcc -o root/usr/lib/mailman/bin/smelist smelist.c + + +mkdir -p root/usr/lib/mailman/aliases + +mkdir -p root/opt +ln -s /usr/lib/mailman root/opt/mailman +mkdir -p root/var/spool/mailman/qfiles +for dir in archive bounces commands in news out retry shunt virgin +do + mkdir -p root/var/spool/mailman/qfiles/$dir +done + +%install +rm -rf $RPM_BUILD_ROOT +(cd root ; find . -depth -print | cpio -dump $RPM_BUILD_ROOT) +rm -f e-smith-%{version}-filelist +/sbin/e-smith/genfilelist \ + --dir '/var/spool/mailman' 'attr(02775,root,mailman)' \ + --dir '/usr/lib/mailman/aliases' 'attr(02775,mailman,mailman)' \ + --file '/usr/lib/mailman/bin/post-install' 'attr(0755,root,mailman)' \ + --file '/usr/lib/mailman/bin/smelist' 'attr(04755,root,mailman)' \ + --file '/usr/lib/mailman/bin/smelist.pl' 'attr(02755,root,mailman)' \ + --file '/usr/lib/mailman/Mailman/MTA/SME.py' 'attr(02775,mailman,mailman)' \ + --dir '/var/spool/mailman/qfiles' 'attr(02775,mailman,mailman)' \ + --dir '/var/spool/mailman/qfiles/archive' 'attr(02770,mailman,mailman)' \ + --dir '/var/spool/mailman/qfiles/bounces' 'attr(02770,mailman,mailman)' \ + --dir '/var/spool/mailman/qfiles/commands' 'attr(02770,mailman,mailman)' \ + --dir '/var/spool/mailman/qfiles/in' 'attr(02770,mailman,mailman)' \ + --dir '/var/spool/mailman/qfiles/news' 'attr(02770,mailman,mailman)' \ + --dir '/var/spool/mailman/qfiles/out' 'attr(02770,mailman,mailman)' \ + --dir '/var/spool/mailman/qfiles/retry' 'attr(02770,mailman,mailman)' \ + --dir '/var/spool/mailman/qfiles/shunt' 'attr(02770,mailman,mailman)' \ + --dir '/var/spool/mailman/qfiles/virgin' 'attr(02770,mailman,mailman)' \ + $RPM_BUILD_ROOT > %{name}-%{version}-filelist + +sed -i -e '/\/usr\/lib\/mailman$/d ; /\/usr\/lib\/mailman\/bin$/d ; /\/usr\/lib\/mailman\/Mailman$/d ; /\/usr\/lib\/mailman\/Mailman\/MTA$/d ' %{name}-%{version}-filelist +#those will conflict with mailman rpm on sme10 +# --dir '/usr/lib/mailman' 'attr(02775,root,mailman)' \ +# --dir '/usr/lib/mailman/bin' 'attr(02775,root,mailman)' \ +# --dir '/usr/lib/mailman/Mailman' 'attr(02775,root,mailman)' \ +# --dir '/usr/lib/mailman/Mailman/MTA' 'attr(02775,root,mailman)' \ + +# SME10 to avoid error +#/usr/lib/rpm/brp-python-bytecompile +# fix for unwanted listed compiled python files +# those pyc and pyo gets added by default by genfilelist, so need to filtering them out when we disable byte compile. +#"/etc/e-smith/events/domain-create/templates2expand/usr/lib/mailman/Mailman/mm_cfg.pyc" +#"/etc/e-smith/events/domain-create/templates2expand/usr/lib/mailman/Mailman/mm_cfg.pyo" +#/etc/e-smith/events/domain-create/templates2expand/usr/lib/mailman/Mailman/mm_cfg.pyc +cat %{name}-%{version}-filelist |sed -r '/py[oc]"?$/d'>%{name}-%{version}-filelist.tmp +cat %{name}-%{version}-filelist.tmp> %{name}-%{version}-filelist + +%clean +rm -rf $RPM_BUILD_ROOT + +%files -f %{name}-%{version}-filelist + +%defattr(-,root,root) + +%pre +/sbin/e-smith/create-system-user mailman 41 \ + "Mailman user" /usr/lib/mailman /bin/false + +#mailman wants that the apache group appears before the www group in /etc/group [SME: 8056] +TEST=`egrep "^apache:" /etc/group -n| cut -f1 -d:` +TEST2=`egrep "^www:" /etc/group -n| cut -f1 -d:` +if [[ $TEST > $TEST2 ]]; then + WWW=$(sed -n '/^www/p' /etc/group) + sed -i '/^www/d' /etc/group + echo $WWW >> /etc/group +fi + +%post + +%preun + +%postun