Subject: Re: don't remove ksh
To: NetBSD Userlevel Technical Discussion List <tech-userlevel@netbsd.org>
From: Space Case <wormey@eskimo.com>
List: tech-userlevel
Date: 10/20/2001 17:55:17
On Oct 20,  1:56pm, Greywolf wrote:
>I don't want my system built either way you've described, and I don't think
>I'm alone in my statements and conviction.
>
>Someone (besides Greg) feel free to correct me if I'm wrong.

Since I'm a sysadmin for a lot of SGI boxes, I'm rather fond of SGI's inst
system.  Not only does it give fine-grained control over what gets installed,
but also is able to give info about files installed.

Examples of various things on my Indy:

<2 indy /disk2/allen>% showfiles -- libc.so
f 56357 2364464 eoe.sw.base             lib/libc.so.1
f 64839 2732696 eoe.sw.base           m lib32/libc.so.1
f 18177  5726 dev.sw.abi              usr/lib/abi/data/libc.so.1.names
f 25479 1077520 dev.sw.abi              usr/lib/abi/libc.so
l     0     0 eoe.sw.base             usr/lib/libc.so
l     0     0 eoe.sw.base             usr/lib/libc.so.1
l     0     0 eoe.sw.base             usr/lib32/libc.so
l     0     0 eoe.sw.base             usr/lib32/libc.so.1
l     0     0 eoe.sw.base             usr/lib32/mips3/libc.so
l     0     0 eoe.sw.base           m usr/lib32/mips3/libc.so.1
l     0     0 eoe.sw.base             usr/lib32/mips4/libc.so
f 39124 2716556 eoe.sw.base           m usr/lib32/mips4/libc.so.1
f  1746 1269384 dev.sw.abi              usr/lib64/abi/libc.so
<3 indy /disk2/allen>% showfiles -- passwd
f 48872  1248 eoe.sw.base           c etc/passwd
f 22546   361 eoe.sw.base           c etc/passwd.sgi
f 44223 40380 eoe.sw.base             usr/bin/passwd
f 36334 21976 nfs.sw.nis              usr/bin/yppasswd
f 17819 22372 nfs.sw.nis              usr/etc/rpc.passwd
f 23071 43516 fw_apache.sw.apache     usr/freeware/apache/bin/htpasswd
d     0     0 fw_inn.sw.inn           usr/freeware/bin/auth/passwd
f  3625 14376 fw_inn.sw.inn           usr/freeware/bin/auth/passwd/ckpasswd
[etc.]

Where:
     -l   List in long format (the default).  Long format includes the
          following fields, in order:

          -  File type: file, link, directory, block special, character
             special, Fifo, or ? (unknown).
          -  Checksum.
          -  Size in blocks.
          -  Name of subsystem owning this file.
          -  Whether the file is a configuration file or a machine-dependent
             file.
          -  Pathname of file.

And an example showing the fine grain of selections, just in the base system:

<4 indy /disk2/allen>% versions eoe
I = Installed, R = Removed

   Name                 Date        Description

