Great Circle Associates Majordomo-Users
(July 1995)
 

Indexed By Date: [Previous] [Next] Indexed By Thread: [Previous] [Next]

Subject: How-To: Majordomo & Linux
From: Robb Shecter <rshecter @ newfac . ed . umuc . edu>
Date: Wed, 19 Jul 1995 08:59:47 +0200 (MET DST)
To: Keith Reel <kreel @ olivet . edu>
Cc: majordomo-users @ GreatCircle . COM
In-reply-to: <Pine.SOL.3.91.950718150615.12958C-100000@tiger>

(... problems w/ MD and Linux deleted ...)

I'm running Linux 1.2.x, perl 4.036, and MD 1.93.  It works perfectly.  
There are so many Linux users here, this should be in the faq!  At any 
rate, to help everyone out, here are the directory entries for the 
majordomo directory, plus the Makefile for compiling wrapper.  Hopefully, 
this should answer all the (repeated) questions!


/usr/local:
drwxrwxr-x   7 majordom majordom     1024 Jul 19 08:41 majordomo/


/usr/local/majordomo:
total 286
-rw-rw-r--   1 majordom majordom    16563 Jul 19 08:41 Log
drwxrwx---   2 majordom majordom     1024 Jun 14 10:50 Tools/
drwxrwx---   2 majordom majordom     1024 Jun 14 10:24 archive/
drwxrwx---   2 majordom majordom     1024 Jun 30 15:05 bin/
-rwxr-x---   1 majordom majordom     2615 Jun 14 10:50 bounce-remind*
-rw-r-----   1 majordom majordom    43737 Jun 14 10:50 config_parse.pl
-rwxr-x---   1 majordom majordom    11320 Jun 14 10:50 digest*
-rw-rw-r--   1 majordom majordom      356 Jun 26 14:58 footer
drwxrwxr-x   8 majordom majordom     1024 Jul 19 08:41 lists/
-rwxr-x---   1 majordom majordom    45625 Jul 11 10:41 majordomo*
-rw-rw-r--   1 majordom majordom     3678 Jun 30 14:32 majordomo.cf
-rwxr-x---   1 majordom majordom    42524 Jun 26 15:55 majordomo.old*
-rwxr-x---   1 majordom majordom    45528 Jul 10 18:01 majordomo.old2*
-rw-r-----   1 majordom majordom    14430 Jul 11 10:48 majordomo.pl
-rw-r-----   1 majordom majordom      141 Jun 14 10:50 majordomo_version.pl
drwxrwx---   4 majordom majordom     1024 Jun 14 10:50 man/
-rwxr-x---   1 majordom majordom     2153 Jun 14 10:50 new-list*
-rw-rw-rw-   1 rshecter users        3462 Jul 10 17:49 put-patch
-rwxr-x---   1 majordom majordom     3024 Jun 14 10:50 request-answer*
-rwxrwx---   1 majordom majordom    12872 Jun 22 18:01 resend*
-rw-------   1 majordom majordom     3742 Jun 14 10:50 resend.README
-rw-r-----   1 majordom majordom     6183 Jun 14 10:50 shlock.pl
-rwxr-x---   1 majordom majordom      131 Jun 14 10:50 test*
-rwsr-xr-x   1 root     majordom    14233 Jun 14 11:11 wrapper*




The Makefile:

# $Source: /sources/cvsrepos/majordomo/Makefile,v $
# $Revision: 1.21.2.2.2.8 $
# $Date: 1995/01/07 18:06:48 $
# $Author: rouilj $
# $State: Exp $
# 
# $Header: /sources/cvsrepos/majordomo/Makefile,v 1.21.2.2.2.8 1995/01/07 18:06:48 rouilj Exp $ # 
# $Locker:  $
# 


# this makefile installs the following structure for the bsd universe:
# (root is W_BIN below)
#    root -+--          -- actual majordomo scripts, libraries etc 
#	   +-- Tools    -- tools like archive
#	   +-- bin      -- user level tools, approve, bounce etc
#	   +-- man      -- man pages
#

# This is where "wrapper" looks for the programs it's supposed to run.
W_BIN=/usr/local/majordomo

# This is the environment that (along with LOGNAME and USER inherited from the
# parent process, and without the leading "W_" in the variable names) gets
# passed to processes run by "wrapper"

W_PATH=/bin:/usr/bin:/usr/sbin
W_HOME=${W_BIN}
W_SHELL=/bin/csh
W_MAJORDOMO_CF=${W_BIN}/majordomo.cf

# Use these settings for BSD-based systems, including SunOS 4.x.  If you're
# using a POSIX-compliant system (including SysV and BSDI), comment these
# settings out, and uncomment the POSIX settings below.
#W_USER=daemon
#W_GROUP=majordom
#W_CHOWN=${W_USER}.${W_GROUP}
#W_CHMOD=6755
#WRAPPER_FLAGS = -DBIN=\"${W_BIN}\" -DPATH=\"PATH=${W_PATH}\"	\
#	-DHOME=\"HOME=${W_HOME}\" -DSHELL=\"SHELL=${W_SHELL}\"	\
#	-DMAJORDOMO_CF=\"MAJORDOMO_CF=${W_MAJORDOMO_CF}\"

