:
#!/bin/sh
# @(#)Install	113.2 9/18/90 15:45:53
#
#
# Copyright 1990 by Lotus Development Corporation, All Rights Reserved
#
#


PATH=/bin:/usr/bin:/etc:/usr/ucb:/usr/etc
export PATH

SH_NAME=`basename ${0}`
INSTALL_DIR=`pwd`
B_FILE="${INSTALL_DIR}/banner"
C_FILE="${INSTALL_DIR}/copyright.d"
MESS_FILE="${INSTALL_DIR}/messages"
CHKDF="${INSTALL_DIR}/chkdskno"
CHKDSKNO="${INSTALL_DIR}/chkdskno"
CHKID="${INSTALL_DIR}/chkdskno"
COMBINE_EXE="${INSTALL_DIR}/combine_exe"
MK_BANNER="${INSTALL_DIR}/mk_banner"
MKDIR="${INSTALL_DIR}/chkdskno -p"
UNPACK="${INSTALL_DIR}/rm_unpack"


. ${MESS_FILE}


quit_it() {
	echo "        " > /dev/tty
	echo "${MSG89}" > /dev/tty
	echo "${MSG90}" > /dev/tty
	echo "        " > /dev/tty
	exit 1
}
trap 'quit_it' 1 2 3 9 15


case "${VERSION}" in
?|??)
	PVERSION=`expr ${VERSION} / 10`
	RVERSION=`expr ${VERSION} % 10`
	;;
*)
	PVERSION=`expr ${VERSION} / 100`
	RVERSION=`expr ${VERSION} % 100`
	;;
esac
PVERSION="${PVERSION}.${RVERSION}"

ARCH="${TARGET_ARCH}"
FIRST_DIR="lotus"
CHMOD="chmod"
CPIO="cpio"
HELP_DIR="/usr/lib/help"
MAN_IN_DIR="man"
OPTIONS="-iBcdmuv"
REQ_LOGIN="root"
REL_BIN_PATH="${FIRST_DIR}/123.v${VERSION}/${ARCH}/bin"
SCRIPT_DESC="${MSG00_SH}"
SOFT_PRETEST="${FIRST_DIR}/123.v${VERSION}/${ARCH}/bin/123"
SUG_BASE_DIR="/usr"
TERMINFO="/usr/lib/terminfo"
TOUCH="touch"


yes_or_no() {
	while :
	do
		response=""
		read response

		case "${response}" in
		${INT_YES1}*|${INT_YES2}*)
			answer="y"
			break
			;;
		${INT_NO1}*|${INT_NO2}*)
			answer="n"
			break
			;;
		*)
			echo -n "${MSG05}"
			;;
		esac
	done
}


