Subject: Re: When DEPENDS can be upgraded in place
To: None <tech-pkg@netbsd.org>
From: Dan Winship <danw@helixcode.com>
List: tech-pkg
Date: 09/09/2000 15:52:11
> I think the real answer is to split all packages that supply both
> development (i.e. which fulfill BUILD_DEPENDS needs) and also run-time
> (i.e. which fulfill RUN_DEPENDS needs) components into to separate
> packages.

This is how RPM and Debian packages work. It seems to work for them.
(Well, except that their naming convention is "glib" (shared
libraries) and "glib-devel" (static libraries and headers), and then
you get people saying "I have the glib package installed, why is this
program saying glib.h not found?". I think using "glib-runtime"
(shlibs) and "glib" (static libs and headers, depending on
"glib-runtime") would make more sense.)

> In order to clean up the remnants of old unnecessary run-time packages
> you need only run a daily/weekly/monthly script that'll parse through
> the pkg dependency tree and figure out if any of them are still required
> by remaining applications.

You can do better than that. Just mark the runtime packages as being
"disposable", and then modify pkg_delete so that if it deletes the
last package depending on a disposable package, then it deletes the
disposable package itself as well.

-- Dan