From 75b2a8f97703a430cac0cd1fc46cf479e5414899 Mon Sep 17 00:00:00 2001 From: Olivier Blin Date: Fri, 26 Jun 2009 16:19:22 +0000 Subject: split allocate_partition --- draklive | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) (limited to 'draklive') diff --git a/draklive b/draklive index c2ff4d4..81eb070 100755 --- a/draklive +++ b/draklive @@ -654,6 +654,19 @@ sub get_disk_master_path { $live->get_builddir . $live->{prefix}{build}{dist} . '/' . $live->get_name . '.img'; } +sub allocate_partition { + my ($dest, $sector_size, $fs, $o_inode_size) = @_; + my ($part_start, $part_nb_sectors) = run_program::get_stdout("sfdisk -d $dest") =~ /start=\s*(\d+),\s*size=\s*(\d+)/; + + require devices; + my $loop = devices::find_free_loop(); + run_('losetup', '-o', $part_start * $sector_size, '-s', $part_nb_sectors * $sector_size, $loop, $dest) + or die "unable to setup loop device"; + MDV::Draklive::Utils::device_mkfs($loop, $fs, $o_inode_size) or die "unable to format $dest\n"; + + return $loop; +} + sub allocate_master { my ($dest, $size, $fs, $o_inode_size) = @_; mkdir_p(dirname($dest)); @@ -687,15 +700,7 @@ w EOF close($fdisk) or die "unable to run fdisk\n" . ("$!" ? "Error closing fdisk pipe: $!" : "Exit status $? from fdisk"); - my ($part_start, $part_nb_sectors) = run_program::get_stdout("sfdisk -d $dest") =~ /start=\s*(\d+),\s*size=\s*(\d+)/; - - require devices; - my $loop = devices::find_free_loop(); - run_('losetup', '-o', $part_start * $sector_size, '-s', $part_nb_sectors * $sector_size, $loop, $dest) - or die "unable to setup loop device"; - MDV::Draklive::Utils::device_mkfs($loop, $fs, $o_inode_size) or die "unable to format $dest\n"; - - return $loop; + return allocate_partition($dest, $sector_size, $fs, $o_inode_size); } sub create_disk_master { -- cgit v1.2.1