Subject: Re: Newbie Questions
To: NetBSD User's Discussion List <netbsd-users@NetBSD.ORG>
From: Greg A. Woods <woods@weird.com>
List: netbsd-users
Date: 01/28/2002 18:51:03
[ On Monday, January 28, 2002 at 01:20:56 (-0600), Richard Rauch wrote: ]
> Subject: Re: Newbie Questions
>
> ...which makes a pretty good argument for just copying over the new one
> and editing it, if you have much by way of personal preferences at
> variance with the defaults.

except for the fact that if you track pkgsrc-current then every time you
update the official copy you'll have to do a three-way merge of your
changes and the official changes.

It's much better to simply use some sort of user-interface that allows
multiple windows and copying of displayed lines from one window to
another so that you can open the defaults read-only and copy just those
definitions you wish to change locally.

This same argument applies to using /etc/defaults/rc.conf too!  ;-)

>  (^&  Trying to figure out what *new* options
> have been added seems like a chore.  (Unless there's some guarantee that
> the order of options will never change so that you can sanely diff the new
> defaults against the old.  Even then, you have to remember to make a copy
> somewhere before you delete the old defaults file.  And, if the meaning of
> options ever changes, you have more trouble trying to merge stuff in.)

Which is exactly why you should avoid copying the entries you do not
change!  ;-)

> Practice shows me that it's undesirable to update pkgsrc on a regular
> basis.

It depends on what you mean by "regular".  I do so on about a weekly
basis, but then I do a lot of building and testing of binary packages.

It probably also depends on how many packages you build, and perhaps
sometimes on which particular packages you build.  Some have many more
deeply nested dependencies than others.

>  After the Nth time of rebuilding libpng, and hence reinstalling
> all and sundry, because some obscure package *really* thinks that it needs
> the latest and greatest libpng, I stopped updating pkgsrc.  Assuming
> infrequent updates of pkgsrc, I still maintain that it's easiest to copy
> the file to /etc/, then browse it and make changes.

if you're just using pkgsrc as an easy way to build and install packages
then you might be just as happy never updating pkgsrc until you upgrade
your entire base OS.

As for the likes of libpng, or worse that G.D. horrible libgd thing, I
am working on modifying pkgsrc so I can build all libraries only
statically, and thus change all the dependencies on the likes of libpng
and libgd to be BUILD_DEPENDS (i.e. build-time only dependencies).  My
experience so far as been very joyous and has given me a great sense of
relief, removing many stresses and delays I previously encountered when
trying to upgrade or build som some new package that uses these
libraries.  Now I can install a new release of libpng, or libgd, or
both, and yet all my existing binaries keep on working!

-- 
								Greg A. Woods

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