[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#555093: Missing kernel-img.conf makes a debian kernel not installable



Package: linux-2.6
Version: 2.6.31-1
Severity: normal
Tags: patch

There is no /etc/kernel-img.con on a fresh debootstrap sid. Installing a
kernel leads to:

|mikejones:/var/lib# dpkg --configure -a
|Setting up linux-image-2.6.31-1-amd64 (2.6.31-1) ...
|Running depmod.
|Running update-initramfs.
|update-initramfs: Generating /boot/initrd.img-2.6.31-1-amd64
|Error retreiving answer for linux-image-2.6.31-1-amd64/postinst/create-kimage-link-2.6.31-1-amd64:
| linux-image-2.6.31-1-amd64/postinst/create-kimage-link-2.6.31-1-amd64 doesn't exist at
| /var/lib/dpkg/info/linux-image-2.6.31-1-amd64.postinst line 522, <STDIN> line 3.
|dpkg: error processing linux-image-2.6.31-1-amd64 (--configure):
| subprocess installed post-installation script returned error exit status 9

As far as I understand debconf, there must be a template and input() for
${package_name}/postinst/create-kimage-link-$version in order to get a
value saved. Since I did not find it I guess that this can't work.

If the bootloader is palo than the answer is ignored anyway so the
question is not required there.

kernel-img.conf(5) says that do_symlinks defaults to yes.

This could also fix piuparts [0].

[0] http://piuparts.debian.org/sid/fail/linux-image-2.6.31-1-amd64_2.6.31-1.log

Signed-off-by: Sebastian Andrzej Siewior <sebastian@breakpoint.cc>
---
 debian/templates/temp.image.plain/postinst |   13 +------------
 1 files changed, 1 insertions(+), 12 deletions(-)

diff --git a/debian/templates/temp.image.plain/postinst b/debian/templates/temp.image.plain/postinst
index 5e827de..d4063ef 100644
--- a/debian/templates/temp.image.plain/postinst
+++ b/debian/templates/temp.image.plain/postinst
@@ -514,28 +514,17 @@ sub handle_missing_link {
   else {
     if (! $have_conffile) {
       my $ret;
-      my $answer='';
       $do_symlink = "Yes";
-      my $question = "${package_name}/postinst/create-kimage-link-$version";
 
-      ($ret,$answer) = get("$question");
-      die "Error retreiving answer for $question: $answer" if $ret;
-
-      $answer =~ s/^\s+//;
-      $answer =~ s/\s+$//;
-      $do_symlink = "No" if $answer =~ /^(f|n)/i;
-        
       if (open(CONF, ">$CONF_LOC")) {
         print CONF "# Kernel Image management overrides\n";
         print CONF "# See kernel-img.conf(5) for details\n";
         if ($loader =~ /palo/i) {
           print CONF "link_in_boot = Yes\n";
-          print CONF "do_symlinks = Yes\n";
           print CONF "relative_links = Yes\n";
           print CONF "do_bootloader = No\n";
-        } else {
-          print CONF "do_symlinks = $do_symlink\n";
         }
+        print CONF "do_symlinks = $do_symlink\n";
         close CONF;
       }
       $have_conffile = "Yes";
-- 
1.6.5.2




Reply to: