So far, I’ve had a wonderful day. It started by trying to figure out why several hundred of packages are failing on i386-6. After a long time trying to find a general pattern, I boiled it down to xorg-libraries. It turns out that when Kris did some spring cleaning and removed the /usr/X11R6 directory from bindist, it is now a symlink created during pre-install in xorg-libraries. What happens next on deinstall is that pkg-install sees the symlink and edits several /etc files to remove the mention of X11R6 there so those scripts are not run twice. As the removal of X11R6 in /etc was not MFCed to RELENG_6, this means that those files are changes and thus show up as leftovers on pointyhat.

So far so good. Now, how to fix this:

  1. MFC the changes to /etc. This may break existing installations, but only if src is updated and not ports.
  2. Readd the directory to bindist on 6 so the symlink isn’t created and pkg-install does not edit /etc. Nasty hack.
  3. Don’t run pkg-install during PACKAGE_BUILDING. This is already set in Makefile, but not in the package. And now comes the fun part. Moving this to the package will cause problems as PACKAGE_BUILDING is set during sysinstall, so installing xorg packages from sysinstall will leave X11R6 behind in /etc.

Stay tuned for fixes.

Related posts:

  1. FreeBSD 9.0 packages and 8.0 freeze update Earlier today, Ken Smith bumped the version of the HEAD...
  2. Ports freeze to start April 13 The ports freeze for the upcoming release of 7.2 will...

Related posts brought to you by Yet Another Related Posts Plugin.