FreeBSD problems and preliminary ways to solve
gelraen.ua at gmail.com
Thu Aug 18 18:37:51 UTC 2011
pkgng looks great, but I suggest to add in-place upgrade feature. Now packages
upgraded with just deleting and installing new version, which is not so fast
and requires some "dirty" tricks with config files to correctly delete
unmodified configs on pkg_delete and keep modified.
Instead, we can simply overwrite only those files, that differs with previous
version and even keep any user-modified files without any special tricks in
port's Makefile and package metadata. Also, in this case upgrading package
between minor versions will generate much less write requests to FS.
But this requires to make some changes in ports infrastructure. Each port need
to be installed to some temporary location first, and only then changed files
should be moved in place. Using tmpfs as temporary location will slightly
reduce "make upgrade" time, comparing to "make deinstall install". Another way
is to create binary package directly and leave all upgrading logic in pkgng.
More information about the freebsd-arch