-------- Forwarded Message --------
From: Jeffrey Hutzelman <jh...@cmu.edu>
To: Marco d'Itri <m...@linux.it>
Cc: jh...@cmu.edu
Subject: Re: Bug#46049: local services
Date: Tue, 11 Oct 2011 14:08:55 -0400

On Tue, 2011-10-11 at 19:41 +0200, Marco d'Itri wrote:
> On Oct 11, Jeffrey Hutzelman <jh...@cmu.edu> wrote:
> 
> > > > /etc/service.d -> wontfix ? Or is somebody still thinking about it ?
> > > I do not expect that this will happen, ever.
> > Any particular reason?
> Low benefits, high cost and complexity.
> Configuration files are editable for a reason.

Sorry; I don't buy it.  The added complexity of examining a directory
full of files instead of a single file is not that high, and the
benefits are significant, which is why this approach has been deployed
throughout the system.  In particular, it eliminates two problems, which
taken together result in an intolerable situation:

1) Users wishing to add or update entries in /etc/services are forced
   to take manual action on every update, to merge local changes in
   with the new packaged database.  UCF would make this a little less
   painful, but as you correctly point out, it can't be used here
   unless/until it is promoted.  And, it doesn't really resolve the
   problem, because the user _still_ has to react to every update.

2) Maintainers needing to add or update entries in /etc/services are
   forced to submit a bug and wait for an updated netbase.  I haven't
   paid attention to how promptly this happens, so I'm not suggesting
   that this takes too long.  However, you're pretty much forced to
   choose between infrequent updates, which creates problems for new
   packages, or frequent updates, which exacerbates (1).  Additionally,
   this puts you in the critical path for every new network-based
   service, which creates both a bottleneck and unnecessary work for
   you.


I can understand not wanting to introduce much additional complexity
into netbase which, after all, is both fairly simple and an important
package.  Personally, my preferred solution is the introduction of
libnss-dir:

Description: nss module to use directories (e.g /etc/hosts.d)
  This Name Service Switch (NSS) module works much like the 'files'
  service, but allows the local database to be constructed from an
  entire directory of files (e.g. /etc/hosts.d) instead of only a
  single file (/etc/hosts).
  .
  This module fully supports the ethers, hosts, networks, protocols,
  rpc, and services databases.  It also implements passwd, group, and
  shadow, but use of these is not recommended except under unusual
  circumstances, because it may not interact well with tools such as
  adduser(8).


However, I don't think the complexity of merging e.g. /etc/services.d is
too high.  Particularly, while inelegant, 'cat' is actually sufficient
as a merge tool for this case.

-- Jeff






-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to