
		makefml (/usr/local/fml/makefml)

------------------------------------------------------------
1	Overview
1.1	help
1.2	menu of "makefml config"
1.3	lock
1.4	GUI menu fo rfml?

2	makefml HOW-TO
2.1	Lock ML and edit its config.ph
3.1	-d
3.2	-v
3.3	-D CONFIG_DIR
3.4	-f system
3.5	-i INPUT-CHANNEL
3.6	-U
3.7	-F
3.8	-E Environment (for GUI)
3.9	-W cgi (for GUI)
3.10	-c cgi.conf (for GUI)
3.11	-m
3.12	-u USER
3.13	-w 
3.14	-V VENDOR
3.15	-A ARCHITECTURE
3.16	-O OPERATING-SYSTEM
4.1	directiry hier
4.2	How to make makefml to manipulate PGP keys
4.3	makefml without abbrebiation  (authentication of admin commands)
4.4	makefml usage (article encryption)
4.5	What is differant between fml 3.0 and 4.0
------------------------------------------------------------


	now under construction

1	Overview

1.1	help

run "makefml help".

% makefml help

   makefml command arguments         what
   ---------------------------------------------------------

   makefml info                      show this message
   makefml install                   Install the fml system

       ... snip ...

1.2	menu of "makefml config"

You can set ENVIRONMENTAL VARIABLE to enforce makefml shows menu in
Japanse. Try this.

    bourne shell, bash
    
    ~/.profile ~/.bash_profile (?)
    
      MAKEFML_LANG=euc; export MAKEFML_LANG
    
    csh, tcsh
    
    ~/.cshrc ~/.tcshrc
      setenv MAKEFML_LANG euc

1.3	lock

run shell-script under lock.

    % makefml lock elena -e shell-script

lock elena ML in 30 sec.

    % makefml lock elena 30
    DO "lock 30" for elena mailing list.
    
       makefml[10594] succeeded to lock elena
       I sleep for 30 seconds after now.
       Please interrupt this by CONTROL-C to stop this lock

If you can see "succeeded to lock elena", elena ML is locked.
Please do your work!

1.4	GUI menu fo rfml?

fml 4.0 has CGI interface.

2	makefml HOW-TO

2.1	Lock ML and edit its config.ph

To edit files (e.g. cf, config.ph) under locking a ML like vipw(8),
FML provides the mechanism by "makefml".

	% makefml edit ML [file]

Example: to edit elena/config.ph 
	% makefml edit elena
	% makefml edit elena config.ph

Example: to edit elena/cf
	% makefml edit elena cf

enables you to edit config.ph by hand.
ATTENTION: "makefml config" edits $DIR/cf and creates $DIR/config.ph
from $DIR/cf. If you use "makefml config" usually but now need to set
up FML over "makefml config" spec, you need to edit $DIR/cf manually
and run "make config.ph".

	 cf -> config.ph 

  % makefml update-config.ph ML

3.1	-d

3.2	-v

verbose mode

3.3	-D CONFIG_DIR

3.4	-f system

It is useful for virtual domain setup.

	% makefml -f /some/where/fml/.fml/system install

3.5	-i INPUT-CHANNEL

For examle
  CGI -> open(MAKEFML, "|  makefml -i STDIN  ") ..

3.6	-U

not lock

makefml -U install

3.7	-F

Enforce "newml" operation. For example, to re-create elena ML, runs

makefml -F newml elena

3.8	-E Environment (for GUI)

-E tells makefml under CUI or GUI mode.

3.9	-W cgi (for GUI)

CGI installation mode

3.10	-c cgi.conf (for GUI)

cgi configuration file.

3.11	-m

-m tells whether fml sends command reply mail or not under "makefml
test" emulation mode.

3.12	-u USER

-u tells makefml under $USER.

3.13	-w 

-w is used on Windows 2000/NT4.

3.14	-V VENDOR

VENDER name. It is for debug ?

3.15	-A ARCHITECTURE

mainly for debug ?

3.16	-O OPERATING-SYSTEM

mainly for debug ?

4.1	directiry hier

fml 4.0 clean up the directory hierarchy to 4 locations following
each objective.

	$DIST_AUTH_KEYRING_DIR     = "$DIR/etc/dist-auth";
	$DIST_ENCRYPT_KEYRING_DIR  = "$DIR/etc/dist-encrypt";
	$ADMIN_AUTH_KEYRING_DIR    = "$DIR/etc/admin-auth";
	$ADMIN_ENCRYPT_KEYRING_DIR = "$DIR/etc/admin-encrypt";

     * PGP keys for encryption of articles
	$DIST_ENCRYPT_KEYRING_DIR	
	Example: /var/spool/ml/elena/etc/dist-encrypt/

     * PGP keys for the autentication of admin command mails
	$ADMIN_AUTH_KEYRING_DIR
	Example: /var/spool/ml/elena/etc/admin-auth/

4.2	How to make makefml to manipulate PGP keys

	makefml	mode.PGP-COMMAND-NAME

	% makefml admin-auth.pgp2 elena [pgp options]

If you set environment variable MAKEFML_PGP_DEFAULT_MODE to be
"admin-auth", pgp becomes admin-auth.pgp. 

	% setenv MAKEFML_PGP_DEFAULT_MODE admin-auth
	% makefml pgp elena

By default, the following two samples are the same.

	% makefml pgp elena
	% makefml admin-auth.pgp elena

4.3	makefml without abbrebiation  (authentication of admin commands)

	makefml admin-auth.pgp
	makefml admin-auth.pgp2
	makefml admin-auth.pgp5
	makefml admin-auth.pgpk
	makefml admin-auth.pgps
	makefml admin-auth.pgpe
	makefml admin-auth.pgpv
	makefml admin-auth.gpg

You can abbrebiate admin-auth as "aa".

	makefml aa.pgp2
	makefml aa.pgp5
	makefml aa.gpg

4.4	makefml usage (article encryption)

	makefml dist-encrypt.pgp
	makefml dist-encrypt.pgp2
	makefml dist-encrypt.pgp5
	makefml dist-encrypt.pgpk
	makefml dist-encrypt.pgps
	makefml dist-encrypt.pgpe
	makefml dist-encrypt.pgpv
	makefml dist-encrypt.gpg

You can use de as dist-encrpyt.

	makefml de.pgp2
	makefml de.pgp5
	makefml de.gpg

4.5	What is differant between fml 3.0 and 4.0

		/var/spool/ml/elena/etc/pgp/

		$DIST_ENCRYPT_KEYRING_DIR = $PGP_PATH;
		$ADMIN_AUTH_KEYRING_DIR   = $PGP_PATH;

		% cd /var/spool/ml/elena/etc
		% ln -s pgp dist-encrypt
		% ln -s pgp admin-auth

	makefml pgp elena

	makefml admin-auth.pgp2 elena


		INDEX

maintenance.pl                             ...   2.1 
vipw.pl                                    ...   2.1 
