1 # Copyright 1999-2004 Gentoo Foundation
2 # Distributed under the terms of the GNU General Public License v2
3 # $Header: /var/cvsroot/gentoo-x86/net-mail/mailman/files/README.gentoo-r3,v 1.2 2008/11/14 11:07:55 hanno Exp $
5 Follow these instructions to finish setting up mailman. This file and the
6 original ebuild were tweaked by me <lamer@gentoo.org> but were graciously
7 submitted by Joby Walker (YOU RULE!)
8 2003 Jul 09: updated by Jesus Perez and re-tweaked by me <raker@gentoo.org>
11 Please view the documentation on Mailman at: http://www.list.org/
13 This documentation assumes you're using the default gentoo path
14 (/usr/lib/mailman/), if you've changed it with MAILMAN_PREFIX, adjust them
17 1) If this is your first time installing mailman, after your "emerge mailman",
18 you need to add -D MAILMAN to /etc/conf.d/apache or /etc/conf.d/apache2 and restart
21 2) In your /etc/conf.d/apache (for apache 1.x)
22 or /etc/conf.d/apache2 (for apache 2.x)
23 file add the additional option to the
24 APACHE_OPTS or APACHE2_OPTS variable:
28 3) Make sure mailman is a part of the cron group
30 4) This must be done as user mailman:
40 Create the site password:
49 5) Change back to root:
53 (Postfix users: read the notes at the end of this file before you continue)
54 Add this to /etc/mail/aliases (and see point 9 for notes):
55 mailman: "|/usr/lib/mailman/mail/mailman post mailman"
56 mailman-admin: "|/usr/lib/mailman/mail/mailman admin mailman"
57 mailman-bounces: "|/usr/lib/mailman/mail/mailman bounces mailman"
58 mailman-confirm: "|/usr/lib/mailman/mail/mailman confirm mailman"
59 mailman-join: "|/usr/lib/mailman/mail/mailman join mailman"
60 mailman-leave: "|/usr/lib/mailman/mail/mailman leave mailman"
61 mailman-owner: "|/usr/lib/mailman/mail/mailman owner mailman"
62 mailman-request: "|/usr/lib/mailman/mail/mailman request mailman"
63 mailman-subscribe: "|/usr/lib/mailman/mail/mailman subscribe mailman"
64 mailman-unsubscribe: "|/usr/lib/mailman/mail/mailman unsubscribe mailman"
66 For courier, the aliases have to go to /etc/courier/aliases and you have to skip
69 Run newaliases (only if you use sendmail).
73 6) Start the mailman daemon:
75 /etc/init.d/mailman start
77 and add it to default runlevel (optional but recommended):
79 rc-update add mailman default
81 7) For each list created (either with web interface or with bin/newlist)
82 this must be added to /etc/mail/aliases (see smrsh notes below)
83 replace <list-name> with the name of the list:
85 <list-name>: "|/usr/lib/mailman/mail/mailman post <list-name>"
86 <list-name>-admin: "|/usr/lib/mailman/mail/mailman admin <list-name>"
87 <list-name>-bounces: "|/usr/lib/mailman/mail/mailman bounces <list-name>"
88 <list-name>-confirm: "|/usr/lib/mailman/mail/mailman confirm <list-name>"
89 <list-name>-join: "|/usr/lib/mailman/mail/mailman join <list-name>"
90 <list-name>-leave: "|/usr/lib/mailman/mail/mailman leave <list-name>"
91 <list-name>-owner: "|/usr/lib/mailman/mail/mailman owner <list-name>"
92 <list-name>-request: "|/usr/lib/mailman/mail/mailman request <list-name>"
93 <list-name>-subscribe: "|/usr/lib/mailman/mail/mailman subscribe <list-name>"
94 <list-name>-unsubscribe: "|/usr/lib/mailman/mail/mailman unsubscribe <list-name>"
96 For courier, the aliases have to go to /etc/courier/aliases and you have to skip
105 (if you use sendmail, you are surely using srmsh) you must note that
106 sendmail won't run any program outside of EBINDIR. I tried to change
107 EBINDIR using,define(`confEBINDIR', `/usr/lib/mailman/mail')dnl in
108 sendmail.mc but it didn't work, so mailman must be placed in EBINDIR,
109 which in Gentoo is /usr/adm/sm.bin, so you must run as root:
111 ln -s /usr/lib/mailman/mail/mailman /usr/adm/sm.bin/mailman
113 And the lines in /etc/mail/aliases which refer to
114 /usr/lib/mailman/mail/mailman must be changed to mailman:
116 <list-name>: "|mailman post <list-name>"
117 <list-name>-admin: "|mailman admin <list-name>"
118 <list-name>-bounces: "|mailman bounces <list-name>"
119 <list-name>-confirm: "|mailman confirm <list-name>"
120 <list-name>-join: "|mailman join <list-name>"
121 <list-name>-leave: "|mailman leave <list-name>"
122 <list-name>-owner: "|mailman owner <list-name>"
123 <list-name>-request: "|mailman request <list-name>"
124 <list-name>-subscribe: "|mailman subscribe <list-name>"
125 <list-name>-unsubscribe: "|mailman unsubscribe <list-name>"
129 You can write an exim stanza for the router and transport that looks something
130 like (Derived from, and in part taken from cpanel):
132 mailman_virtual_router:
134 require_files = /var/lib/mailman/lists/${lc::$local_part}/config.pck
135 local_part_suffix_optional
136 local_part_suffix = -admin : \
137 -bounces : -bounces+* : \
138 -confirm : -confirm+* : \
140 -owner : -request : \
141 -subscribe : -unsubscribe
142 transport = mailman_virtual_transport
144 mailman_virtual_transport:
146 command = /usr/lib/mailman/mail/mailman \
147 '${if def:local_part_suffix \
148 {${sg{$local_part_suffix}{-(\\w+)(\\+.*)?}{\$1}}} \
151 current_directory = /usr/lib/mailman
152 home_directory = /usr/lib/mailman
156 Note the double colon in the require files. See
157 http://wiki.exim.org/FAQ/General_Debugging/Q0060 for more information.
159 This should be modified if you're using the vhosts USE flag, specifically you
160 need to modify the location of the config.pck file, to be
161 ${lc::$local_part}-${lc::$domain} instead of simply ${lc::$local_part}, and for the
162 transport you need to change the last part of the command in the same fashion.
164 Other Helpful things to know...
165 -------------------------------
166 run "bin/check_perms -f" from the root mailman directory
167 (/usr/lib/mailman) to check and fix permission problems.
169 The INSTALL file is located in /usr/share/doc/mailman-$VERSION/
173 If you're using Postfix, don't manually change your /etc/mail/aliases
174 file, as described above. Instead, follow these instructions:
176 http://list.org/mailman-install/node13.html
178 This will set up Mailman and Postfix to automatically generate the new
179 aliases when you create new lists. It will also make sure that Postfix
180 uses the correct group ID when it's talking to Mailman, otherwise you
181 will get security errors from Mailman.