[PREVIOUS CHAPTER] [______TOC_______]

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