This is not for the default installation CDs, but may interesst CD
distributors. With this patch you can install own logos. Requires
instlogo.bmp, format is described in lilo.conf(5).

Gruss/Regards,
Eduard.
-- 
> [Microsoft wirbt:] "Ein offenes Betriebssystem kann schon mal mutieren."
Mutieren tun vor allem MS-propriet�re Dateiformate.
Index: i386-specials/mini-iso.sh
===================================================================
RCS file: /cvs/debian-boot/boot-floppies/i386-specials/mini-iso.sh,v
retrieving revision 1.8
diff -u -r1.8 mini-iso.sh
--- i386-specials/mini-iso.sh   2002/04/01 15:38:52     1.8
+++ i386-specials/mini-iso.sh   2002/04/05 12:54:06
@@ -82,6 +82,10 @@
    touch ${CD}/.disk/base_installable
 fi
 
+if [ -e instlogo.bmp ] ; then
+   cp instlogo.bmp $CD
+fi
+
 if [ "x${flavour}" != "x" ]; then
   ln -s ../../../../../../../boot/rescue.bin ${BF}/images-1.44/${flavour}/rescue.bin
 else
Index: utilities/dbootstrap/bootconfig.c
===================================================================
RCS file: /cvs/debian-boot/boot-floppies/utilities/dbootstrap/bootconfig.c,v
retrieving revision 1.194
diff -u -r1.194 bootconfig.c
--- utilities/dbootstrap/bootconfig.c   2002/03/25 05:58:20     1.194
+++ utilities/dbootstrap/bootconfig.c   2002/04/05 12:54:08
@@ -1886,8 +1886,9 @@
 "# You have the choice between: bmp, compat, menu and text\n" \
 "# Look in /boot/ and in lilo.conf(5) manpage for details\n" \
 "#\n" \
-"install=/boot/boot-menu.b\n" \
+"install=/boot/boot-%s.b\n" \
 "\n" \
+"%s\n" \
 "# Specifies the location of the map file\n" \
 "#\n" \
 "map=/boot/map\n" \
@@ -2265,7 +2266,7 @@
 static int run_lilo(char *boot, int fixmap, struct d_choices *others, int o_number)
 {
   FILE* filep;
-  int status = 0, i=0;
+  int status = 0, i=0, bmp=0;
 #ifndef _TESTING_
   struct stat statbuf;
   char * devnumber;
@@ -2288,6 +2289,8 @@
   pleaseWaitBox(_("Running LILO to make the kernel able to boot "
                  "from the hard disk without a boot floppy..."));
 
+  bmp = (! system("test -f /target/boot/instlogo.bmp"));
+        
   if ((filep = fopen(BC_LILO_CONF, "w")) == NULL) {
     boxPopWindow();
 #ifdef _TESTING_
@@ -2324,15 +2327,15 @@
   if(o_number > 0) 
      prompt = "prompt\ntimeout=150\n";
   else 
-     prompt = "";
+     prompt = "prompt\ntimeout=150\n";
 
   if (append_opts && strlen (append_opts)) {
       append = (char *)malloc (strlen (append_opts) + 1 + 10); /* "append=\"" + 
"\"\n"*/
       sprintf (append, "append=\"%s\"\n", append_opts);
-      fprintf(filep, BC_LILOTEMPLATE1, boot_map, bootpart_map, boot, Root->name, 
prompt, append);
+      fprintf(filep, BC_LILOTEMPLATE1, boot_map, bootpart_map, boot, Root->name, bmp 
+? "bmp" : "menu", bmp ? "bitmap=/boot/instlogo.bmp\n" : "" , prompt, append);
       free (append);
   } else {
-      fprintf(filep, BC_LILOTEMPLATE1, boot_map, bootpart_map, boot, Root->name, 
prompt, "");
+      fprintf(filep, BC_LILOTEMPLATE1, boot_map, bootpart_map, boot, Root->name, bmp 
+? "bmp" : "menu", bmp ? "bitmap=/boot/instlogo.bmp\n" : "" , prompt, "");
   }
 #ifndef _TESTING_
   if ( NAME_ISDIR(MOD_SAVE_DIR,&statbuf) )
@@ -2638,7 +2641,21 @@
            case 0:
               break;
            case 1:
-              menuBox(_("Following partitions are bootable: "), _("Other bootable 
partitions"), bootable, boot_number, 1);
+              { 
+                 char * buf;
+                 int i;
+                 buf = (char *) calloc (boot_number, 50);
+                 for(i=0; i< boot_number; i++) {
+                    strcat(buf, "\t");
+                    strcat(buf, bootable[i].tag);
+                    strcat(buf, "(");
+                    strcat(buf, bootable[i].string);
+                    strcat(buf, ")\n");
+                 }
+                 sprintf(prtbuf, _("The following partitions seem to be bootable and 
+would be added to the boot menu:\n\n%s"), buf);
+                 problemBox(prtbuf, _("Other bootable partitions"));
+                 free(buf);
+              }
               goto redisplay_options;
            case 2:
               boot_number=0;
Index: utilities/dbootstrap/extract_base.c
===================================================================
RCS file: /cvs/debian-boot/boot-floppies/utilities/dbootstrap/extract_base.c,v
retrieving revision 1.79
diff -u -r1.79 extract_base.c
--- utilities/dbootstrap/extract_base.c 2002/04/05 08:12:08     1.79
+++ utilities/dbootstrap/extract_base.c 2002/04/05 12:54:09
@@ -32,6 +32,7 @@
   chdir("/target");
   sprintf(prtbuf,"tar -xf %s",fil);
   status=execlog(prtbuf, LOG_INFO);
+  execlog("mkdir /target/boot; cp /instmnt/instlogo.bmp /target/boot/", LOG_INFO);
   chdir("/");
   boxPopWindow();
   if (status) {

Reply via email to