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) {