I've started hacking on register-plist a bit, I will probably change internals
yet some more.

As far as user-visible changes go, there is a REGISTER_PLIST_OPTS in bsd.port.mk
to pass options to it, and two new (potentially useful) options:

-n  so that register-plist will still check plist for inconsistencies, but will
NOT actually register the new plists in the plist db.

Use case: bulk builders often test patches "just to see how it would fare"
and getting back to the former state is a core.

-s dir: to take a snapshot of current plists.   On top of doing what
register-plist does, it *will* also  save all plists in that directory.

The use case of that option is mostly for me: I can use it to save plist
snapshots, and possibly run a variation of pkg_add on them to debug things
(instead of having to have a full snapshot, since a lot of bugs in pkg_add
can be exercised by looking at the packing-list and nothing else).

People could have "detailed histories" of snapshots that take way less room
than the snapshot proper: rotate the plist snap dir along with the logs.
(the plists will be one fraction of the log size)

Also, combined with -n, -s dir will still write into dir, so you can use
-n to avoid corrupting your permanent database, and still store all the plists
for later if you want to look for something.

There will be more later, but those were fairly easy to implement and should
be fairly useful to some people.

Reply via email to