I  eoe                  08/14/2001  IRIX Execution Environment, 6.5.13f
I  eoe.books            08/14/2001  IRIX Execution Environment Books
I  eoe.books.help       08/14/2001  IRIX Help Books
I  eoe.books.sgi_admin  08/14/2001  IRIX SGI_Admin Books
I  eoe.man              08/14/2001  IRIX Execution Environment Man Pages
I  eoe.man.base         08/14/2001  Basic IRIX Man Pages
I  eoe.man.gifts_perl   10/13/2000  Perl Man Pages
I  eoe.man.gltools      10/13/2000  Graphics Library Tools Man Pages
I  eoe.man.imagetools   10/13/2000  Graphics Library Image Tools Man Pages
I  eoe.man.oampkg       08/14/2001  SVR4 Packaging Utility Man Pages
I  eoe.man.relnotes     08/14/2001  IRIX Release Notes
I  eoe.src              10/13/2000  IRIX Execution Environment Source
I  eoe.src.xfsrt        10/13/2000  XFS Realtime & Guaranteed-Rate Source Code
I  eoe.sw               08/14/2001  IRIX Execution Environment Software
I  eoe.sw.acct          08/14/2001  System Accounting
I  eoe.sw.acl           08/14/2001  Access Control Lists
I  eoe.sw.audit         08/14/2001  Security Audit Trail Software
I  eoe.sw.base          08/14/2001  IRIX Base Execution Environment
I  eoe.sw.cdrom         08/14/2001  CD-ROM Filesystem and CD audio Support
I  eoe.sw.cpr           08/14/2001  SGI Checkpoint-Restart Software
I  eoe.sw.csaacct       08/14/2001  CSA, Comprehensive System Accounting
I  eoe.sw.dlpi          08/14/2001  Data Link Provider Interface
I  eoe.sw.dmi           08/14/2001  Hierarchical Storage Management Support
I  eoe.sw.efs           08/14/2001  EFS Filesystem
I  eoe.sw.fonttools     10/13/2000  Graphics Library Font Tools
I  eoe.sw.gfx           08/14/2001  Graphics Execution Environment
I  eoe.sw.gifts_perl    10/13/2000  Perl Software
I  eoe.sw.gifts_perl_lib  08/14/2001  Perl Libraries
I  eoe.sw.gltools       08/14/2001  Graphics Library Tools
I  eoe.sw.imagetools    10/13/2000  Graphics Library Image Tools
I  eoe.sw.ipgate        08/14/2001  IP Network Gateway Support
I  eoe.sw.jlimits       08/14/2001  JLIMITS, Job Limits
I  eoe.sw.kdebug        08/14/2001  Kernel Debugger modules
I  eoe.sw.miser         08/14/2001  Miser: Resource management system
I  eoe.sw.named         08/14/2001  Berkeley Internet Name Domain Server
I  eoe.sw.netman        08/14/2001  Network Management SNMP Support
I  eoe.sw.oampkg        08/14/2001  SVR4 Packaging Utility
I  eoe.sw.optinput      08/14/2001  Optional Input Devices
I  eoe.sw.perf          08/14/2001  Performance Measurement Utilities
I  eoe.sw.ppp           08/14/2001  Point-to-Point Protocol Software
I  eoe.sw.rcs           08/14/2001  Revision Control System Utilities
I  eoe.sw.rfindd        08/14/2001  rfind Server Utilities
I  eoe.sw.rm_media      08/14/2001  Removable Media Software
I  eoe.sw.sccs          08/14/2001  Source Code Control System Utilities
I  eoe.sw.slip          08/14/2001  SLIP Software
I  eoe.sw.spell         08/14/2001  Spell Utilities
I  eoe.sw.stp           08/14/2001  Scheduled Transfer Protocol
I  eoe.sw.svr4net       08/14/2001  System V Release 4 Networking
I  eoe.sw.termbase      10/13/2000  Base (required) Terminal Information Files
I  eoe.sw.terminfo      10/13/2000  Terminal Information Files
I  eoe.sw.usrshare      08/14/2001  Miscellaneous shared text/help/data files
I  eoe.sw.uucp          08/14/2001  UUCP Utilities
I  eoe.sw.xfsmcli       10/13/2000  XFSM Client Software
I  eoe.sw.xfsmserv      10/13/2000  XFSM Server Software
I  eoe.sw.xfsrt         08/14/2001  XFS Realtime & Guaranteed-Rate Support
I  eoe.sw.xlv           08/14/2001  XLV Volume Manager
I  eoe.sw.xlvplex       08/14/2001  XLV Volume Manager Plex Support


In the bundle of files which makes up an inst'able package, there are files
that contain installation info saying, among other things, which other
packages (and version of those packages) that this one depends on; for the
config files, whether this one should be installed with a .N extension,
leaving the original, or installing this one as is, and moving the original
to a .O extension (and a `versions changed` tells you which ones need merging);
and has file sizes and checksums so that things can be verified as they are
being installed, and so that modified config files can be noted and dealt with.
This last bit would go a long ways toward helping with "/etc merge hell".

I would consider it a big win if such a system were implemented, but I fear
that it might take considerable effort to maintain it...

~Steve


-- 
Steve Allen - wormey@eskimo.com   http://www.eskimo.com/~wormey/   ICQ 6709819

Faith is the quality that enables you to eat blackberry jam on a picnic
without looking to see whether the seeds move.

Contrary to popular belief, Unix is user friendly.  
It just happens to be selective about who it makes friends with.
	-Kyle Hearn  <kyle@intex.net>

Katz' Law:
	Man and nations will act rationally when all other
	possibilities have been exhausted.