tech-userlevel archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Setlist maintenance



On Tue, Dec 11, 2012 at 10:11:28PM +0000, Mindaugas Rasiukevicius wrote:
> Alistair Crooks <agc%pkgsrc.org@localhost> wrote:
> >
> >     http://www.netbsd.org/~agc/gensetlist-20101031.tar.gz
> > 
> > I'm not proposing it be added to NetBSD, merely hoping that its
> > presence could make set list maintenance easier.
> > 
> > <...>
> 
> Is there a reason why this was not merged?  Also, any particular reason
> why we could not always auto-generate sets?

I do not think it is a good idea to auto-generate set lists.  I think
there is real value to forcing the developer to actually think about
what files he or she is causing to appear in the built system.

Unlike many other package-building systems, NetBSD's setlists really
constrain the built system so that it contains only what is in the
lists.  That is a good thing.  When I was building NetBSD based embedded
systems for a living, this frequently caught cases where developers
(ours, not NetBSD's -- but myself included) screwed up their Makefiles
and put all kinds of random crap into the system by accident.

We were migrating away from a legacy build system that ran the native
builds of another BSD flavor and all sorts of add-on packages, let
them install whatever they wanted to, then tried to _delete_ anything
anyone noticed was extra.  I can't tell you what a disaster that was.

NetBSD's setlists are also very useful for building alternate, smaller
versions of the system -- you can build a set that is actually a small
subset of "base" or "etc".  I think this isn't widely known, but it is
a really neat trick (Matt Thomas pointed it out to me).  I worry that
automatically generated setlists would bring with them unexpected
dependencies between components which would make this harder to do, since
we would go from actually thinking about everything any component causes
to be in the built system to just naively accepting whatever the first
attempt at the Makefiles happens to put there -- missing opportunities
to pare things down or adjust them so they work better without creating
later incompatibilities.

So, I like Alistair's tool but I strongly urge that it not be used by
default to generate the setlists for the sets shipped as NetBSD.

Thor


Home | Main Index | Thread Index | Old Index