23/Sep/2002 tested by Redhat 7.2
This is GNU Mailman, a mailing list management system distributed under the GNU Public License (GPL). The name of this project is spelled "Mailman" with a leading capital `M' but with a lower case second `m'.# rpm -ihv mailman-2.0.11-1.i386.rpm Preparing... ########################################### [100%] 1:mailman ########################################### [100%]
# /var/mailman/bin/mmsitepass New Password: Again to confirm password: Password changed.
# -*- 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
##############################################################
# Here's where we override shipped defaults with settings #
# suitable for the RPM package. #
MAILMAN_UID = pwd.getpwnam('mailman')[2]
MAILMAN_GID = grp.getgrnam('mailman')[2]
LOG_DIR = '/var/log/mailman'
QUEUE_DIR = '/var/spool/mailman/qfiles'
##############################################################
# Put YOUR site-specific configuration below, in mm_cfg.py . #
# See Defaults.py for explanations of the values. #
# DEFAULT_HOST_NAME = 'localhost.localdomain'
DEFAULT_HOST_NAME = 'www.yourhost.bt'
DEFAULT_URL = 'http://%s/mailman/' % DEFAULT_HOST_NAME
MAILMAN_OWNER = 'mailman-owner@%s' % DEFAULT_HOST_NAME
# 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.
... # SMTP host and port, when DELIVERY_MODULE is 'SMTPDirect' SMTPHOST = 'www.yourhost.bt' SMTPPORT = 25 # default from smtplib ...
Modify the sendmail configuration to ensure that it is running and accepting connections from the outside world (to ensure that it runs, set "DAEMON=yes" in /etc/sysconfig/sendmail, ensuring that it accepts connections from the outside world may require modifying /etc/mail/sendmail.mc and regenerating sendmail.cf)
... Include conf/httpd-mailman.conf
# /var/mailman/bin/newlist Enter the name of the list: hogelist Enter the email of the person running the list: hoge@yourhost.bt Initial hogelist password: Entry for aliases file: ## hogelist mailing list ## created: 13-Sep-2002 root hogelist: "|/var/mailman/mail/wrapper post hogelist" hogelist-admin: "|/var/mailman/mail/wrapper mailowner hogelist" hogelist-request: "|/var/mailman/mail/wrapper mailcmd hogelist" hogelist-owner: hogelist-admin Hit enter to continue with hogelist owner notification...
... ## hogelist mailing list ## created: 13-Sep-2002 root hogelist: "|/var/mailman/mail/wrapper post hogelist" hogelist-admin: "|/var/mailman/mail/wrapper mailowner hogelist" hogelist-request: "|/var/mailman/mail/wrapper mailcmd hogelist" hogelist-owner: hogelist-admin
# newaliases /etc/aliases: 46 aliases, longest 47 bytes, 632 bytes total
http://www.yourhost.bt/mailman/admin
http://www.yourhost.bt/mailman/listinfo
content-type: multipart x-mmoriginal-content-type: multipart
# rpm -ihv --force --nodeps \ namazu-devel-2.0.10-4.i386.rpm \ namazu-cgi-2.0.10-4.i386.rpm \ namazu-2.0.10-4.i386.rpm \ perl-File-MMagic-1.06-2.i386.rpm
#
# -*- Perl -*-
#
# This is free software with ABSOLUTELY NO WARRANTY.
#
# 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 versions 2, 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
#
package pipermail;
use strict;
require 'util.pl';
require 'gfilter.pl';
require 'html.pl';
require 'mailnews.pl';
#
# This pattern specifies pipermail's file names.
#
my $PIPERMAIL_MESSAGE_FILE = '\d{6}\.html';
sub mediatype() {
return ('text/html; x-type=pipermail');
}
sub status() {
return 'yes';
}
sub recursive() {
return 0;
}
sub pre_codeconv() {
return 1;
}
sub post_codeconv () {
return 0;
}
sub add_magic ($) {
return;
}
sub filter ($$$$$) {
my ($orig_cfile, $contref, $weighted_str, $headings, $fields)
= @_;
my $cfile = defined $orig_cfile ? $$orig_cfile : '';
util::vprint("Processing pipermail file ...\n");
unless ($cfile =~ /($PIPERMAIL_MESSAGE_FILE)$/o)
{
return "is Pipermail's index file! skipped."; # error
}
pipermail_filter($contref, $weighted_str, $fields);
html::html_filter($contref, $weighted_str, $fields, $headings);
$$contref =~ s/^\s+//;
mailnews::uuencode_filter($contref);
mailnews::mailnews_filter($contref, $weighted_str, $fields);
mailnews::mailnews_citation_filter($contref, $weighted_str);
gfilter::line_adjust_filter($contref);
gfilter::line_adjust_filter($weighted_str);
gfilter::white_space_adjust_filter($contref);
gfilter::show_filter_debug_info($contref, $weighted_str,
$fields, $headings);
return undef;
}
# Assume a normal message files by pipermail (mailman edition)
sub pipermail_filter ($$) {
my ($contref, $weighted_str) = @_;
$$contref =~ s/<!--endarticle-->.*//s;
$$contref =~ s/(<\/H1>).*<!--beginarticle-->/$1/s;
}
1;
# mkdir /var/mailman/namazu
#!/bin/csh
# setenv LANG en
cd /var/mailman/namazu
/usr/bin/mknmz --media-type='text/html; x-type=pipermail' \
/var/mailman/archives/public/*
# chmod 755 make_namazu # ./make_namazu
# cp /var/www/cgi-bin/namazu.cgi /var/mailman/cgi-bin/namazu.cgi
Index /var/mailman/namazu Template /var/mailman/namazu Replace /var/mailman/archives/public http://www.yourhost.bt/pipermail/
0 3 * * * /var/mailman/namazu/make_namazu