[alt.sources] Patch to Instcpio.sh on Unix PC

kak@hico2.UUCP (Kris A. Kugel) (08/31/90)

Note: known minor bug in this patch

For the five of you or so who are still running ua and the office,
I've got a small patch allowing install an installable file
that is still compressed.

This reduces the space necessary when you have both installable file
and the unpacked contents on your disk at the same time.

The above mentioned bug is that at least on my system, the size of the
cpio archive is used as an estimate of the size that will be used by
the unpacked files, instead of the Size entry in the archive.
(the estimate is not correct when used with a compressed archive)
I suppose I could have changed this back to use Size, but I was not
sure that I wanted to, seems to me I remember waiting a considerable
time for cpio to read in just the Size file by itself.

This stuff was produced for a 3.51m system.

THIS FILE CONTAINS:
	patch for /usr/bin/Instcpio.sh
	patch for /usr/lib/ua/Suffixes


PATCH 1: apply by hand , add this to end of /usr/lib/ua/Suffixes file
  Name=Installable File
  Suffix=+IN.Z
  Description=*Installable File
  Default=Open
  Open=SH -pw /usr/bin/Instcpio.sh %o
  Create = ERROR
  Open=SH -pw /usr/bin/Instcpio.sh %o
  Create = ERROR
  Help   = EXEC -d /usr/bin/uahelp -h /usr/lib/ua/admin.hlp -t "Email Software"
  
PATCH 2:
----cut here--------cut here--------cut here--------cut here--------cut here----
*** /usr/bin/Instcpio.sh.bak	Sat Sep 16 15:27:46 1989
--- /usr/bin/Instcpio.sh	Fri Aug 31 07:50:33 1990
***************
*** 58,64
  	The following installable software packages are
  	available in a public file folder:
  	
! 	`ls *+IN | sed s/+IN//gp `
  	
  END
  	while true

--- 58,64 -----
  	The following installable software packages are
  	available in a public file folder:
  	
! 	`ls *+IN *+IN.Z | sed s/+IN.*$//gp `
  	
  END
  	while true
***************
*** 65,71
  		do
  		echo "Please type one of these names and touch Return:\c"
  		read FILENAME
! 		FILENAME=${SOURCEDIR}/${FILENAME}+IN
  		if [ -f "$FILENAME" ]
  		then
  		break

--- 65,71 -----
  		do
  		echo "Please type one of these names and touch Return:\c"
  		read FILENAME
! 		FILENAME=${SOURCEDIR}/${FILENAME}+IN*
  		if [ -f "$FILENAME" ]
  		then
  		break
***************
*** 98,104
  
  # ~~~~~~~~~~~~~~~~~~~~~~~~~~
  		echo "\n\n\n\n\n\n                     Preparing for installation\n\n\n\n\n\n"
! 		cpio  -icBdu < $FILENAME 2>/tmp/cplog$$
  		err=$?
  		if [ "`grep \"Out of phase\" /tmp/cplog$$`" ]
  		then

--- 98,112 -----
  
  # ~~~~~~~~~~~~~~~~~~~~~~~~~~
  		echo "\n\n\n\n\n\n                     Preparing for installation\n\n\n\n\n\n"
! 		case $FILENAME in
! 			*.Z) ISCOMPRESS="y" ;;
! 		esac
! 		if [ "$ISCOMPRESS" = "" ]
! 		then
! 			cpio  -icBdu < $FILENAME 2>/tmp/cplog$$
! 		else
! 			zcat $FILENAME | cpio  -icBdu 2>/tmp/cplog$$
! 		fi
  		err=$?
  		if [ "`grep \"Out of phase\" /tmp/cplog$$`" ]
  		then