tadd gpt checks - libdevuansdk - common library for devuan's simple distro kits HTML git clone https://git.parazyd.org/libdevuansdk DIR Log DIR Files DIR Refs DIR Submodules DIR README DIR LICENSE --- DIR commit 55637ebfb49f0fd7c9c96d9f011e18723b442650 DIR parent 60f168677b163cfbbab1e8c0f97c5a8eafdef0fe HTML Author: parazyd <parazyd@dyne.org> Date: Wed, 12 Oct 2016 13:58:06 +0200 add gpt checks Diffstat: M zlibs/helpers | 7 ++++++- M zlibs/imaging | 18 +++++++++++------- M zlibs/rsync | 4 +++- 3 files changed, 20 insertions(+), 9 deletions(-) --- DIR diff --git a/zlibs/helpers b/zlibs/helpers t@@ -21,7 +21,12 @@ build_image_dist() { fn build_image_dist - req=(arch size parted_boot parted_root parted_type) + req=(arch size parted_type) + if [[ $parted_type = gpt ]]; then + req+=(gpt_boot gpt_root) + elif [[ $parted_type = dos ]]; then + req+=(parted_root parted_boot) + fi req+=(workdir strapdir image_name) ckreq || return 1 DIR diff --git a/zlibs/imaging b/zlibs/imaging t@@ -64,13 +64,17 @@ image_partition_raw_gpt() { notice "partitioning raw gpt image..." - parted $workdir/${image_name}.img --script -- mklabel gpt - cgpt create -z ${image_name}.img - cgpt create ${image_name}.img - cgpt add -i 1 -t kernel -b ${gpt_boot[1]} -s ${gpt_boot[2]} \ - -l kernel -S 1 -T 5 -P 10 ${image_name}.img - cgpt add -i 2 -t data -b ${gpt_root[1]} -s $(expr $(cgpt show ${image_name}.img \ - | awk '/Sec GPT table/ {print \$1}') - ${gpt_root[1]}) -l Root ${image_name}.img + parted $workdir/${image_name}.img --script -- mklabel gpt || zerr + cgpt create -z $workdir/${image_name}.img || zerr + cgpt create $workdir/${image_name}.img || zerr + + cgpt add -i 1 -t kernel -b ${gpt_boot[1]} \ + -s ${gpt_boot[2]} \ + -l kernel -S 1 -T 5 -P 10 $workdir/${image_name}.img + + cgpt add -i 2 -t data -b ${gpt_root[1]} \ + -s $(expr $(cgpt show $workdir/${image_name}.img | awk '/Sec GPT table/ {print $1}') - ${gpt_root[1]}) \ + -l Root $workdir/${image_name}.img findloopmapp DIR diff --git a/zlibs/rsync b/zlibs/rsync t@@ -30,7 +30,9 @@ rsync_to_raw_image() { pushd $strapdir sudo rm -f .done sudo rsync -HPavz -q --exclude={./boot} ./* $workdir/root - sudo rsync -HPavz -q ./boot/* $workdir/boot + if [[ $parted_type = dos ]]; then + sudo rsync -HPavz -q ./boot/* $workdir/boot + fi popd image_raw_umount