pkgsrc/emulators/osf1_lib/INSTALL
2007-08-01 17:19:22 +00:00

122 lines
2.8 KiB
Text

# $NetBSD: INSTALL,v 1.4 2007/08/01 17:19:22 jlam Exp $
# Generate a +ROOT_ACTIONS script that runs certain actions that require
# superuser privileges.
#
case "${STAGE},$1" in
UNPACK,|UNPACK,+ROOT_ACTIONS)
${CAT} > ./+ROOT_ACTIONS << 'EOF'
#!@SH@
#
# +ROOT_ACTIONS - run actions requiring superuser privileges
#
# Usage: ./+ROOT_ACTIONS ADD|REMOVE [metadatadir]
#
# This script runs certain actions that require superuser privileges.
# If such privileges are not available, then simply output a message
# asking the user to run this script with the appropriate elevated
# privileges.
#
CAT="@CAT@"
CHMOD="@CHMOD@"
CP="@CP@"
DIRNAME="@DIRNAME@"
ECHO="@ECHO@"
ID="@ID@"
LN="@LN@"
MKDIR="@MKDIR@"
PWD_CMD="@PWD_CMD@"
RM="@RM@"
SH="@SH@"
TEST="@TEST@"
SELF=$0
ACTION=$1
CURDIR=`${PWD_CMD}`
PKG_METADATA_DIR="${2-${CURDIR}}"
: ${PKGNAME=${PKG_METADATA_DIR##*/}}
: ${PKG_PREFIX=@PREFIX@}
EMULDIR="${PKG_PREFIX}/@EMULSUBDIR@"
OPSYS_EMULDIR="@OPSYS_EMULDIR@"
ROOT_ACTIONS_COOKIE="./+ROOT_ACTIONS_done"
EUID=`${ID} -u`
exitcode=0
case $ACTION,$EUID in
ADD,0)
${ECHO} "" > ${ROOT_ACTIONS_COOKIE}
${CHMOD} g+w ${ROOT_ACTIONS_COOKIE}
# Create the appropriate symlink so that the kernel will
# find the installed files.
#
OPSYS_EMULDIR_PWD=`cd ${OPSYS_EMULDIR} 2>/dev/null && ${PWD_CMD}`
EMULDIR_PWD=`cd ${EMULDIR} 2>/dev/null && ${PWD_CMD}`
if ${TEST} "${OPSYS_EMULDIR_PWD}" != "${EMULDIR_PWD}"; then
if ${TEST} -e ${OPSYS_EMULDIR} -o -L ${OPSYS_EMULDIR}; then
${CAT} << EOM
==============================================================================
The following symbolic link must be created for ${PKGNAME}
to work properly:
${EMULDIR} -> ${OPSYS_EMULDIR}
==============================================================================
EOM
else
${ECHO} "${PKGNAME}: creating symlink ${EMULDIR} -> ${OPSYS_EMULDIR}"
( ${MKDIR} -p `${DIRNAME} ${OPSYS_EMULDIR}` &&
${LN} -fs ${EMULDIR} ${OPSYS_EMULDIR} ) || ${TRUE}
fi
fi
;;
ADD,*)
if ${TEST} ! -f ${ROOT_ACTIONS_COOKIE}; then
${CAT} << EOM
==============================================================================
Please run the following command with superuser privileges to complete
the installation of ${PKGNAME}:
cd ${PKG_METADATA_DIR} && ${SELF} ADD
==============================================================================
EOM
fi
;;
REMOVE,*)
${RM} -f ${ROOT_ACTIONS_COOKIE}
;;
esac
exit $exitcode
EOF
${CHMOD} +x ./+ROOT_ACTIONS
;;
esac
EMULDIR="${PKG_PREFIX}/@EMULSUBDIR@"
OPSYS_EMULDIR="@OPSYS_EMULDIR@"
case "${STAGE}" in
POST-INSTALL)
${TOUCH} ${EMULDIR}/etc/hosts
${MKDIR} ${EMULDIR}/usr/lib/X11
for dir in ${X11BASE}/lib/X11/locale ${X11BASE}/share/X11/locale; do
if ${TEST} -d $dir; then
${LN} -fs $dir ${EMULDIR}/usr/lib/X11
break
fi
done
# Run any actions that require root privileges.
${TEST} ! -x ./+ROOT_ACTIONS ||
./+ROOT_ACTIONS ADD ${PKG_METADATA_DIR}
;;
esac