2011/10/6 Adam D. Barratt <a...@adam-barratt.org.uk>: > test -e ./tmp/cdrom/tree/boot/zfs || rmdir ./tmp/cdrom/tree/boot/ > rmdir: failed to remove `./tmp/cdrom/tree/boot/': Directory not empty > [...] > $ debdiff kernel-image-8.1-1-486-di_0.6_kfreebsd-i386.udeb > kernel-image-8.1-1-486-di_0.6+b1_kfreebsd-i386.udeb > [...] > Files in second .deb but not in first > ------------------------------------- > -rw-r--r-- root/root /boot/acpi.ko > > This appears to be due to the fact that the new kfreebsd-8 +squeeze1 > kernel on -i386 builds acpi.ko as a module, which is then picked up by > existing "install this module if it exists" rules in kernel-wedge.
Actually, the problem is not presence of acpi.ko itself, but the fact that a symlink to this file exists in /boot/. This is due to an old postinst kludge from pre-GRUB time. > A quick fix would be appreciated, whether from the kfreebsd or d-i side, > given the increasingly short period of time we have remaining until the > point release is scheduled. Attached patch should fix the problem. I can upload a fixed kfreebsd-8 this evening (feel free to NMU if someone has time to verify earlier than that). -- Robert Millan
Index: debian/kfreebsd-image.postinst.in =================================================================== --- debian/kfreebsd-image.postinst.in (revision 3716) +++ debian/kfreebsd-image.postinst.in (working copy) @@ -24,37 +24,6 @@ case "$1" in configure) - # Don't do symlinks if explicitely disabled - if [ -z "$(sed -e '/^\s*do_symlinks\s*=\s*\(no\|false\|0\)\s*$/!d' $KERNEL_IMG_CONF 2>/dev/null)" ] ; then - for i in kernel.gz acpi.ko ; do - if test -e /boot/kernel/$i && ! test -L /boot/kernel/$i ; then - echo "What happen!! /boot/kernel/$i exists but is not a symlink." - exit 1 - fi - done - - mkdir -p /boot/kernel - - if [ "$(readlink -f /boot/kernel/kernel.gz)" != "/boot/kfreebsd-$RELEASE.gz" ] ; then - rm -f /boot/kernel/kernel.old.gz - if [ -L /boot/kernel/kernel.gz ] ; then - mv /boot/kernel/kernel.gz /boot/kernel/kernel.old.gz - fi - ln -s /boot/kfreebsd-$RELEASE.gz /boot/kernel/kernel.gz - fi - - # on i386 acpi MUST be within kfreebsd-loader reach - if [ "${RELEASE%%-[456]86}" != "${RELEASE}" ] ; then - if [ "$(readlink -f /boot/kernel/acpi.ko)" != "/lib/modules/$RELEASE/acpi.ko" ] ; then - rm -f /boot/kernel/acpi.ko.old - if [ -L /boot/kernel/acpi.ko ] ; then - mv /boot/kernel/acpi.ko /boot/kernel/acpi.ko.old - fi - ln -s /lib/modules/$RELEASE/acpi.ko /boot/kernel/acpi.ko - fi - fi - fi - # Sanitize and quote maintainer script parameters for p in "$@"; do q="$(echo "$p" | sed -e "s/'/'\\''/g")"