summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--advanced.msg.xml17
-rw-r--r--help.msg.xml22
-rwxr-xr-xmake_boot_img94
3 files changed, 85 insertions, 48 deletions
diff --git a/advanced.msg.xml b/advanced.msg.xml
new file mode 100644
index 000000000..f49bb7fe8
--- /dev/null
+++ b/advanced.msg.xml
@@ -0,0 +1,17 @@
+<document>
+The following install types may be used instead of previously notified :
+ o <white>vgahi</white> for high resolution graphical installation.
+ o <white>vga16</white> for 640x480 in 16 colors graphical installation.
+
+The following options may be added on the command line :
+ o <white>readonly=1</white> to disable editing disk partitions.
+ o <white>display=ackbar:0</white> to export display to <blue>ackbar</blue> machine screen 0 during
+ installation.
+ o <white>noauto</white> to disable automatic detection (generally used with <white>expert</white>).
+ o <white>security=n</white> to set security level to value <blue>n</blue>.
+ o <white>updatemodules</white> to use the special update floppy containing modules updates.
+ o <white>patch</white> to use a patch from the floppy (file named <blue>patch.pl</blue>).
+ o <white>auto_install=floppy</white> to enable auto_install using <blue>auto_inst.cfg</blue> file on the
+ floppy.
+ o <white>memtest</white> to test your computer RAM for faulty memory modules.
+</document>
diff --git a/help.msg.xml b/help.msg.xml
new file mode 100644
index 000000000..c20ea01c8
--- /dev/null
+++ b/help.msg.xml
@@ -0,0 +1,22 @@
+<document>
+ <green>Welcome to <blue>Mandrake Linux</blue> install help</green>
+
+In most cases, the best way to get started is to simply press the <yellow>&lt;Enter&gt;</yellow> key.
+If you experience problems with standard install, try one of the following
+install types (type the highlighted text and press <yellow>&lt;Enter&gt;</yellow>):
+
+ o <white>vgalo</white> for low resolution graphical installation.
+ o <white>text</white> for text installation instead of the graphical one.
+ o <white>linux</white> for standard graphical installation at normal resolution.
+ o <white>expert</white> for expert graphical installation at normal resolution.
+
+
+To repair an already installed system type <white>rescue</white> followed
+by <yellow>&lt;Enter&gt;</yellow>.
+
+You can also pass some <white>&lt;specific kernel options&gt;</white> to the Linux kernel.
+For example, try <white>linux noapic</white> if your system has trouble operating
+your network adapter correctly.
+<red>NOTE</red>: You cannot pass options to modules (SCSI, ethernet card) or devices
+such as CD-ROM drives in this way. If you need to do so, use expert mode.
+</document>
diff --git a/make_boot_img b/make_boot_img
index 0e0aa51c8..4b18ad11f 100755
--- a/make_boot_img
+++ b/make_boot_img
@@ -83,6 +83,45 @@ foreach my $img (@images) {
}
}
+sub syslinux_color {
+ "0" . {
+ default => '7',
+ blue => '9',
+ green => 'a',
+ red => 'c',
+ yellow => 'e',
+ white => 'f',
+ }->{$_[0]} || die "unknown color $_[0]\n";
+}
+
+sub syslinux_msg {
+ my ($msg_xml_file, @more_text) = @_;
+
+ require XML::Parser;
+
+ sub xml_tree2syslinux {
+ my ($current_color, $tree) = @_;
+ my (undef, @l) = @$tree;
+ join('', map {
+ my ($type, $val) = @$_;
+ if ($type eq '0') {
+ $val;
+ } else {
+ syslinux_color($type) . xml_tree2syslinux($type, $val) . syslinux_color($current_color);
+ }
+ } group_by2(@l));
+ };
+
+ print "parsing $msg_xml_file\n";
+ my $tree = XML::Parser->new(Style => 'Tree')->parsefile($msg_xml_file);
+ $tree->[0] eq 'document' or die "bad file $msg_xml_file\n";
+ my $text = xml_tree2syslinux('default', $tree->[1]);
+
+ pack("C*", 0x0E, 0x80, 0x03, 0x00) . " "
+ . $text . join('', @more_text)
+ . "\n" . syslinux_color('red') . "[F1-Help] [F2-Advanced Help] [F3-Main]" . syslinux_color('default') . "\n";
+}
+
sub install_stripped { _ "strip $_[0]"; _ "$sudo install $_[0] $_[1]" }
sub initrd {
@@ -174,6 +213,9 @@ sub boot_img_i386 {
_ "cat $kernel > $mnt/vmlinuz";
bmp_to_msg('isolinux-graphic-simple.bmp', "$mnt/boot.msg", '397,190,14,6', 27, 27);
+ output("$mnt/help.msg", syslinux_msg('help.msg.xml'));
+ output("$mnt/advanced.msg", syslinux_msg('advanced.msg.xml'));
+
(my $rdz = $img) =~ s/\.img/.rdz/;
(my $initrd_type = $type) =~ s/-changedisk//;
initrd($tmp_mnt_initrd, $initrd_type, $I, $rdz);
@@ -661,54 +703,10 @@ F3 boot.msg
kernel test/memtest.bin
";
- output "isolinux/help.msg", pack("C*", 0x0E, 0x80, 0x03, 0x00) .
-"
- 0aWelcome to 09Mandrake Linux0a install help07
-
-In most cases, the best way to get started is to simply press the 0e<Enter>07 key.
-If you experience problems with standard install, try one of the following
-install types (type the highlighted text and press 0e<Enter>07):
-
- o 0fvgalo07 for low resolution graphical installation.
- o 0ftext07 for text installation instead of the graphical one.
- o 0flinux07 for standard graphical installation at normal resolution.
- o 0fexpert07 for expert graphical installation at normal resolution.
-
-
-To use this CD to repair an already installed system type 0frescue07
-followed by 0e<Enter>07.
-
-You can also pass some 0f<specific kernel options>07 to the Linux kernel.
-For example, try 0flinux mem=128M07 if your system has 128Mb of RAM but the default
-kernel ($main) does not detect it correctly.
-0cNOTE07: You cannot pass options to modules (SCSI, ethernet card) or devices
-such as CD-ROM drives in this way. If you need to do so, use expert mode.
-
-0c[F1-Help] [F2-Advanced Help] [F3-Main]07
-";
-
- output "isolinux/advanced.msg", pack("C*", 0x0E, 0x80, 0x03, 0x00) .
-"
-The following install types may be used instead of previously notified :
- o 0fvgahi07 for high resolution graphical installation.
- o 0fvga1607 for 640x480 in 16 colors graphical installation.
-
-The following options may be added on the command line :
- o 0freadonly=107 to disable editing disk partitions.
- o 0fdisplay=ackbar:007 to export display to 09ackbar07 machine screen 0 during
- installation.
- o 0fnoauto07 to disable automatic detection (generally used with 0fexpert07).
- o 0fsecurity=n07 to set security level to value 09n07.
- o 0fupdatemodules07 to use the special update floppy containing modules updates.
- o 0fpatch07 to use a patch from the floppy (file named 09patch.pl07).
- o 0fauto_install=floppy07 to enable auto_install using 09auto_inst.cfg07 file on the
- floppy.
- o 0fmemtest07 to test your computer RAM for faulty memory modules.
-
-You can choose the following kernels :
-" . join('', map_index { " o 0falt$::i07 is kernel $_\n" } @kernels) . "
-0c[F1-Help] [F2-Advanced Help] [F3-Main]07
-";
+ output("isolinux/help.msg", syslinux_msg('help.msg.xml'));
+ output("isolinux/advanced.msg", syslinux_msg('advanced.msg.xml',
+ "\nYou can choose the following kernels :\n",
+ map_index { " o " . syslinux_color('white') . "alt$::i" . syslinux_color('default') . " is kernel $_\n" } @kernels));
}
sub isolinux_move {