get_base_dir() {
	DESTDIR=${SUG_BASE_DIR}

	echo " "
	echo "${MSG37}"
	echo " "
	echo "                   ${DESTDIR}"
	echo " "
	echo -n "${MSG38}"
	BASEDIR=""
	read BASEDIR

	if [ ! -z "${BASEDIR}" ]
	then
		while :
		do
			case "${BASEDIR}" in
			/)
				break
				;;
			*/)
				BASEDIR=`echo ${BASEDIR} | sed 's/\/$//'`
				;;
			/*)
				break
				;;
			*)
				BASEDIR="/${BASEDIR}"
				break
				;;
			esac
		done

		DESTDIR=${BASEDIR}
	fi
}


try_again() {
	echo " "
	echo -n "${MSG10} ${INT_YESNO}"
	yes_or_no
	case "${answer}" in
	y)
		get_base_dir
		;;
	n)
		echo " "
		echo "${MSG04}"
		echo " "
		exit 1
		;;
	esac
}


exist_test() {
	while :
	do
		if [ -d "${DESTDIR}" -a -w "${DESTDIR}" ]
		then
			break
		fi

		echo " "
		if [ -d "${DESTDIR}" ]
		then
			echo "${DESTDIR} ${MSG76}"
			try_again
		else
			echo "${DESTDIR} ${MSG01}"
			echo " "
			echo -n "${MSG02} ${INT_YESNO}"
			yes_or_no
			case "${answer}" in
			y)
				${MKDIR} ${DESTDIR}
				if [ -d "${DESTDIR}" -a -w "${DESTDIR}" ]
				then
					break
				fi

				echo " "
				echo "${SH_NAME} : ${MSG03}"
				try_again
				;;
			n)
				try_again
				;;
			esac
		fi
	done

	if [ -f "${DESTDIR}/${SOFT_PRETEST}" ]
	then
		echo " "
		echo "${MSG44}"
		echo " "
		echo -n "${MSG45} ${INT_YESNO}"
		yes_or_no
		case "${answer}" in
		y)
			SPACE_ALREADY=`du -s ${DESTDIR}/${FIRST_DIR}/123.v${VERSION}/ | \
				awk '{print $1}'`
			;;
		n)
			echo " "
			echo "${SH_NAME} : ${MSG13}"
			echo " "
			exit 1
			;;
		esac
	else
		SPACE_ALREADY=0
	fi
}


space_test() {
	while :
	do
		exist_test

		DISK_AVAIL=`df | ${CHKDF} ${DESTDIR}/`
		if [ -z "${DISK_AVAIL}" ]
		then
			echo " "
			echo "${SH_NAME} : ${MSG07} - ${DESTDIR}"
			echo " "
			exit 1
		fi

		DISK_AVAIL=`expr ${DISK_AVAIL} + ${SPACE_ALREADY}`
		if [ ${SOFT_SIZE} -le ${DISK_AVAIL} ]
		then
			break
		fi

		echo " "
		echo "${MSG08}"
		echo "${MSG09} ${DESTDIR}"
		echo " "
		echo "-- ${SOFT_SIZE} ${MSG36_SH}"
		echo "-- ${DISK_AVAIL} ${MSG64_SH}"
		echo " "
		echo -n "${MSG10} ${INT_YESNO}"
		yes_or_no
		case "${answer}" in
		y)
			get_base_dir
			;;
		n)
			echo " "
			echo "${SH_NAME} : ${MSG13}"
			echo " "
			exit 0
			;;
		esac
	done
}


lotus_clear() {
	echo " "
	echo " "
	echo " "
	echo " "
	echo " "
	echo " "
	echo " "
	echo " "
	echo " "
	echo " "
	echo " "
	echo " "
	echo " "
	echo " "
	echo " "
	echo " "
	echo " "
	echo " "
	echo " "
	echo " "
	echo " "
	echo " "
	echo " "
	echo " "
	echo " "
}


if [ -x "/bin/clear" ]
then
	CLEAR=/bin/clear
else
if [ -x "/usr/bin/clear" ]
then
	CLEAR=/usr/bin/clear
else
	CLEAR=lotus_clear
fi
fi


${CLEAR}
echo " "
if [ ! -r "${C_FILE}" ]
then
	echo "${SH_NAME} : ${MSG29}"
	echo " "
	exit 1
fi

echo "${MSG28}"
echo " "
cat ${C_FILE}
echo " "
echo -n "${MSG30} ${INT_YESNO}"
yes_or_no
case "${answer}" in
y)
	;;
n)
	echo " "
	echo "${SH_NAME} : ${MSG13}"
	echo " "
	exit 0
	;;
esac

${CHKID}
if [ ${?} -ne 0 ]
then
	echo " "
	echo "${SH_NAME} : ${MSG31} ${REQ_LOGIN}"
	echo " "
	exit 1
fi

sleep 2
${CLEAR}
ulimit 8192
umask  0022
echo " "
echo "${SCRIPT_DESC}"
echo " "
echo -n "${MSG30} ${INT_YESNO}"
yes_or_no
case "${answer}" in
y)
	;;
n)
	echo " "
	echo "${MSG13}"
	echo " "
	exit 1
	;;
esac

echo " "
echo " "
echo "${MSGa3}"
echo " "
echo -n "${MSG05}"
yes_or_no
case "${answer}" in
y)
	INST_DL=1
	SOFT_SIZE="20000"
	INSTALL_TIME="15"
	;;
n)
	INST_DL=0
	DISK_LIST="${DISK_NO_DL_LIST}"
	SOFT_SIZE="13000"
	INSTALL_TIME="12"
	;;
esac

${CLEAR}
echo " "
echo "${MSG35}"
echo " "
df
echo " "
echo "${SOFT_SIZE} ${MSG36_SH}"
echo " "
echo " "

eval echo "${MSG33} ${PROD_SH}"
echo " "
eval echo "\ \ \ \ \ \ \ \ ${INT_SOFT_REQ_SH}"
echo "        ${INT_SOFT_REQ_SH1}"
echo " "
echo "${MSG34}: ${INSTALL_TIME} ${MSG99}"
echo " "

echo -n "${MSG30} ${INT_YESNO}"
yes_or_no
case "${answer}" in
y)
	echo " "
	;;
n)
	echo " "
	echo "${SH_NAME} : ${MSG13}"
	echo " "
	exit 0
	;;
esac

${CLEAR}
echo " "

if [ -f "/xenix" ]
then
	if [ -f "/unix" ]
	then
		OS=""
	else
		OS="x"
		echo "${MSGa2_0}"
		echo "${MSGa2_4}"
	fi
else
	OS=""
fi
while :
do
	if [ ! -z "${OS}" ]
	then
		echo " "
		echo -n "${MSG93} ${INT_YESNO}"
		yes_or_no
		case "${answer}" in
		y)
			break
			;;
		n)
			OS=""
			;;
		esac
	fi

	echo " "
	echo -n "${MSGa2}"
	answer=""
	read answer
	echo " "
	case "${answer}" in
	1)
		OS="a"
		echo "${MSGa2_0}"
		echo "${MSGa2_1}"
		;;
	2)
		OS="a"
		echo "${MSGa2_0}"
		echo "${MSGa2_2}"
		;;
	*)
		;;
	esac
done

${CLEAR}
echo " "
get_base_dir
space_test

while :
do
	sleep 2
	${CLEAR}
	echo " "
	eval echo "${MSG46a} ${PROD_SH}"
	echo "${MSG46b} ${DESTDIR}"
	echo " "
	echo "${MSG92} ${DESTDIR}/${FIRST_DIR}"
	echo " "
	echo -n "${MSG93} ${INT_YESNO}"
	yes_or_no
	case "${answer}" in
	y)
		break
		;;
	n)
		get_base_dir
		space_test
		;;
	esac
done

${CLEAR}
echo " "

rm -f ${UNPACK}
echo ":" > ${UNPACK}
echo "#!/bin/sh" >> ${UNPACK}
echo "#" >> ${UNPACK}
echo "#" >> ${UNPACK}
echo "# Copyright 1990 by Lotus Development Corporation, All Rights Reserved" >> ${UNPACK}
echo "#" >> ${UNPACK}
echo "#" >> ${UNPACK}
echo " " >> ${UNPACK}
echo "rmfile=\`echo \$1 | sed 's/\\.z$//'\`" >> ${UNPACK}
echo "rm -f \$rmfile" >> ${UNPACK}
echo " " >> ${UNPACK}
echo "unpack \$1" >> ${UNPACK}
echo " " >> ${UNPACK}
echo "exit 0" >> ${UNPACK}
chmod 700 ${UNPACK}

if [ -n "${rdev}" -a -c "${rdev}" ]
then
	DEVPATH=${rdev}
else
	rdev=""
	DEVPATH=""

	if [ "${DISK_DRIVE_NO}" = "0" ]
	then
		TESTDEVICES="rinstall rdsk/f0q${DISK_DENSITY}dt rdsk/f1q${DISK_DENSITY}dt"
	else
		TESTDEVICES="rinstall rdsk/f1q${DISK_DENSITY}dt rdsk/f0q${DISK_DENSITY}dt"
	fi

	if [ -c "/dev/rdsk/f1" ]
	then
		dd if=/dev/rdsk/f1 count=1 2>&1 | \
			grep "${MSGc1}" 2>&1 >/dev/null
		if [ ${?} -eq 0 ]
		then
			DEVPATH=/dev/rdsk/f0q${DISK_DENSITY}dt
			TESTDEVICES="rinstall rdsk/f0q${DISK_DENSITY}dt"
		fi
	fi

	for i in ${TESTDEVICES}
	do
		if [ "${OS}" != "s" -a "${OS}" != "x" -a \
		     "${i}" = "rdsk/f0q18dt" ]
		then
			i=rdsk/f03ht
		fi

		if [ -c "/dev/${i}" ]
		then
			${CHKDSKNO} /dev/${i} 1 ${DISK_INFO}
			if [ ${?} -eq 0 ]
			then
				rdev=/dev/${i}
				DEVPATH=${rdev}

				break
			fi
		fi
	done

	${CLEAR}
	echo " "
fi

if [ -z "${rdev}" ]
then
	while [ -z "${DEVPATH}" ]
	do
		echo "${MSGb5}"
		echo " "
		if [ "${DISK_DRIVE_NO}" = "0" ]
		then
			echo -n "${MSGb6} (${MSGb7}0,1) : "
		else
			echo -n "${MSGb6} (0,${MSGb7}1) : "
		fi
		answer=""
		read answer
		case "${answer}" in
		"")
			DEVPATH=/dev/rdsk/f${DISK_DRIVE_NO}q${DISK_DENSITY}dt
			;;
		0)
			DEVPATH=/dev/rdsk/f0q${DISK_DENSITY}dt
			;;
		1)
			DEVPATH=/dev/rdsk/f1q${DISK_DENSITY}dt
			;;
		*)
			echo " "
			;;
		esac
	done

	if [ "${OS}" != "s" -a "${OS}" != "x" -a \
	     "${DEVPATH}" = "/dev/rdsk/f0q18dt" ]
	then
		DEVPATH=/dev/rdsk/f03ht
	fi

	while :
	do
		echo " "
		if [ "${OS}" = "s" -o "${OS}" = "x" ]
		then
			echo -n "${MSG22_SH} ${DEVPATH}) : "
		else
			echo -n "${MSG22_AI_SH} ${DEVPATH}) : "
		fi
		answer=""
		read answer
		if [ -z "${answer}" ]
		then
			answer=${DEVPATH}
		fi

		if [ -c "${answer}" ]
		then
			DEVPATH=${answer}
			break
		fi

		echo " "
		echo "${SH_NAME} : ${MSG24} ${answer}"
	done
fi

cd ${DESTDIR}
echo " "
echo "${MSG48} ${INSTALL_TIME} ${MSG99}"
for i in ${DISK_LIST}
do
	while :
	do
		echo " "
		eval echo "${MSG25_SH}"
		echo " "
		echo -n "${MSG26}"
		read ans

		${CHKDSKNO} ${DEVPATH} ${i} ${DISK_INFO}

		case "${?}" in
		0)
			break
			;;
		1)
			echo " "
			echo "${SH_NAME} : ${MSGb8} ${CHKDSKNO}"
			echo " "
			exit 1
			;;
		2)
			echo " "
			echo "${SH_NAME} : ${MSGb9} ${DEVPATH}"
			echo " "
			exit 1
			;;
		*)
			echo " "
			echo "${MSGc0}"
			;;
		esac
	done

	if [ "${i}" = "1" ]
	then
		tar xvf ${DEVPATH} ./${FIRST_DIR}
	else
	if [ "${INST_DL}" = "0" -a "${DISK_DENSITY}" = "15" -a "${i}" = "5" ]
	then
		${CPIO} ${OPTIONS} "${FIRST_DIR}/123.v${VERSION}/${ARCH}/bin/*" < ${DEVPATH}
	else
	if [ "${INST_DL}" = "0" -a "${DISK_DENSITY}" = "18" -a "${i}" = "4" ]
	then
		${CPIO} ${OPTIONS} "${FIRST_DIR}/123.v${VERSION}/${ARCH}/dvr/*" < ${DEVPATH}
	else
		${CPIO} ${OPTIONS} < ${DEVPATH}
	fi
	fi
	fi

	if [ ${?} -ne 0 ]
	then
		echo " "
		echo "${SH_NAME} : ${MSG49}"
		echo " "
		exit 1
	fi

	find ${DESTDIR}/${FIRST_DIR} -type f -name '*.z' -exec ${UNPACK} {} \;
done

${CLEAR}
echo " "
echo "${MSGb3}"
echo " "

if [ "${INST_DL}" = "1" ]
then
	echo "${MSGb4}"
	echo " "

	LIB123_FILE="${DESTDIR}/${FIRST_DIR}/123.v${VERSION}/${ARCH}/lib/123.o"
	rm -f ${LIB123_FILE}
	${COMBINE_EXE} ${LIB123_FILE}.z ${LIB123_FILE}.z_1 ${LIB123_FILE}.z_2
	${CHMOD} 600 ${LIB123_FILE}.z
	${UNPACK} ${LIB123_FILE}.z

	if [ "${OS}" != "x" ]
	then
		rm -f ${DESTDIR}/${FIRST_DIR}/123.v${VERSION}/${ARCH}/lib/ld*
	fi
else
	sleep 3
fi

if [ -d "${TERMINFO}" ]
then
	if [ ! -d "${TERMINFO}/w" ]
	then
		mkdir ${TERMINFO}/w
	fi
	cp ${DESTDIR}/${FIRST_DIR}/123.v${VERSION}/${ARCH}/lib/wyse* \
		${TERMINFO}/w
fi

(
	cd ${DESTDIR}/${FIRST_DIR}/123.v${VERSION}
	if [ -d "smpfiles" -a -d "smpfiles/intro" ]
	then
		cd smpfiles
		if [ ! -d "INTRO" ]
		then
			mkdir INTRO
		fi

		cd intro
		for i in *
		do
			if [ -f "${i}" ]
			then
				j=`echo ${i} | sed 's:.*/::
					y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'`
				rm -f ../INTRO/${j}
				ln ${i} ../INTRO/${j}
			fi
		done
	fi
)

