Subject: Re: Package paths: consensus?
To: None <tech-pkg@netbsd.org>
From: Greg A. Woods <woods@most.weird.com>
List: tech-pkg
Date: 01/09/1999 13:19:49
[ On Sat, January 9, 1999 at 12:01:47 (+0100), Thorsten Frueauf wrote: ]
> Subject: Re: Package paths: consensus?
>
> I see only few packages who really make sense to have their configs in
> /etc (every package that is configured by host *only*, like ssh and
> its keys).

Actually the differentiation of whether or not a package's config files
should go "with the package" (i.e. in the /usr/pkg or whatever
hierarchy, which may, of course, be a separate filesystem), or go "with
the system" (i.e. in /etc or some sub-directory thereof, which will
normally be on the "root" filesystem) has *NOTHING* at all to do with
the kind/type/purpose of the package.  (And if you continue to think of
this as important, please read on before you blow your top.)

There are many and varied reasons for going each way, but the one
concrete an un-disputable reason is for clients which share a common pkg
hierarchy from a file server (eg. over NFS).  In these cases one might
percieve a difference between kind/type/purpose of package and wether or
not its config files need to be local to each client machine or not.
However as we've already discussed to death in this thread, this issue
is common to *all* config files, not just pkg config files, and
inventing a scheme to deal with this specially in the pkgs system is
extremely counterproductive.

However as I and a few others have pointed out, propbably a dozen times
or more, it's extremely trivial to arrange for files that would normally
be installed in /usr/pkg/etc to appear in /etc/pkg (or even /etc) in
those cases where config files must be stored on a filesystem unique to
the client machine(s).  There's nothing new here and I believe Curt's
original proposal covered this issue quite well (though I've gone and
deleted it, so I'm going from memory here).

As has been noted by others in this discussion the only really important
aspect of this discussion is how to populate /etc/pkg (or whatever) with
template config files.  Several ideas have been put forward, with
varying degrees of complexity and completness.  The trivial solution is,
of course still easy to do manually too with no extensions or
standardised solution blessed by the pkg system (and if you don't
remember it, let me know and I'll reiterate it).

The name of the Unix game here is "flexibility".  Hard-coding the
pathnames for pkg config and run-time files as the fully qualified
pathnames /etc and /var may make life simple in some circumstances but
it completely and totally precludes any other options (at least in a
scalable fashion).  Pleast let us avoid those headaches!

-- 
							Greg A. Woods

+1 416 218-0098      VE3TCP      <gwoods@acm.org>      <robohack!woods>
Planix, Inc. <woods@planix.com>; Secrets of the Weird <woods@weird.com>