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

boot logo



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 to: