bg-installer - Standardized installer program.
bg-installer [top-directory] <LIST
The program bg-installer
reads an installation instruction file from
standard input, and executes the instructions in the directory named on the
Each line in the file is an individual instruction. Blank lines and lines
beginning with "#" are ignored. Lines beginning with
">", if present, instruct bg-installer as to which base directory
to use (see below). All other lines must have following format:
- is a single character specifying the installation command, optionally
followed by "?" indicating the command should only execute if
the source exists. If the "?" is followed by a name, it is used
instead of SOURCE as the filename to test.
- (optional) is the owner user ID or name for the target file.
- (optional) is the group ID or name for the target file.
- is the permissions of the installed file in octal.
- is the subdirectory of the installation prefix for the destination
- (optional) is the name of the file to install into the directory. It may
be omitted for directories.
- (optional) is the name of the source file to install, if it differs from
the destination file, or the path in the symlink.
contains wildcards, the command is repeated once for each
is empty, it is replaced with the value of SOURCE
after wildcard expansion. Each instance of "$N" in FILENAME
where "N" is a single digit is replaced with the Nth part of the
source filename. "$0" is replaced with the whole source filename.
The target filename is "PREFIX/TOP/DIR/FILENAME" where
"PREFIX" is the value of $install_prefix
if it is set,
is the directory given on the command line, and DIR
given in the installation file.
- "c" lines copy regular files from the current directory
- "d" lines create directories
- "s" lines create symlinks (UID, GID, and
MODE are ignored)
- "l" lines copy libraries using libtool
encounters a base directory directive, as indicated
above, it opens the file named conf-BASE
is the word
on the directive line), reads the first line, and uses that as the base
directory (prefixed by $install_prefix
- -v, --verbose
- List the files as they are processed.
- -n, --dry-run
- Don't modify any files, just display.
- -c, --check
- Check destinations instead of installing.
- -h, --help
- Display usage information and exit.
This reads conf-bin
, and installs prog1
and setuid root
(if it was built) under it. It then reads conf-include
creates the directory package
under it, and installs pkgbase.h
in that directory. It also creates a symlink package.h
- If set, is prefixed to all destination file names.
Bruce Guenter <email@example.com>