diff options
author | Martin Dengler <martin@martindengler.com> | 2009-06-29 21:31:30 (GMT) |
---|---|---|
committer | Martin Dengler <martin@martindengler.com> | 2009-06-30 11:35:31 (GMT) |
commit | 0ae1da97a8da1f25c8d4cba1135e1f4cc9b17db8 (patch) | |
tree | 10e97b686c618c651be009ecb288865145240c25 /bootable-tree-to-removable-img.sh | |
parent | 628648f8d89fe8322e2867a5a56a673900683206 (diff) |
refactor build process into smaller, more sensible, more restartable scripts
Diffstat (limited to 'bootable-tree-to-removable-img.sh')
-rwxr-xr-x | bootable-tree-to-removable-img.sh | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/bootable-tree-to-removable-img.sh b/bootable-tree-to-removable-img.sh new file mode 100755 index 0000000..08302fb --- /dev/null +++ b/bootable-tree-to-removable-img.sh @@ -0,0 +1,45 @@ +#!/bin/bash + +set -x +set -e +set -o pipefail + + +cleanup() { + [ -d "$TMP_MNT" ] && rm -rf $TMP_MNT +} + +exitclean() { + echo "Cleaning up to exit..." + cleanup + exit 1 +} + +trap exitclean SIGINT SIGTERM + + +ROOT=$1 +output_stem=${2:-soas} + +echo "Making removable image $ROOT --> $output_stem" + +TMP_MNT=$(mktemp -d ./removable.XXXXXX) + +device=`../make_fake_device.sh ${output_stem}.img` +mount -t ext2 $device $TMP_MNT + +cp -a $ROOT/* $TMP_MNT + +cp ../olpc.fth.bootmenu $TMP_MNT/boot/olpc.fth + +umount $TMP_MNT +losetup -d $device +tar cf - ${output_stem}.img | lzma -1 > ${output_stem}.img.tar.lzma + + +echo "Done making removable image $ROOT --> $output_stem" +cleanup + + + + |