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

Bug#505609: new lilo package maintainer? (was lilo removal in squeeze or please test grub2)



I wrote:
> This code and the file /etc/kernel-img.conf are vestiges of
> kernel-package which are gradually being removed from the official
> kernel packages.  Therefore I don't think we should reinstate this idea
> of the default loader but we should change the code so that it doesn't
> silently fail if do_loader is set and loader is not.

How does this change look?

Ben.

--- linux-2.6/debian/templates/temp.image.plain/postinst	(revision 15874)
+++ linux-2.6/debian/templates/temp.image.plain/postinst	(working copy)
@@ -1180,25 +1180,32 @@
 LOADER: {
   last unless $do_boot_enable; # Exit if explicitly asked to
 
-  last if $loader =~ /silo/i; # SILO does not have to be executed.
-  last if $loader =~ /yaboot/i; # yaboot does not have to be executed.
-  last if $loader =~ /milo/i; # MILO does not have to be executed.
-  last if $loader =~ /nettrom/i; # NETTROM does not have to be executed.
-  last if $loader =~ /arcboot/i; # ARCBOOT does not have to be executed.
-  last if $loader =~ /delo/i; # DELO does not have to be executed.
-  if ($official_image =~ /^\s*YES\s*$/o) {
-    last if $loader =~ /quik/i; # maintainer asked quik invocation to be ignored
+  if (!$explicit_do_loader) {
+    last if $loader =~ /silo/i; # SILO does not have to be executed.
+    last if $loader =~ /yaboot/i; # yaboot does not have to be executed.
+    last if $loader =~ /milo/i; # MILO does not have to be executed.
+    last if $loader =~ /nettrom/i; # NETTROM does not have to be executed.
+    last if $loader =~ /arcboot/i; # ARCBOOT does not have to be executed.
+    last if $loader =~ /delo/i; # DELO does not have to be executed.
+    if ($official_image =~ /^\s*YES\s*$/o) {
+      last if $loader =~ /quik/i; # maintainer asked quik invocation to be ignored
+    }
   }
 
-  last unless $loaderloc;
-  last unless -x $loaderloc;
   last unless $do_bootloader;
 
-  if (-T "/etc/$loader.conf") {
+  if ($loaderloc && -x $loaderloc && -T "/etc/$loader.conf") {
     # Trust and use the existing lilo.conf.
     print STDERR "You already have a $Loader configuration in /etc/$loader.conf\n";
     my $ret = &run_lilo();
     exit $ret if $ret;
+  } else {
+    if ($loader) {
+      print STDERR "$Loader was not found and has not been updated\n";
+    } else if ($explicit_do_loader || !$postinst_hook) {
+      print STDERR "No bootloader has been configured in /etc/kernel-img.conf\n"
+	. "The bootloader may need to be updated manually\n";
+    }
   }
 }
 
--- END ---

-- 
Ben Hutchings
Once a job is fouled up, anything done to improve it makes it worse.

Attachment: signature.asc
Description: This is a digitally signed message part


Reply to: