summaryrefslogtreecommitdiffstats
path: root/draklive
diff options
context:
space:
mode:
authorOlivier Blin <oblin@mandriva.com>2008-09-25 10:26:07 +0000
committerOlivier Blin <oblin@mandriva.com>2008-09-25 10:26:07 +0000
commit09d8b038d50f57eb117f47ca6bb31c62ddb850f3 (patch)
tree3ecc1f18656b5eee486004b38797acb50803c7c3 /draklive
parentb9f749ec7a1ca5579b1724c92a9549d0a48d1e01 (diff)
downloaddraklive-09d8b038d50f57eb117f47ca6bb31c62ddb850f3.tar
draklive-09d8b038d50f57eb117f47ca6bb31c62ddb850f3.tar.gz
draklive-09d8b038d50f57eb117f47ca6bb31c62ddb850f3.tar.bz2
draklive-09d8b038d50f57eb117f47ca6bb31c62ddb850f3.tar.xz
draklive-09d8b038d50f57eb117f47ca6bb31c62ddb850f3.zip
extract install_grub_to_image (to be reused for replicator master)
Diffstat (limited to 'draklive')
-rwxr-xr-xdraklive24
1 files changed, 14 insertions, 10 deletions
diff --git a/draklive b/draklive
index f77b681..f290020 100755
--- a/draklive
+++ b/draklive
@@ -1407,6 +1407,19 @@ sub record_cdrom_master {
run_('wodim', '-v', 'dev=' . $device, $src);
}
+sub install_grub_to_image {
+ my ($live, $img) = @_;
+ cp_af(glob_($live->{mnt} . "/lib/grub/i386-mandriva/*"), $live->{mnt} . "/boot/grub");
+ open(my $grub, "| /sbin/grub --no-floppy");
+ print $grub <<EOF;
+# using disk loopback fails, have to use image path
+device (hd0) $img
+root (hd0,0)
+setup (hd0)
+EOF
+ close ($grub) or die "unable to run grub\n";
+}
+
sub install_usb_bootloader {
my ($live, $media, $opts) = @_;
my $media_boot = get_media_prefix($live, 'boot', $opts->{boot});
@@ -1567,16 +1580,7 @@ sub record_harddisk_master {
}
} unless $opts->{boot_only};
- cp_af(glob_($live->{mnt} . "/lib/grub/i386-mandriva/*"), $live->{mnt} . "/boot/grub");
-
- open(my $grub, "| /sbin/grub --no-floppy");
- print $grub <<EOF;
-# using disk loopback fails, have to use image path
-device (hd0) $opts->{disk_device}
-root (hd0,0)
-setup (hd0)
-EOF
- close ($grub) or die "unable to run grub\n";
+ install_grub_to_image($live, $opts->{disk_device});
run_('umount', $live->{mnt});
maybe_umount_device($device);