Subject: Re: everything is a dependency and preventing removal
To: NetBSD Packages Technical Discussion List <email@example.com>
From: James K. Lowden <firstname.lastname@example.org>
Date: 01/10/2003 16:33:29
On Fri, 10 Jan 2003 13:35:27 -0500 (EST), "Greg A. Woods"
> > Can anyone share an ideas, experiences or examples of other operating
> > system packaging tools for preventing accidental removal of important
> > packages?
> > For example, pkg_add may need tar, maybe gzip libs, maybe ftp, and
> > maybe some basic shell utils.
> All I can say is that the way pkgsrc iteslf does this now (by not
> registering the installed package) is completely bogus.
Why not keep two databases, say, /var/db/pkg/ and /var/db/syspkg? Then
the immutability of the package wouldn't be an attribute of the package,
but rather of its installation, protected by separate privileges. A
knowledgeable user could move (especially if a "pkg_chmod" tool were
available) a package's database records back and forth, which could be a
Likewise, whether or not a package is integral to the system depends on
the value of "system". How it should be treated/installed is a function
of what OS we're talking about. I would put that information with other
system-dependent lists, in /etc. That may lead to a certain amount of
While I'm more-or-less on the subject, will someone please explain to me
why /var for the database? It's not a dynamic set of data, the way mail
spools and logs are. It can't be blown away without dire consequences,
the way /var can otherwise be. It's fairly static system configuration
information. The right place is /usr/pkg/var, because:
1. it's integral to /usr/pkg
2. it shares the read-only or r/w requirements of /usr/pkg
3. it doesn't steal from /var, which needs headroom
I'm sure I'm not the first guy to observe this. What am I missing?