apply2sw_inventory [ -d output_dir ] [ -r ]
With apply2sw_inventory it is possible to automatically update a software inventory file in a install script without the need to enter the software inventory information by hand using the swvi command or to write directly to the ..sw_inventory file which format might change in future releases.
For more information about the software inventory creation and maintenance see swvi(1) and sw_report(1).
As in the swvi command, only the entries for SOFTWARE, VERSION, INST_USER and INST_GROUP are compulsory. The sequence of the entries provided is not significant. For a complete list and description of all entries see swvi(1).
See section EXAMPLES for common usages of apply2sw_inventory in an install script.
This are the major parts of a simplified installation script to give an idea of updating/creating the software inventory file without manual intervention.
This installation script installs WA2L/edrc that is available in the package file /dat/sw/apps/edrc-1.5.02/edrc-1.5.02-20070428.sh to the installation directory /opt. All manual input queried by the shell archive edrc-1.5.02-20070428.sh is provided via input redirection. After that the software inventory file is updated using apply2sw_inventory. Because in this case WA2L/edrc is the only software in the installation directory the probably existing software inventory file is cleared using the -r option ahead of writing to it.
#!/bin/sh # # My_INSTALL - My Install Script for: EDRC Shell archive # # [00] 21.09.2005 CWa Initial Version # # Const PATH=$PATH:~edrc/bin ; export PATH Installbasedir=/opt Pkgfile=/dat/sw/apps/edrc-1.5.02/edrc-1.5.02-20070428.sh # package installation # cat <<EOM | $Pkgfile n $Installbasedir n n y y EOM # update software inventory # cat <<EOM | apply2sw_inventory -r -d $Installbasedir/edrc SOFTWARE = EDRC - Enterprise Disaster Recovery Console VERSION = 1.5.02 INST_USER = root INST_GROUP = root RUN_USER = RUN_GROUP = CFG_DIR = etc VAR_DIR = var LICENSE = GNU GPL LIC_MGMT = WEB = DOC = ~edrc/doc/edrc_manpages-1.5.02.pdf INST_SRC = $Pkgfile PRODUCT = System INSTANCE = COMMENT = disaster recovery and system administration EOM
This are the major parts of a simplified installation script to give an idea of updating/creating the software inventory file without manual intervention.
This installation script installs the GNU C compilers that are available in the HP-UX depot file /dat/sw/apps/gcc-3.3.2/gcc-3.3.2-hppa-11.11.depot.gz to the installation directory /usr/local. The installation is performed with the swinstall command of HP-UX. After that the software inventory file is updated using apply2sw_inventory. Due to the fact that in /usr/local often many different software are installed the most likely existing software inventory should not be cleared ahead of writing to it. That's why apply2sw_inventory is called without the remove (clear) option.
#!/bin/sh # # My_INSTALL - My Install Script for: GNU C Compiler # # [00] 21.09.2005 CWa Initial Version # # Const PATH=$PATH:~edrc/bin ; export PATH Installbasedir=/usr/local Pkgfile=/dat/sw/apps/gcc-3.3.2/gcc-3.3.2-hppa-11.11.depot.gz # package installation # cd / swinstall -s $Pkgfile gcc # update software inventory # cat <<EOM | apply2sw_inventory -d $Installbasedir SOFTWARE = GNU C Compilers VERSION = 3.3.2 INST_USER = root INST_GROUP = sys RUN_USER = RUN_GROUP = CFG_DIR = VAR_DIR = LICENSE = GNU GPL LIC_MGMT = WEB = http://hpux.cs.utah.edu/hppd/hpux/Gnu/gcc-3.3.2 DOC = http://gcc.gnu.org INST_SRC = $Pkgfile PRODUCT = Development INSTANCE = COMMENT = EOM
This is free software; see edrc/doc/COPYING for copying conditions. There is ABSOLUTELY NO WARRANTY; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.