>>Yes - are you using the python from sunfreeware.com ???
>>>>Yes, I am...it seemed the right thing to do...
Dont use the one from the sunfreeware site -- I hate to say that because historically the site has great software (I use it a lot myself.)
But in this case it is a bad idea. You can USE the GCC found there to build the following software. Get python and compile and install it from source.
First things first. Is your /var/ld/ld.config files set straight? Execute crle to find out (my current set-up is below)
bash-2.05$ crle
Configuration file [3]: /var/ld/ld.config
Default Library Path (ELF):
/usr/lib:/usr/local/lib:/usr/local/ssl/lib:/usr/local/apache2/lib:/usr/sfw/lib:/usr/local/BerkeleyDB.3.3/lib:/usr/local/mysql/lib:/usr/local/qt/lib
Trusted Directories (ELF): /usr/lib/secure (system default)
Command line:
crle -c /var/ld/ld.config -l
/usr/lib:/usr/local/lib:/usr/local/ssl/lib:/usr/local/apache2/lib:/usr/sfw/lib:/usr/local/BerkeleyDB.3.3/lib:/usr/local/mysql/lib:/usr/local/qt/lib
This will show you your current /var/ld/ld.config set-up; be VERY careful how you make adjustments or you will fry your system...
Also, you may want to set a few things in the /etc/profile (assuming you are using BASH) and log out and log back in to make them effective:
# Start of /etc/profile stuff
PATH=/usr/local/bin:/usr/bin:/usr/dt/bin:/opt/sdb/programs/bin:/usr/sfw/bin:/bin:/usr/ccs/bin:/etc:/usr/etc:/usr/local/X11/bin:/usr/sbin:/usr/openwin/bin:/us
r/local/etc:/usr/ucb
MANPATH=/usr/local/man:/usr/man:/usr/sfw/man:/usr/openwin/share/man:/usr/j2se/man/:/usr/local/jabber/man:/usr/local/pgsql/man
PAGER=less
EDITOR=nano
VISUAL=nano
export PAGER EDITOR VISUAL PATH MANPATH
# WARNING: Do not use the -fast option when compiling software;
# not unless ALL your software was created that way...
CC="gcc"
CFLAGS="-O3 -mcpu=ultrasparc"
CXX="g++"
CXXFLAGS="-O3 -mcpu=ultrasparc"
LDFLAGS="-L/usr/local/lib"
CPPFLAGS="-I/usr/local/include"
export CC CFLAGS CXX CXXFLAGS LDFLAGS CPPFLAGS
# End of /etc/profile stuff
Once your environment is set correctly - log out and log back in to enable it -- then go get Pythons tarball:
wget http://www.python.org/ftp/python/2.3.3/Python-2.3.3.tgz
gtar zxvf Python-2.3.3.tgz
cd Python-2.3.3
./configure && make ; pwd
su -
cd (to python source dir)
make install (as root, and should go into /usr/local/bin by default)
Get this version of mailman:
http://prdownloads.sourceforge.net/mailman/mailman-2.1.4.tgz?download
As YOUR normal (non-root ID) do these commands:
gtar zxvf mailman-2.1.4.tgz
cd mailman-2.1.4
./configure --help (make note of some possible options.)
(I use Postfix - so you may need to change some steps.)
You need to research what this option:
--with-mail-gid
needs to be set as. Under my postfix system is is set as the default 'mailman:mailman' - but see more on that later.
>From the INSTALL notes (mailman itself:
...
--with-mail-gid=<group-or-groups>
Specify an alternative group for running scripts via the
mail wrapper. <group-or-groups> can be a list of one or
more integer group ids or symbolic group names. The first
value in the list that resolves to an existing group is
used. By default, the value is the list
`mailman other mail daemon'.
This is highly system dependent and you must get this
right, because the group id is compiled into the mail
wrapper program for added security. On systems using
sendmail, the sendmail.cf configuration file designates
the group id of sendmail processes using the "DefaultUser"
option. (If commented out, it still may be indicating the
default...)
Check your MTA's documentation and configuration files to
find the right value for this switch.
...
If you are using Postfix - Do not set this - the deault is OK.
./configure --with-python=/usr/local/bin/python \
--with-cgi-gid=nobody --with-cgi-ext=.cgi
( I left off the following intentionally and will adrress them later:
--with-username
--with-groupname
On my system the default is acceptable. )
After the ./config step is done, run 'make' (as you the regular userid and NOT root.)
When that step is done DO NOT do anything else until you complete the next steps as ROOT.
Do these commands - more or less in order as ROOT:
- Add a new user called `mailman'.
- Add a new group called `mailman'.
- Create an installation directory - I made /usr/local/mailman
The default installation directory for Mailman 2.1 is
/usr/local/mailman.
Watch out if your site does something like mount /usr/local with
the nosuid option. This will break Mailman, which relies on
set-gid programs for its security.
cd /usr/local/mailman
chgrp mailman .
chmod a+rx,g+ws .
IMPORTANT: Add your "normal userid" - the one you just built mailman with - to the mailman group!
( You may need to log out and back in to enable this additional group membership. )
exit ( give up root priv. )
Do this as the normal UserID (not as root)
cd back to where ever you built mailman and run
make install
su - (become root again)
cd /usr/local/mailman
bin/check_perms -f
cp scripts/mailman /etc/init.d/mailman
Execute these commands:
cd /etc/rc0.d
ln -s /etc/init.d/mailman K12mailman
cd /etc/rc1.d
ln -s /etc/init.d/mailman K12mailman
cd /etc/rc2.d
ln -s /etc/init.d/mailman S98mailman
cd /etc/rc3.d
ln -s /etc/init.d/mailman S98mailman
cd /etc/rc4.d
ln -s /etc/init.d/mailman S98mailman
cd /etc/rc5.d
ln -s /etc/init.d/mailman S98mailman
cd /etc/rc6.d
ln -s /etc/init.d/mailman K12mailman
cd /etc/rcS.d
ln -s /etc/init.d/mailman K12mailman
( Ignore any spurious errors ... )
You can verify correct installation by executing:
cd /etc ; find . -name "*mailman*" -print
You should see something like this -
./init.d/mailman
./rc0.d/K12mailman
./rc1.d/K12mailman
./rc2.d/S98mailman
./rc3.d/S98mailman
./rc3.d/K12mailman
./rcS.d/K12mailman
Fix your mailman's crontab
crontab -e mailman
( in nano/pico just hit Crtl-R and read in file:
/usr/local/mailman/cron/crontab.in
Ctrl-X and save it...
While still root - make the correct changes to your Apache 2 httpd.conf
ScriptAlias /mailman/ $prefix/cgi-bin/
Alias /pipermail/ /usr/local/mailman/archives/public/
( also set appropriate access to the /pipermail/ path ...
mine looks like this:
<DirectoryMatch "/usr/local/apache2/htdocs|/usr/local/apache2/Sol3/www|/usr/local/apache2/BZ|/usr/local/mailman/archives/public/">
I know I know - one day I will some housekeeping ... )
Copy some files
cp /usr/local/mailman/icons/* /path/to/apache/icons
Now restart your web server.
/etc/init.d/apache2 restart
and start the mailman system:
bin/mailmanctl start
The only step(s) left now are setting up your Mail Server;
see the relevant README.mailserver file for info...
HTH/-Sx- =)
http://sneex.is.dreaming.org/
PS - I have been getting a lot of TIMEOUT after DATA error from the pythin mail server -- is their do not fragment flag set???
Maybe there is a bad router between me and that system - at any rate I dont get mails here all that well; so i can also be reached at
elohayelohim at yahoo.com
(Hebrew for GOD of Gods.)