# If you're using a POSIX-compliant system, uncomment this set of parameters
# and comment out the BSD settings above.
# *** (Robb) Note that W_UID and W_GID must be the uid and gid of majordom
# ***        as it lives on the particular system.
#
W_UID = 15
W_GID = 16
W_CHOWN=root
W_CHMOD=4755
WRAPPER_FLAGS = -DBIN=\"${W_BIN}\" -DPATH=\"PATH=${W_PATH}\" \
	-DHOME=\"HOME=${W_HOME}\" -DSHELL=\"SHELL=${W_SHELL}\" \
	-DMAJORDOMO_CF=\"MAJORDOMO_CF=${W_MAJORDOMO_CF}\"       \
	-DPOSIX_UID=${W_UID} -DPOSIX_GID=${W_GID} -DSETGROUP

# YOU SHOULDN'T HAVE TO CHANGE ANYTHING BELOW THIS LINE.
# For those stupid machines that try to use csh
SHELL = /bin/sh

default: wrapper

install: install-scripts install-man
	@echo "Run 'make install-wrapper' as root"

install-wrapper: wrapper
	cp wrapper       $(W_BIN)/wrapper
	chown ${W_CHOWN} $(W_BIN)/wrapper
	chmod ${W_CHMOD} $(W_BIN)/wrapper

install-scripts: install-cf
	@-test -d $(W_BIN)/Tools || mkdir $(W_BIN)/Tools
	cp contrib/archive2.pl  $(W_BIN)/Tools
	@-test -d $(W_BIN)/bin || mkdir $(W_BIN)/bin
	cp approve bounce medit $(W_BIN)/bin
	cp bounce-remind config_parse.pl majordomo \
	   majordomo.pl majordomo_version.pl\
	   new-list request-answer resend resend.README shlock.pl \
	   digest/digest test \
	   $(W_BIN)

# the install.cf target will install the sample config file in the
# proper place unless a majordomo.cf file exists in whcih case the
# majordomo.cf file will be used.
install-cf:
	(test ! -f majordomo.cf  && echo "using sample.cf" && \
		cp sample.cf $(W_BIN)/majordomo.cf; exit 0)
	(test -f majordomo.cf  && echo "using majordomo.cf" && \
		cp majordomo.cf $(W_BIN)/majordomo.cf; exit 0) 

install-man:
	@-test -d $(W_BIN)/man || mkdir $(W_BIN)/man
	@-test -d $(W_BIN)/man/man1 || mkdir $(W_BIN)/man/man1
	@-test -d $(W_BIN)/man/man8 || mkdir $(W_BIN)/man/man8
	cp Doc/man/approve.1 $(W_BIN)/man/man1
	cp Doc/man/majordomo.8 $(W_BIN)/man/man8

install-shared: install-wrapper-shared install-scripts

install-wrapper-shared: wrapper
	@test -d $(W_BIN)/wrappers || mkdir $(W_BIN)/wrappers
	@test -d $(W_BIN)/wrappers/$(W_GROUP) || mkdir $(W_BIN)/wrappers/$(W_GROUP)
	strip wrapper
	cp wrapper $(W_BIN)/wrappers/$(W_GROUP)/wrapper.`arch`
	cp wrapper.sh $(W_BIN)/wrappers/$(W_GROUP)/wrapper
	@echo 'run make permissions-shared' as root to set permissions

install-archive:
	cp contrib/archive.pl $(W_BIN)/archive 

install-archive2:
	cp contrib/archive2.pl $(W_BIN)/archive 

install-archive_mh:
	cp contrib/archive_mh.pl $(W_BIN)/archive 

permissions-shared:
	chown ${W_CHOWN} $(W_BIN)/wrappers/$(W_GROUP)/wrapper.`arch`
	chown ${W_CHOWN} $(W_BIN)/.
	chmod ${W_CHMOD} $(W_BIN)/wrappers/$(W_GROUP)/wrapper.`arch`

wrapper: wrapper.c Makefile
	$(CC) ${WRAPPER_FLAGS} -o wrapper wrapper.c

clean:
	rm -f  wrapper *~

dist-clean: clean
	rm -f majordomo.cf .cvsignore todo.local .dcl archive
	rm -rf regress Doc/samples Tools

VERSION=1.93
distribution: dist-clean
	mkdir majordomo-$(VERSION)
	mv * .??* majordomo-$(VERSION) || exit 0
	rm -rf majordomo-$(VERSION)/CVS majordomo-$(VERSION)/*/CVS majordomo-$(VERSION)/*/*/CVS
	tar -cZvf majordomo-$(VERSION).tar.Z  majordomo-$(VERSION)


-
Robb Shecter
University of Maryland, European Division
Computer Operations




Follow-Ups:
References:
Indexed By Date Previous: MAJORDOMO ABORT... directory
From: Joel Vandal <jvandal@jrv.qc.ca>
Next: Re: Maordomo using senders account
From: hippo@garply.com (Hugh Messenger)
Indexed By Thread Previous: Unknown mailer error 1 and Out of Memory under Linux (fwd)
From: Keith Reel <kreel@olivet.edu>
Next: Re: How-To: Majordomo & Linux
From: Dave Barr <barr@math.psu.edu>

Google
 
Search Internet Search www.greatcircle.com