[unix-pc.general] +IN

bbh@whizz.UUCP (Bud Hovell) (11/04/88)

I have several installable programs taken from the STORE, each of which
specifies '/usr/lbin' as the residence for the program. I want all such
executables to live in '/usr/local/bin', but have not yet been able to
sed the changes and get the resulting +IN file to execute the installation.

I get a message stating that the program is not installable and suggesting
I get another copy.

Can anyone point me at what is required to modify these files and have
them still install properly? 
 
                                                    :::::::::::::::::::::::::
                                                    | OVERTURE SYSTEMS CORP |
                    Bud Hovell                      |    Lake Oswego, OR    |
                                                    |     (503)636-3000     |
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
| UUCP{attmail!, tektronix!tekgen!teksce!bucket!, pacbell!safari!}whizz!bbh |
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
                   "Follow your bliss" - Joseph Campbell

richard@islenet.UUCP (Richard Foulk) (11/06/88)

} I have several installable programs taken from the STORE, each of which
} specifies '/usr/lbin' as the residence for the program. I want all such
} executables to live in '/usr/local/bin', but have not yet been able to
} sed the changes and get the resulting +IN file to execute the installation.

Since the Install scripts appear to be mostly hand written I
think you have to either hand install things or move them
around after the install.  Works for me.

-- 
Richard Foulk		...{vortex,ihnp4,spl1}!islenet!richard
Honolulu, Hawaii

jeff@cjsa.WA.COM (Jeffery Small) (11/07/88)

In article <411@whizz.UUCP>, bbh@whizz.UUCP (Bud Hovell) writes:
> I have several installable programs taken from the STORE, each of which
> specifies '/usr/lbin' as the residence for the program. I want all such
> executables to live in '/usr/local/bin', but have not yet been able to
> sed the changes and get the resulting +IN file to execute the installation.
> 

A +IN or UNIX-PC Installable file is simply a cpio archive created from a
number of other files.  If you want to look at the contents and/or work
on the +IN file, do the following:

1:  Make a dummy directory (eg:  mkdir /tmp/X) and move the +IN file into
    the newly created directory.

2:  Unpack the archive with the command:   cpio -icBvdua  < *+IN

3:  You will get the five files: " Size", "Name", "Files", "Install" & "Remove" 
    along with all of the other files that make up the distribution.

4:  "Install" is a shell script with commands for performing the installation.
    In here, you will find the instructions for installing the programs in
    /usr/lbin.  Edit Install to force installation in /usr/local/bin.  You
    can make any other changes you feel are appropriate.

5:  Now, you must also edit "Remove" which is the shell script which
    un-installs the application.  Make corresponding changes so that
    Install and Remove work properly together.
    
    
    > I get a message stating that the program is not installable and suggesting
    > I get another copy.

    Remember, if you make an editing error and create a script which doesn't
    work, then you won't be able to run the Install/Remove Software options
    which is what has apparently happened here.  Don't get another copy, just
    look at what you have done and fix it.

6:  When all editing changes have been made, pack everything back up.  If the
    application came from THE STORE!, there is usually a little program to
    do this called makeCPIO or something like that.  You can do this yourself
    by removing the original +IN file and then executing the command:

	cat ./Files | cpio -ocBv > filename+IN
    
    where filename is the original name of the cpio archive.

7:  Now, move the +IN file to the ~uucp directory and you are ready to run
    the Install Software sent by Electronic Mail option from the Office.

8:  There is a good discussion of the Install Procedures in the "Interface
    Specification" book which comes with the Development Set Manuals.

--
Jeffery Small    (206) 485-5596            uw-beaver!uw-nsr!uw-warp
C. Jeffery Small and Associates                                    !cjsa!jeff
19112 152nd Ave NE - Woodinville, WA  98072           uunet!nwnexus

clb@loci.UUCP (Charles Brunow) (11/07/88)

In article <411@whizz.UUCP>, bbh@whizz.UUCP (Bud Hovell) writes:
> I have several installable programs taken from the STORE, each of which
> specifies '/usr/lbin' as the residence for the program. I want all such
> executables to live in '/usr/local/bin', but have not yet been able to
> sed the changes and get the resulting +IN file to execute the installation.
> 


	Create /usr/lbin and conform.  It's easier and simpler and it
	conforms with the path used by UUCP from other machines, which
	is hard coded in.

	It is probable that the sToRe programs also have hard-coded
	paths in them, and from a security point of view, that may be
	a good thing.  So keep your /u/l/b dir, but add /usr/lbin.

-- 
			CLBrunow - KA5SOF
	clb@loci.uucp, loci@csccat.uucp, loci@killer.dallas.tx.us
	  Loci Products, POB 833846-131, Richardson, Texas 75083

ebd@cup.portal.com (Elliot B Dierksen) (11/07/88)

+IN files are nothing more than cpio output with ascii headers (the -c option)
if you wish to modify them, you can copy the files out in a temporary directory.
then modify the Install shell script as you wish and cpio -oc all the files 
back into a new +IN file in /usr/spool/uucppublic. WARNING! i would suggest
that you make a back-up copy of the original file before you alter it, just
in case!!! 

Elliot Dierksen
ebd@cup.portal.com

thad@cup.portal.com (Thad P Floryan) (11/07/88)

Re: Bod Hovell's comments about STORE distributions ending up in /usr/lbin
instead of /usr/local/bin, do what I did (since I prefer /usr/local/bin too):

snapshot ALL your system's files

      e.g.    ls -lR / > someplace

install the +IN file

snapshot again, and see what changed.  Then move the &^%^%$%* files to where
YOU want them to be!

Though the installable software sequence is probably a lifesaver for the
naive or beginning UNIXpc users (and it IS neato, don't get me wrong! :-)  I
don't appreciate others' assumptions concerning MY systems' organization.

It's too bad there isn't some kind of "parameter override" capability.

In any event, the sequence I outlined above does work, though it can be
tedious.  Most the STORE's distributions don't create too many new files,
so the hassle-factor is low.  CAUTION: some of the install process WILL
alter some files in the various UA directories and files, and that's why
I suggested the "-lR" option on the ls so you could see what files got
ALTERED in addition to those ADDED!


Thad Floryan [thad@cup.portal.com (OR) ...!sun!portal!cup.portal.com!thad]

dbw@mtunk.ATT.COM (d.b.wood) (11/08/88)

The +IN file has to be created with cpio -ocB (the "B" asking for blocked
output).  If not, the installation will fail with the error message.

To fix this particular problem, cpio -ic <file+IN as root in a clean directory,
then find . -print | cpio -ocB >filename+IN.  (You'd better be root because
sometimes user and group id and permission have to be copied.)

Dave Wood