Subject: Re: rc.local and rcorder(8)
To: NetBSD-current Discussion List <>
From: Charles Shannon Hendrix <>
List: current-users
Date: 06/26/2002 00:51:22
On Tue, Jun 25, 2002 at 07:45:05PM -0600, Rick Kelly wrote:

> When you do a "make upgrade" to upgrade a library, all applications that
> used that library are removed, and then the applications are supposed to
> be sucked down and rebuilt after all else is updated. I've seen applications
> removed and never rebuilt by pkg.

I have seen the same thing.  The last time I took a spare machine and
did a total rebuild, a lot of things either failed to build or just
never came back after being uninstalled.  It was too much a mess to fix,
so I just took that opportunity to upgrade the machine.

/usr/pkgsrc has required a lot of handholding for the last few upgrades,
and one (I thought) simple library upgrade ended up triggering bout 32
hours of rebuilding.  I just put this rebuild on a spare machine and
let it go, but most of the rebuilding triggered really was not needed.

Of course, I don't really see this as pkg's fault: applications are
getting more hairy with each passing week, and the dependencies are
daunting sometimes.

> Now if you look at my other systems...  I generally don't redirect X 
> applications across systems.  I have emacs on all my systems. Well, pkg
> builds the X version. If I want the tty version I have to build it by hand.

...or you could build emacsNN-nox11 where NN is the version.

> The pkg stuff deleted postgressql while I had a running database.

I lost postgresql too.  Since my database application is entirely back
burner, I didn't realize it at first.  PostgreSQL is now a /usr/local/src
maintained program, though not for that reason.

> I used to have gnumeric on this system...

gnumeric has some nasty Gnome-type dependency issues that might have 
caused a snag.

I think some of these problems are caused by the addition of libraries, or
even removable of them.  For example, you might have this:

* library A
* library B
* library C
* program A
* program B
* program C

You upgrade library A which the other two depend on, so this triggers an
application rebuild too.  But the library creator has now added library
D which the apps all use.  This dependency fails to the applications
don't return.

This is a common occurance with Gnome, where in the past libraries have
been created, removed, split, combined, etc.

I assume that the dependencies for the programs should have triggered an
install of library D, but it seems like this doesn't happen in some cases.

> >rc.local is just an ugly and literally unnecessary wart on its side, I
> >wouldn't expect it to go away entirely any time soon.

I actually still use this, and I don't see why it's ugly or unnecessary.
It usually is a temporary stopping point before I finish a good rc.d
script, but sometimes there really is no need for that, so things stay
in rc.local.

I also put things in there which are not program startups, though I
suppose that could also go in rc.d.

> So, only applications from the NetBSD distribution and pkg should be allowed?

No, you can create some too.

> Microsoft is working on this.