(
	cd ${DESTDIR}/${FIRST_DIR}/123.v${VERSION}
	if [ -d "smpfiles" -a -d "smpfiles/nf" ]
	then
		cd smpfiles
		if [ ! -d "NF" ]
		then
			mkdir NF
		fi

		cd nf
		for i in *
		do
			if [ -f "${i}" ]
			then
				j=`echo ${i} | sed 's:.*/::
					y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'`
				rm -f ../NF/${j}
				ln ${i} ../NF/${j}
			fi
		done
	fi
)

rm -f ${UNPACK}
echo " "

localhost=`uname`
while :
do
	if [ "${OS}" = "x" ]
	then
		host="${localhost}"
	else
		echo "${MSGa0}"
		echo " "
		host=""
		echo -n "${MSGa1}(${localhost}) "
		read host
		if [ -z "${host}" ]
		then
			host="${localhost}"
		fi
	fi

	if [ -z "${USERNAME}" ]
	then
		echo " "
		echo "${MSG94}"
		uname=""
		while [ -z "${uname}" ]
		do
			echo " "
			echo -n "${MSG95}"
			read uname

			if [ ! -z "${uname}" ]
			then
				grep "^${uname}:" /etc/passwd >/dev/null 2>&1
				if [ ${?} -ne 0 ]
				then
					echo " "
					echo -n "${MSGc3} ${INT_YESNO}"
					yes_or_no
					case "${answer}" in
					y)
						;;
					n)
						uname=""
						;;
					esac
				fi
			fi
		done
	fi

	company=""
	while [ -z "${company}" ]
	do
		echo " "
		echo -n "${MSG96}"
		read company
	done

	echo " "
	echo "${MSG97}"
	echo " "

	if [ "${OS}" != "x" ]
	then
		echo "     ${MSGa1}${host}"
	fi

	if [ -z "${USERNAME}" ]
	then
		echo "     ${MSG95}${uname}"
	fi

	echo "     ${MSG98}${company}"

	echo " "
	echo -n "${MSG93} ${INT_YESNO}"
	yes_or_no
	case "${answer}" in
	y)
		break
		;;
	n)
		${CLEAR}
		echo " "
		;;
	esac
