Software installation opinions needed

David Collier-Brown davecb at yunexus.YorkU.CA
Sat Sep 22 02:02:55 AEST 1990


[Alas, I couldn't send mail to ddh at dash.udev.cdc.com: here's my views]
ddh at hare.cdc.com (dd horsfall x-4622) writes:
>Is there a "convention" (or even a "standard", who knows) which defines
>the difference in content between  /bin, /usr/bin, /usr/local/bin,
>/usr/new, /usr/etc, /usr/5bin, /usr/sbin ... and so forth, all the 
>combinations that start with / and end with bin or lib?

	Sure, but its a history, not a standard (:-)).
	/bin is stuff you need to get up single-user
	/usr/bin is for multi-user on a V6 or later system
	/usr/local (or /usr/local/bin if you have a
		/usr/local/{lib|include|man}) is for local
		more-or-less trusted tools, post v6/v7
	/usr/new (or /usr/local/bin/new, or whatever) is
		either untrusted and beta-test stuff (in the olden days) 
		or "what we added" (in the newden days)
	/usr/ucb is the stuff added at the time of release of the
		University of California, Barkley (they spell it funny (;_))
		virtual-memory version of V7/V32
	/usr/5bin on Berkleyzoid boxes is sys V stuff added by the vendor
	/usr/sbin is ...I forget.

>Context: we are about to release a software product which will include
>the usual (for us) stuff: program binary, man pages, example problems, 
>installation verification data; for each of these, do we
>a) recommend a particular directory for its installation?
>b) leave it up to each site/purchaser to figure out for themselves
>   what's best for their configuration?
>c) Some combination -- recommended location for those who don't want to
>   think too hard about it, guidelines for the rest?

	c) is the least intrusive.

>Software installation: should we
>a) _Move_ the program binary to a place where people expect to find such
>   things (i.e., something that's probably already in their $path) ?
>b) Recommend adding a new directory to the $path?
>c) _Leave_ the binary in a product/version catalog, but build a link to
>   it from the "preferred" place in the path?  Hard or soft link?

	Well, for small programs I'd suggest moving/copying to the
	agreed-upon location from the installation area. For large
	or complex ones, I'd leave most of the stuff in an agreed-
	upon location or symlinked to same, and optionally move
	some small component into people's paths.

	An unmentioned problem is the ``where did I come from'' problem
	when the application looks for the place the rest of it lives in.
	TeX uses environemnt variables, some things leave symlinks in
	well-known places (/interleaf/4.0 is a symlink to another well-known
	typesetter) and some leave /etc/whatever.config files around.

	I recommend the same script that installs, deinstalls and updates
	versions of the product leave both a symlink somewhere plausible
	(eg, /usr/local/lib/<product-name>) and copy the minimum number
	of components to the selected bin directory. This script lives in
	the installation area, so that when the customer reinstall unix,
	(s)he can reinstall the program easily.

>How many of your third-party (i.e., not vendor-supplied) products fall
>into the above categories.  Which do you prefer?  Did someone provide
>an installation script (or even document) that would be an
>exemplary model for us to follow?  If so, would you send me a copy?

	See if you can get the InterLeaf manual for sunos... I don't have
	one any more.

>Are there any specific "things" that an install script did that 
>particularly annoyed you?  In other words, complete this sentence:
>"Whatever you do, DON'T DO THIS..."

	... assume that there will be exactly one sucessfull installation.

>Lastly, what else in this area should I know that I don't even know
>that I don't know (as compared to the things that I know I don't know)?

>( Sidebar: How many of the above directories are local to my site and I 
>don't know any better?  Are any of them specific to certain vendors?  Does
>the list of "standard" or "conventional" directories vary between
>SysV and BSD based systems? )
> 
>Readers with an opinion in the above areas are invited to reply to the
>address in .sig; I can't imagine that a large number of general
>net.people have any interest in this...

	You might be surprised: feel free to summarize advice
	in a posting...

>   The Horse
>                                       +    Control Data Corporation      
>   Dan Horsfall     +1-612-482-4622    +    4201 Lexington Ave North      
->   Internet   ddh at dash.udev.cdc.com    +    Arden Hills MN 55126 USA      

--dave

-- 
David Collier-Brown,  | davecb at Nexus.YorkU.CA, ...!yunexus!davecb or
72 Abitibi Ave.,      | {toronto area...}lethe!dave or just
Willowdale, Ontario,  | postmaster@{nexus.}yorku.ca
CANADA. 416-223-8968  | work phone (416) 736-5257 x 22075



More information about the Comp.unix.questions mailing list