diff options
Diffstat (limited to 'BCD/Isolinux.pm')
-rw-r--r-- | BCD/Isolinux.pm | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/BCD/Isolinux.pm b/BCD/Isolinux.pm index e172ef0..6b0d8df 100644 --- a/BCD/Isolinux.pm +++ b/BCD/Isolinux.pm @@ -32,7 +32,7 @@ sub switch_theme { my $binary = "/usr/share/bootsplash/scripts/make-boot-splash-raw"; -x $binary or die "$LOG you need $binary which is available in bootsplash >= 3.2.3\n"; my $cmd; - if ($isoconf->{based_on} gt "2009.1") { + if ($isoconf->{based_on} gt "2009.1" && $isoconf->{based_on} ne "mes5") { $cmd = "$binary $initrd $theme"; } else { # old script use a resolution parameter @@ -71,6 +71,20 @@ sub add_entry { } } +sub use_firmware { + print_color("$LOG copy fw.gz to $build_isolinux_dir/alt0/", $color); + my $syslinuxcfg = "$build_isolinux_dir/isolinux.cfg"; + open (IN, "+<$syslinuxcfg"); + @file = <IN>; + seek IN,0,0; + foreach (@file){ + $_ =~ s|alt0/all.rdz|alt0/all.rdz,alt0/fw.gz|g; + print IN $_; + } + close IN; + system("cp -v /usr/lib*/drakx-installer-images/isolinux/alt0/fw.gz $build_isolinux_dir/alt0/") +} + sub copy_files { foreach my $file (@{$isoconf->{isolinux}{tocopy}}) { $file->{name} or next; @@ -93,6 +107,9 @@ sub main_isolinux { print_color("$LOG copy $repo_isolinux to $build_isolinux_dir", $color); dircopy($repo_isolinux, $build_isolinux_dir) or die $!; add_entry; + if ($isoconf->{isolinux}{firmware} eq "yes") { + use_firmware; + } copy_files; switch_theme; } |