done

if [ -z "${USERNAME}" ]
then
	XUSERNAME="${uname}"
	uname=">${uname}"
else
	XUSERNAME="${USERNAME}"
	uname="*"
fi
company=">${company}"

if [ -z "${TIMEBOMB}" ]
then
	set `date +"%y %m %d"`
	year=19${1}
	month=`expr ${2} + 2`
	day=${3}

	if [ ${year} -lt 1970 ]
	then
		year=`expr ${year} + 100`
	fi

	if [ ${month} -gt 12 ]
	then
		month=`expr ${month} - 12`
		year=`expr ${year} + 1`
	fi

	case "${month}" in
	?)
		TIMEBOMB="${year}-0${month}-${day}"
		;;
	*)
		TIMEBOMB="${year}-${month}-${day}"
	esac
fi

LICENSE_FILE="${DESTDIR}/${FIRST_DIR}/123.v${VERSION}/${ARCH}/123lic.v${VERSION}/LICENSE.000"
rm -f ${LICENSE_FILE}
echo -n "${TIMEBOMB} ${XUSERNAME} ${host}" > ${LICENSE_FILE}
${CHMOD} 444 ${LICENSE_FILE}

BANNER_FILE="${DESTDIR}/${FIRST_DIR}/123.v${VERSION}/ri/${LANGUAGE}/123ban.ri"
rm -f ${BANNER_FILE}
${MK_BANNER} ${B_FILE} ${BANNER_FILE} "${UNIX_OS_NAME}" \
	"${PVERSION}" "${uname}" "${company}"
