pkgsrc-Users archive

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

new package pkg_rolling-replace



pkg_rolling-replace (in pkgtools) was written to provide a middle way
between the missing-packages problems of "make update" and the
inconsistencies caused by "make replace".  It does a "make replace" on
packages that need update in dependency-sorted order, where needs
update means

  unsafe_depends flag set on package

  rebuild flag set on package

  [only if -u flag given] pkg_chk says the installed package doesn't
  match pkgsrc

As 'make replace' is done, unsafe_depends is set on depending packages
(by pkgsrc; this is a feature added because of pkg_rolling-replace,
but is not part of pkg_rolling-replace).  Thus, one can issue 'make
replace' as one pleases, and invoke pkg_rolling-replace to do a
cleanup pass walking the dependency tree.

One needs pkgsrc-2006Q3 or newer (head is of course fine) to use
pkg_rolling-replace; 2006Q2 and earlier don't have the unsafe_depends
change.

pkg_rolling-replace is beta quality software.  I routinely run it on
my workstation, my notebook, my personal web/mail server, and on
production machines (we're a research group, not a bank) at work.

The first time you try to run this, especially on a machine which is
quite out of date, you'll likely have a lot of problems, which are
fixed in the normal fixing-pkgsrc-build sort of way.  I have found
that once the machine is pretty recent, then updates mostly just work,
even if half the packages are rebuilt.  This is really an impressive
statement about pkgsrc quality.

Nick Goffee is the primary author.  I thought of this plan several
years ago but never got enough round tuits.   The effort was funded by
the US Defense Advanced Rerseach Projects Agency under the ACERT
program.

The man page is in pretty good shape, but just in case I'll utter the
magic words:
# kill -1 `cat /var/run/wizd.pid`

    Greg



Home | Main Index | Thread Index | Old Index