From f01a6586c80e83e1936725ae2e06e9dc83e7842b Mon Sep 17 00:00:00 2001 From: Olivier Blin Date: Thu, 13 Nov 2008 10:12:02 +0000 Subject: use the old way to write grub, we can't always run it from target image (still keep writing install.sh) --- draklive | 28 ++++++++++------------------ 1 file changed, 10 insertions(+), 18 deletions(-) (limited to 'draklive') diff --git a/draklive b/draklive index fd6d1a8..f7d6f27 100755 --- a/draklive +++ b/draklive @@ -707,9 +707,18 @@ sub install_grub_to_image { my ($live, $img) = @_; my $grub_dir = "/boot/grub"; my $grub_script = $grub_dir . "/install.sh"; - my $grub_device_map = $grub_dir . "/device.map"; cp_af(glob_($live->get_system_root . "/lib/grub/i386-mandriva/*"), $live->{mnt} . $grub_dir); + open(my $grub, "| /sbin/grub --batch --no-floppy"); + # using disk loopback fails, have to use image path + print $grub <{mnt} . $grub_script, <{mnt} . $hd_tmp); - run_("mount", "--bind", $img, $live->{mnt} . $hd_tmp); - } - my $hd0 = $hd_tmp || $img; - - # using disk loopback fails, have to use image path - output($live->{mnt} . $grub_device_map, "(hd0) $hd0"); - run_({ root => $live->{mnt} }, $grub_script); - unlink $live->{mnt} . $grub_device_map; - - if ($hd_tmp) { - run_("umount", $live->{mnt} . $hd_tmp); - unlink $live->{mnt} . $hd_tmp; - } } sub install_usb_bootloader { -- cgit v1.2.1