Just when I thought I can finally finish a whole project on a RELENG branch without touching HEAD (and thus do it directly on my desktop), there it is - with a "D'Oh" level of surprise I find that the pkg_install infrastructure is, yes, different enough in HEAD and STABLE. Specifically, pkglib has been separated out and with it came the "pkg.h" header.
Which reminds me to be grateful about just how much finally having a decent virtualization environment - VirtualBox in this case - is worth! When I started doing FreeBSD development, also for a SoC project, i had a hard time working on it because running a debug kernel on the hardware I got at the time was too slow to have it on all the time and there were no quality virtualization products for FreeBSD. To top it all, I didn't have network connectivity at the time during the summer (when I returned home from the student dormitory) so using Perforce was really painful.
Having VirtualBox has really made a visible positive impact on my workflow. Not only can I run multiple versions of FreeBSD but also other operating systems when and as I please. It is truly a large leap forward.
If, by any chance, other virtualization products were ever ported or finished (vmware, xen, kvm), using them with ZFS would make FreeBSD a really nice platform for this kind of deployment.
As for what I'm doing: here's a preview, but I'll write more about it later.
#1 Re: Back to the HEAD
This looks nice :)
Can it be thought of as freebsd-update for packages?
Will pkg_patch rely on having the original package tbz around? I.e. do you patch the tarball, deinstall the package and reinstall from the patched tarball? I can't really match this with "the tool will patch files on the "live" system.
#2 Re: Back to the HEAD
what do you think of NetBSD's pkg_admin tool? It kind of wraps encapsulates separates a buch "meta" stuff about pkgs and allows for a fixed config in /etc/pkg_admin.conf ... they've added backed signing (with gpg and withx509). I think an older versions are used with dfly but I suppose it will get updated there too.
pkg_admin doesn't always get called directly but provides an "interface" for other tools use. It's tied to pkgsrc approach but it seems like a "layer" in the pkg system it would be nice to have ?
ps: I hope a tool like pkg_serverd appears :) The ease with which opensolaris's image package and various linux rpm based distros and turn them sleves into binary "package servers".