if [ ${?} -eq 0 ]
then
	${CHMOD} 644 ${BANNER_FILE}
fi

case "${OS}" in
i)
	MAN_DEF_DIR="/usr/catman"
	MAN_SUB_DIR="u_man/man1"
	rm -rf ${DESTDIR}/${FIRST_DIR}/${MAN_IN_DIR}/man1
	rm -f ${DESTDIR}/${FIRST_DIR}/${MAN_IN_DIR}/cat.LOCAL/*.LOCAL
	if [ ! -d "${DESTDIR}/${FIRST_DIR}/${MAN_IN_DIR}/${MAN_SUB_DIR}" ]
	then
		${MKDIR} ${DESTDIR}/${FIRST_DIR}/${MAN_IN_DIR}/${MAN_SUB_DIR}
	fi
	mv ${DESTDIR}/${FIRST_DIR}/${MAN_IN_DIR}/cat.LOCAL/* \
		${DESTDIR}/${FIRST_DIR}/${MAN_IN_DIR}/${MAN_SUB_DIR}
	rm -rf ${DESTDIR}/${FIRST_DIR}/${MAN_IN_DIR}/cat.LOCAL
	;;
s)
	MAN_DEF_DIR="/usr/man"
	MAN_SUB_DIR="cat.LOCAL"
	rm -f ${DESTDIR}/${FIRST_DIR}/${MAN_IN_DIR}/cat.LOCAL/*.1
	if [ -d "${DESTDIR}/${FIRST_DIR}/${MAN_IN_DIR}/man.LOCAL" ]
	then
		rm -rf ${DESTDIR}/${FIRST_DIR}/${MAN_IN_DIR}/man1
	else
		rm -f ${DESTDIR}/${FIRST_DIR}/${MAN_IN_DIR}/man1/*
		mv ${DESTDIR}/${FIRST_DIR}/${MAN_IN_DIR}/man1 \
			${DESTDIR}/${FIRST_DIR}/${MAN_IN_DIR}/man.LOCAL
	fi
	;;
x)
	MAN_SUB_DIR=""
	rm -f ${DESTDIR}/${FIRST_DIR}/${MAN_IN_DIR}/cat.LOCAL/*.1
	if [ ! -d "${HELP_DIR}" ]
	then
		mkdir ${HELP_DIR}
	fi
	(
		cd ${DESTDIR}/${FIRST_DIR}/${MAN_IN_DIR}/cat.LOCAL
		for i in *.LOCAL
		do
			if [ "${i}" = "123.LOCAL" ]
			then
				i="lotus123.LOCAL"
				mv 123.LOCAL ${i}
			fi
			newfile=`echo ${i} | sed 's/\.LOCAL$//'`
			rm -f ${HELP_DIR}/${newfile}
			echo "-${newfile}" >  ${HELP_DIR}/${newfile}
			cat ${i}           >> ${HELP_DIR}/${newfile}
		done
	)
	rm -rf ${DESTDIR}/${FIRST_DIR}/${MAN_IN_DIR}
	;;
*)
	MAN_DEF_DIR="/usr/man"
	MAN_SUB_DIR="man1"
	rm -rf ${DESTDIR}/${FIRST_DIR}/${MAN_IN_DIR}/cat.LOCAL
	;;
esac

${CLEAR}
echo " "
SH123_FILE="${DESTDIR}/${FIRST_DIR}/123.v${VERSION}/${ARCH}/bin/123"
rm -f ${SH123_FILE}
echo ":" > ${SH123_FILE}
echo "LOTUS_BASE_DIR=${DESTDIR}/${FIRST_DIR}" >> ${SH123_FILE}
echo "VERSION_DIR=123.v${VERSION}"            >> ${SH123_FILE}
cat ${SH123_FILE}.sh | sed -e "s/{OS}/${OS}/" >> ${SH123_FILE}
rm -f ${SH123_FILE}.sh
${CHMOD} 755 ${SH123_FILE}

if [ ! -z "${MAN_SUB_DIR}" ]
then
	echo " "
	echo -n "${MSG73} ${INT_YESNO}"
	yes_or_no
	case "${answer}" in
	y)
		while :
		do
			man_dir=""
			echo " "
			echo -n "${MSG74}(${MAN_DEF_DIR}) "
			read man_dir

			if [ -z "${man_dir}" ]
			then
				man_dir="${MAN_DEF_DIR}"

				if [ ! -d "${man_dir}" ]
				then
					mkdir ${man_dir}
				fi
			fi

			if [ -d "${man_dir}" -a -w "${man_dir}" ]
			then
				if [ ! -d "${man_dir}/${MAN_SUB_DIR}" ]
				then
					${MKDIR} ${man_dir}/${MAN_SUB_DIR}
				fi

				FROM_MAN_DIR="${DESTDIR}/${FIRST_DIR}/${MAN_IN_DIR}/${MAN_SUB_DIR}"
				TO_MAN_DIR="${man_dir}/${MAN_SUB_DIR}"
				MAN_FILES=`/bin/ls ${FROM_MAN_DIR}`
				CP_FAILED=0

				for i in ${MAN_FILES}
				do
					rm -f ${TO_MAN_DIR}/${i}
					cp ${FROM_MAN_DIR}/${i} ${TO_MAN_DIR}/${i}
					cmp -s ${FROM_MAN_DIR}/${i} \
						${TO_MAN_DIR}/${i} >/dev/null 2>&1
					if [ ${?} -ne 0 ]
					then
						echo " "
						echo "${MSGc2} ${TO_MAN_DIR}"
						CP_FAILED=1
						break
					fi
				done

				if [ ${CP_FAILED} -eq 0 ]
				then
					echo " "
					echo -n "${MSG75} ${INT_YESNO}"
					yes_or_no
					case "${answer}" in
					y)
						rm -f ${FROM_MAN_DIR}/*
						;;
					n)
						;;
					esac

					break
				fi

				for i in ${MAN_FILES}
				do
					rm -f ${TO_MAN_DIR}/${i}
				done
			else
				echo " "
				if [ -d "${man_dir}" ]
				then
					echo "${man_dir} ${MSG76}"
				else
					echo "${man_dir} ${MSG01}"
				fi
			fi

			echo " "
			echo -n "${MSG10} ${INT_YESNO}"
			yes_or_no
			case "${answer}" in
			y)
				;;
			n)
				break
				;;
			esac
		done
		;;
	n)
		;;
	esac
fi

sleep 2
${CLEAR}
echo " "
echo "${MSG54}"
echo " "

EXEC_FILE="${DESTDIR}/${FIRST_DIR}/123.v${VERSION}/${ARCH}/bin/setup123"
COMMAND="exec ${EXEC_FILE}_exe ${LANGUAGE} ${VERSION} \${*}"
rm -f ${EXEC_FILE}
${TOUCH} ${EXEC_FILE} 2>/dev/null
if [ ${?} -ne 0 ]
then
	echo " "
	echo "${MSG59}"

	bin_dir=""
else
	echo ":"                   >  ${EXEC_FILE}
	echo "#!/bin/sh"           >> ${EXEC_FILE}
	echo "#"                   >> ${EXEC_FILE}
	echo "#"                   >> ${EXEC_FILE}
	echo "# Copyright 1990 by Lotus Development Corporation, All Rights Reserved"                       >> ${EXEC_FILE}
	echo "#"                   >> ${EXEC_FILE}
	echo "#"                   >> ${EXEC_FILE}
	echo "LOTUS_OS_ENV=${OS}"  >> ${EXEC_FILE}
	echo "export LOTUS_OS_ENV" >> ${EXEC_FILE}
	if [ "${OS}" = "s" ]
	then
		echo "LOTUS_SETUP123_COLORS=0"      >> ${EXEC_FILE}
		echo "export LOTUS_SETUP123_COLORS" >> ${EXEC_FILE}
	fi
	echo "${COMMAND}" >> ${EXEC_FILE}
	echo "#"          >> ${EXEC_FILE}
	echo "#"          >> ${EXEC_FILE}
	${CHMOD} 755 ${EXEC_FILE}
	echo "${SH_NAME} : ${MSG60}"

	echo " "
	echo " "
	echo -n "${MSG77} ${INT_YESNO}"
	yes_or_no
	case "${answer}" in
	y)
		while :
		do
			bin_dir=""
			echo " "
			echo -n "${MSG78}(/usr/bin) "
			read bin_dir

			if [ -z "${bin_dir}" ]
			then
				bin_dir="/usr/bin"
			fi

			if [ -d "${bin_dir}" -a -w "${bin_dir}" ]
			then
				FROM_BIN_DIR="${DESTDIR}/${FIRST_DIR}/123.v${VERSION}/${ARCH}/bin"
				BIN_FILES="123 setup123"
				CP_FAILED=0

				for i in ${BIN_FILES}
				do
					rm -f ${bin_dir}/${i}
					cp ${FROM_BIN_DIR}/${i} ${bin_dir}/${i}
					cmp -s ${FROM_BIN_DIR}/${i} \
						${bin_dir}/${i} >/dev/null 2>&1
					if [ ${?} -ne 0 ]
					then
						echo " "
						echo "${MSGc2} ${bin_dir}"
						CP_FAILED=1
						break
					fi
				done

				if [ ${CP_FAILED} -eq 0 ]
				then
					break
				fi

				for i in ${BIN_FILES}
				do
					rm -f ${bin_dir}/${i}
				done
			else
				echo " "
				if [ -d "${bin_dir}" ]
				then
					echo "${bin_dir} ${MSG76}"
				else
					echo "${bin_dir} ${MSG01}"
				fi
			fi

			echo " "
			echo -n "${MSG10} ${INT_YESNO}"
			yes_or_no
			case "${answer}" in
			y)
				;;
			n)
				break
				;;
			esac
		done
		;;
	n)
		bin_dir=""
		;;
	esac
fi

echo " "
echo "${SH_NAME} : ${MSG61}"
echo " "
echo "${MSG66}"
echo " "
echo "     ${DESTDIR}/${SOFT_PRETEST}"
echo " "
echo "${MSG67}"
echo " "
if [ -z "${bin_dir}" ]
then
	echo "     ${DESTDIR}/${REL_BIN_PATH}"
else
	echo "     ${bin_dir}"
fi
echo " "
echo "${MSG68}"
echo " "
echo " "

if [ ! -z "${USERNAME}" -a -x "${EXEC_FILE}" ]
then
	echo "${MSG62}"
	echo -n "(${MSG70}) ${INT_YESNO}"
	yes_or_no
	case "${answer}" in
	y)
		if [ -x "${EXEC_FILE}" ]
		then
			echo " "
			echo "${MSG63}"
			exec ${EXEC_FILE} -s
		else
			echo " "
			echo "${MSG69}"
			echo " "
		fi
		;;
	n)
		echo " "
		echo "${MSG71}"
		echo " "
		echo "        ${EXEC_FILE} -s"
		echo " "
		echo "${MSG72}"
		echo " "
		echo "${MSG70}"
		echo " "
		echo "${MSG32}"
		echo " "
		;;
	esac
fi

sleep 10
