Subject: Re: providing a feature/capability instead of specific package dependency?
To: NetBSD Packages <tech-pkg@netbsd.org>
From: Dick Davies <rasputnik@hellooperator.net>
List: tech-pkg
Date: 10/14/2004 19:52:26
* Hubert Feyrer <hubert@feyrer.de> [1037 18:37]:
> On Thu, 14 Oct 2004, Julio M. Merino Vidal wrote:
> >I think that what RPM or Debian packages do is to pick up a default package
> >for each feature (at least Debian picked up exim for 'mta', IIRC).  This 
> >way,
> >if the feature is not installed, a package is picked up automatically;
> >otherwise, the one installed in the machine will be used.
> 
> This does not answer my question.
> 
> Right now, a mapping from dependency to a filename to download/install is 
> easy. How do you propose to map 'mta' to 'exim'? What if sendmail is 
> installed?

Knee jerk reaction is to use meta-packages - maybe add a services/
category.
You could have a conditional dependency list that would be configurable by 
mk.conf flags like

MTA_PROVIDER=exim
HTTP_PROVIDER=thttpd

and so on. Then any CGI you install just requires services/http and job done.

I'm not sure how far that can take you (once you start requiring a webserver
you want to start asking where the CGI directory is), but then my viewpoint is skewed.

I've just spent the last week trying to get PHP apps to talk to PostGres
instead of MySQL, and ended up installing another database just for a
quiet life....

-- 
common sense is what tells you that the world is flat. - Principia Discordia
Rasputin :: Jack of All Trades - Master of Nuns