I want all mails sent to the list to come from the list's email address...
But, in this case, if the user forgets to sign their name at the
bottom of their mail body, effectively the mail to the list is
Is there a way to add the user name (or email address) to the top of
each mail so that the mails have the name of the sender, while the
mail itself comes from the list address?
I have looked high and low for an answer, but noone seems to have the solution.
I received the following error this morning. So I rerun configure again with the following command: ./configure --with-cgi-id=apache --prefix=/var/mailman. I'm still getting the same error. Is there any place that I can look for so that I can debug this problem better? Perhaps, looking at the config history file or something. Any other places that I can check the cause of this error?
"Mailman CGI error!!!
The Mailman CGI wrapper encountered a fatal error. This entry is being stored in your syslog:
Group mismatch error. Mailman expected the CGI
wrapper script to be executed as group "nobody", but
the system's web server executed the CGI script as
group "apache". Try tweaking the web server to run the
script as group "nobody", or re-run configure,
providing the command line option `--with-cgi-gid=apache'."
Hi - I have searched FAQ and archives to find an answer. Hoping you can
I have a new list (with previously imported addresses) for announcements
only, and wish these announcements to be received immediately.
I set the defaults to allow non-digest and to not allow digest.
I wish to send out announcements in html, and so wish to make the
default for new subscribers be MIME. While I see a setting under Digest
Options (MIME_is_Default_Digest), I don't see any equivalent option
under Non-Digest Options... and new subscribers continue to come in as
In order to avoid having to manually change this option for each
existing subscriber, is there a way to force all existing subscribers to
receive MIME in Non-Digest mode?
If not, is there a way to force all NEW subscribers to be enrolled with
MIME as their default?
Also, is there a way to "lock" the MIME switch on, so that users who try
to change their option to plain text will be prevented from doing so?
I am running mailman on one machine which hosts several different
virtual hosts. However what I configured as the "mailman" virtual host
is "lists.myhost.com". Everything works fine (mail delivery, web site
url management) except for one thing: in the web admin url, it's
rewriting the links to "myhost.com/..." instead of "lists.myhost.com".
This is causing HTTP posts when doing some admin changes to fail as it's
hitting the "myhost.com" host instead of "lists.myhost.com".
in my mm_cfg.py:
# The name of the list Mailman uses to send password reminders
# and similar. Don't change if you want mailman-owner to be
# a valid local part.
MAILMAN_SITE_LIST = 'mailman'
# If you change these, you have to configure your http server
# accordingly (Alias and ScriptAlias directives in most httpds)
#DEFAULT_URL_PATTERN = 'http://%s/cgi-bin/mailman/'
DEFAULT_URL_PATTERN = 'http://%s/'
PRIVATE_ARCHIVE_URL = '/cgi-bin/mailman/private'
IMAGE_LOGOS = '/images/mailman/'
# Default domain for email addresses of newly created MLs
DEFAULT_EMAIL_HOST = 'myhost.com'
# Default host for web interface of newly created MLs
DEFAULT_URL_HOST = 'lists.myhost.com'
# Required when setting any of its arguments.
mailman virtual host file
CustomLog /var/log/apache2/lists-access.log combined
Options Indexes FollowSymLinks
Alias /pipermail/ /var/lib/mailman/archives/public/
Alias /images/mailman/ /usr/share/images/mailman/
ScriptAlias /admin /usr/lib/cgi-bin/mailman/admin
ScriptAlias /admindb /usr/lib/cgi-bin/mailman/admindb
ScriptAlias /confirm /usr/lib/cgi-bin/mailman/confirm
ScriptAlias /create /usr/lib/cgi-bin/mailman/create
ScriptAlias /edithtml /usr/lib/cgi-bin/mailman/edithtml
ScriptAlias /listinfo /usr/lib/cgi-bin/mailman/listinfo
ScriptAlias /options /usr/lib/cgi-bin/mailman/options
ScriptAlias /private /usr/lib/cgi-bin/mailman/private
ScriptAlias /rmlist /usr/lib/cgi-bin/mailman/rmlist
ScriptAlias /roster /usr/lib/cgi-bin/mailman/roster
ScriptAlias /subscribe /usr/lib/cgi-bin/mailman/subscribe
ScriptAlias /mailman/ /usr/lib/cgi-bin/mailman/
I am trying to get postfix working with mailman and I just can’t seem to get
it to work.
Essentially what I want is this:
My mailing domain is students.wesleyseminary.edu.
I want messages going to allstudents(a)students.wesleyseminary.edu to go to a
mailman managed distribution list that sends to the other accounts on the
Any help on this? Thanks.
Here is what I have so far:
alias_maps = hash:/var/lib/mailman/data/aliases,hash:/etc/mail/aliases
broken_sasl_auth_clients = yes
command_directory = /usr/sbin
config_directory = /etc/postfix
daemon_directory = /usr/lib64/postfix
data_directory = /var/lib/postfix
debug_peer_level = 2
default_destination_concurrency_limit = 20
home_mailbox = .Maildir/
html_directory = /usr/share/doc/postfix-2.6.6/html
inet_interfaces = all
local_destination_concurrency_limit = 2
local_recipient_maps = proxy:unix:passwd.byname $alias_maps
local_transport = virtual
mail_owner = postfix
mailq_path = /usr/bin/mailq
manpage_directory = /usr/share/man
mydomain = students.wesleyseminary.edu
myhostname = wts-zimbra.wesleysem.edu
mynetworks_style = subnet
newaliases_path = /usr/bin/newaliases
owner_request_special = no
queue_directory = /var/spool/postfix
readme_directory = /usr/share/doc/postfix-2.6.6/readme
recipient_delimiter = +
sample_directory = /etc/postfix
sendmail_path = /usr/sbin/sendmail
setgid_group = postdrop
smtp_tls_note_starttls_offer = yes
smtp_use_tls = yes
smtpd_banner = students.wesleyseminary.edu ESMTP $mail_name ($mail_version)
smtpd_recipient_restrictions = permit_sasl_authenticated,
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_tls_CAfile = /etc/postfix/cacert.pem
smtpd_tls_cert_file = /etc/postfix/newcert.pem
smtpd_tls_key_file = /etc/postfix/newkey.pem
smtpd_tls_loglevel = 3
smtpd_tls_received_header = yes
smtpd_tls_session_cache_timeout = 3600s
smtpd_use_tls = yes
tls_random_source = dev:/dev/urandom
unknown_local_recipient_reject_code = 550
virtual_alias_maps = hash:/etc/postfix/old_students.cf
virtual_gid_maps = static:1000
virtual_mailbox_base = /
virtual_mailbox_domains = /etc/postfix/virtual_domains.cf
virtual_mailbox_maps = ldap:/etc/postfix/ldap-maps.cf
virtual_minimum_uid = 1000
virtual_uid_maps = static:1000
This is the mailmain’s alias file referenced in alias_maps:
# This file is generated by Mailman, and is kept in sync with the
# binary hash file aliases.db. YOU SHOULD NOT MANUALLY EDIT THIS FILE
# unless you know what you're doing, and can keep the two files properly
# in sync. If you screw it up, you're on your own.
# The ultimate loop stopper address
# STANZA START: mailman
# CREATED: Thu Sep 2 14:05:34 2010
mailman: "|/usr/lib64/mailman/mail/mailman post mailman"
mailman-admin: "|/usr/lib64/mailman/mail/mailman admin mailman"
mailman-bounces: "|/usr/lib64/mailman/mail/mailman bounces mailman"
mailman-confirm: "|/usr/lib64/mailman/mail/mailman confirm mailman"
mailman-join: "|/usr/lib64/mailman/mail/mailman join mailman"
mailman-leave: "|/usr/lib64/mailman/mail/mailman leave mailman"
mailman-owner: "|/usr/lib64/mailman/mail/mailman owner mailman"
mailman-request: "|/usr/lib64/mailman/mail/mailman request mailman"
mailman-subscribe: "|/usr/lib64/mailman/mail/mailman subscribe mailman"
mailman-unsubscribe: "|/usr/lib64/mailman/mail/mailman unsubscribe mailman"
# STANZA END: mailman
# STANZA START: allstudents
# CREATED: Thu Sep 2 14:05:34 2010
allstudents: "|/usr/lib64/mailman/mail/mailman post allstudents"
allstudents-admin: "|/usr/lib64/mailman/mail/mailman admin
allstudents-bounces: "|/usr/lib64/mailman/mail/mailman bounces
allstudents-confirm: "|/usr/lib64/mailman/mail/mailman confirm
allstudents-join: "|/usr/lib64/mailman/mail/mailman join allstudents"
allstudents-leave: "|/usr/lib64/mailman/mail/mailman leave
allstudents-owner: "|/usr/lib64/mailman/mail/mailman owner
allstudents-request: "|/usr/lib64/mailman/mail/mailman request
allstudents-subscribe: "|/usr/lib64/mailman/mail/mailman subscribe
allstudents-unsubscribe: "|/usr/lib64/mailman/mail/mailman unsubscribe
# STANZA END: allstudents
And this is my mailman’s mm_cfg.py file:
# -*- python -*-
# Copyright (C) 1998,1999,2000,2001,2002 by the Free Software Foundation,
# 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
"""This module contains your site-specific settings.
>From a brand new 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. Mailman's installation procedure will never overwrite your mm_cfg.py
The complete set of distributed defaults, with documentation, are in the
Defaults.py. In mm_cfg.py, override only those you want to change, after
from Defaults import *
line (see below).
Note that these are just default settings; many can be overridden via the
administrator and user interfaces on a per-list or per-user basis.
# Here's where we get the distributed defaults.
from Defaults import *
# Put YOUR site-specific settings below this line.
DEFAULT_EMAIL_HOST = 'students.wesleyseminary.edu'
DEFAULT_URL_HOST = 'students.wesleyseminary.edu'
MTA = "Postfix"
POSTFIX_STYLE_VIRTUAL_DOMAINS = ['wesleyministrynetwork.com', '
I recently discovered that all of my moderated posts have been failing,
most likely because my mailman version was older than my python version.
This is the error:
Sep 29 20:52:12 2010 (5588) Uncaught runner exception: unbound method
reason_notice() must be called with ModeratedMemberPost instance as
first argument (got nothing instead)
Sep 29 20:52:12 2010 (5588) Traceback (most recent call last):
File "/usr/lib/mailman/Mailman/Queue/Runner.py", line 111, in _oneloop
File "/usr/lib/mailman/Mailman/Queue/Runner.py", line 169, in _onefile
'Dequeuing message destined for missing list: %s',
File "/usr/lib/mailman/Mailman/Queue/IncomingRunner.py", line 130, in
more = self._dopipeline(mlist, msg, msgdata, pipeline)
File "/usr/lib/mailman/Mailman/Queue/IncomingRunner.py", line 153, in
sys.modules[modname].process(mlist, msg, msgdata)
File "/usr/lib/mailman/Mailman/Handlers/Moderate.py", line 67, in process
msgdata['sender'] = sender
File "/usr/lib/mailman/Mailman/Handlers/Hold.py", line 212, in
TypeError: unbound method reason_notice() must be called with
ModeratedMemberPost instance as first argument (got nothing instead)
Sep 29 20:52:12 2010 (5588) SHUNTING:
My python version is 2.6.2, and I've been very careful to be sure that
older pythons are not in the PATH.
The first thing I did was update mailman to 2.1.14, which seemed to go
just fine, but I still see this error. The timestamps of all the
executables are current, and were overwritten by the new versions. The
"version' command reports 2.1.14.
I see now that the actual line of code changed after installing the new
version of mailman. Where it used to be:
reason = Utils.wrap(exc.reason_notice())
it's now ...
So it would appear that I need to get python to recompile all the pyc
files, is that correct? How do I do that? I tried touching the .py
files to make them newer ...
Sorry, not a python guru ...
Morris Jones, Monrovia, CA
For some reason when I moved the mailman configuration a few months ago
I had to add /etc/mailman/aliases to the alias_maps e.g.,:
alias_maps = hash:/etc/aliases
whereas on the old installation I didn't. Since this is on a server
that can fail over to another server that has the IMAP configuration
doesn't need /etc/mailman/aliases I would like to see if there is a
workaround so that they both have the same postfix configuration. Sorry
if this is more of a postfix question but I didn't get an answer on
their list yet.
Basically trying to get the /etc/postfix/main.cf files identical so I
don't have to manage the differences and bounce postfix on failover.
I'd like to have my members list who choose to receive a digest mail to
receive similar to the digest of this list i.e. with summary page and
attachment emails for each topic.
I looked at 'digest options' but cannot find anything to enable this option.
Where can I set it up?
i installed mailman and i think it a good solution for me
however, when i send emails to the default mail address none of subscribers
gets the email.
when i check the inbox of that mail i dont see the emails i sent there - i
guess mailman pull them.
im starting with mailman - it looks like a good solution for me and my group
however, i have it installed, subscribed myself to the list and my friend
but i dont get emails from the system
not a notification of subscription mail and not test mail i sent to the main
mailman email address i configured
please advice !!!
> Send Mailman-Users mailing list submissions to
> To subscribe or unsubscribe via the World Wide Web, visit
> or, via email, send a message with subject or body 'help' to
> You can reach the person managing the list at
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of Mailman-Users digest..."
> Today's Topics:
> 1. 'ack' doesn't work when sending as list rather than sender?
> (Stephen J. Turnbull)
> 2. Re: 'ack' doesn't work when sending as list rather
> thansender? (Mark Sapiro)
> ---------- הודעה שהועברה ----------
> From: "Stephen J. Turnbull" <stephen(a)xemacs.org>
> To: Christopher Adams <adamsca(a)gmail.com>
> Date: Wed, 29 Sep 2010 10:13:20 +0900
> Subject: [Mailman-Users] 'ack' doesn't work when sending as list rather
> than sender?
> Christopher Adams writes:
> > I just figured out that a sender can only get an acknowledgment with
> > 'ack' checked if the list is sending as the sender as opposed to list
> > name. Is there anyway that a sender can get an acknowledgment even if
> > the list is set up this way?
> I believe that the list can be set to acknowledge receipt to the
> If you want the poster to get acks from each recipient individually,
> it can be done, but AFAIK (a) you have to modify the Mailman code and
> (b) bounce processing becomes the responsibility of the poster,
> because "sender" is where many (most) software will send error
> notices, regardless of other settings.
> ---------- הודעה שהועברה ----------
> From: Mark Sapiro <mark(a)msapiro.net>
> To: Christopher Adams <adamsca(a)gmail.com>, mailman-users(a)python.org
> Date: Tue, 28 Sep 2010 19:57:51 -0700
> Subject: Re: [Mailman-Users] 'ack' doesn't work when sending as list rather
> Christopher Adams wrote:
> >I just figured out that a sender can only get an acknowledgment with
> >'ack' checked if the list is sending as the sender as opposed to list
> >name. Is there anyway that a sender can get an acknowledgment even if
> >the list is set up this way?
> By "sending as ... list name" I'm assuming you mean the list is
> anonymous, i.e., General Options -> anonymous_list = Yes.
> The issue here is the CookHeaders.py handler saves the original From:
> or other sender for use by the Acknowledge.py handler in sending the
> 'ack', but for an anonymous lists, the Cleanse.py handler which
> removes all the sender information comes ahead of CookHeaders in the
> I actually broke this inadvertently in Mailman 2.1.13, and now I'll
> have to figure out what to do about that. The issue is that for
> anonymous lists, Cleanse removes the From:, Reply-To: and Sender:
> headers from the post. This causes the get_sender() method used by
> CookHeaders to get the original sender to fall back to the Unix from
> (envelope sender). The issue is that in 2.1.13, I "improved"
> anonymizing by munging the Unix from in anonymized posts to the list
> address, so now CookHeaders fets the list address as the sender when
> saving the original sender, and since this is generally not a list
> member with 'ack' true, no ack is sent.
> I suppose the easiest fix is to have Cleanse rather than CookHeaders
> save the original sender. One could also reorder the pipeline to put
> Cleanse after CookHeaders, but I'm not sure at this point if there
> would be unintended consequences from that.
> I'll follow up with a patch when I work this out.
> Mark Sapiro <mark(a)msapiro.net> The highway is for gamblers,
> San Francisco Bay Area, California better use your sense - B. Dylan
> Mailman-Users mailing list
> Mailman FAQ: http://wiki.list.org/x/AgA3
> Searchable Archives: