Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ mkperm(SMT) — OpenDesktop Software Development System 3.0.0

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

docut(SMT)

fixperm(ADM)

fixperm(M)

mkcuts(SMT)


 mkperm(SMT)                    6 January 1993                    mkperm(SMT)


 Name

    mkperm - make a product permissions list (permlist)

 Syntax

    mkperm [-p prdvalue] [-s "setstring"] [-t type] \
           [-r release] [-S "serialized files"] \
           [-o output file] [-O dist directory] \
           [-x volprefix] [-D dirfile] \
           pkgdir PKGNAME "pkgdesc" [pkgdir2 PKGNAME2 "pkgdesc2" ... ]]

 Description

    mkperm creates a permlist from a directory hierarchy.  This utility is
    called by docut(SMT).  The resultant permlist is suitable as input for
    the mkcuts utility.

    The following is a list of required values. If not specified on the com-
    mand line, they are read from the appropriate environment variables.  If
    a required value is not present on the command line or in the environ-
    ment, mkperm gives an error message.

    prdvalue:   abbreviated product name; example: pro.  Default value is
                $PRODPRD.

    setstring:  name of the full set or application; example: SCO Profes-
                sional.  Default value is $PRODSET.

    type:       target system.  Default value is $PRODTYP.

    release:    release number of the product.  Default value is $PRODREL.

    pkgdir:     root directory path for a given package

    PKGNAME:    name of the package associated with pkgdir

    pkgdesc:    description of the package

    If pkgdir, PKGNAME, and pkgdesc are not given on the command line, they
    are taken from the variables BASEPACKDIR, BASEPACKNAME, and BASEPACKDESC.

    The -S option sets the permlist variable ser, which lists the names of
    serialized files.  If the -S option is not given, the SERIALIZE environ-
    ment variable is used.  If this is not set, a default value of "" (zero-
    length string) is used.

    The -x option specifies prefix letters for the volume number field in the
    permlist.  (This is mainly used for updates, and for the N, B, and X vol-
    umes of the OS.)  If the -x option is not given, the value of the
    environment variable VOLPREFIX is used.  If this is not set, no prefix
    letters are used.

    If an output filename of ``-'' is given with the -o option, the permlist
    output is written to stdout.  If the -o option is not given, the permlist
    output is written to $DISTDIR/$PERMLIST with a default value of
    ./dist/tmp/perms/prdvalue.

    The -O option specifies the root directory of the distribution tree,
    which holds all the files to be copied onto the distribution media.
    mkperm creates this tree by making links to the appropriate files under
    the package directories.  If a value of ``-'' is given with the -O
    option, this action is turned off; no links are made, and the distribu-
    tion tree is not created.  If the -O option is not given, the directory
    name is taken from the DISTDIR environment variable, with a default value
    of ./dist

    Note that the fixperm -c command must be run on the distribution tree
    before cutting the distribution media.  This is necessary to set owner-
    ship and permissions, ensure that all links are made, and to create all
    directories and devices listed in the permlist.  (This is done automati-
    cally if mkcuts is used.)

    The -D option controls which directories are listed in the permlist.
    Without it, by default, mkperm omits from the created permlist any direc-
    tories that are already listed in the operating system permlists (for
    example, ./etc, ./usr, ./usr/bin).  This is to ensure that custom-
    installable applications do not change the ownership/permissions on OS
    directories when installed.  If this behavior is not appropriate (for
    example, when producing a permlist for an OS component) the -D option can
    specify a file that lists the directories to be omitted from the created
    permlist.  The directories should be listed in the file one per line,
    without surrounding whitespace.  (This is the same format as the output
    of fixperm -D.) Specifying a filename of ``-'' with the -D option makes
    mkperm include all directories in the created permlist, without omitting
    any.

 Notes

    mkperm must be run from the root login.

    Any files whose uid or gid name cannot be determined are inherited by
    root.

 Files

    /etc/fixperm

 See also

    docut(SMT), fixperm(ADM), fixperm(M), mkcuts(SMT)


Typewritten Software • bear@typewritten.org • Edmonds, WA 98026