summaryrefslogtreecommitdiff
path: root/mkusbimg
diff options
context:
space:
mode:
Diffstat (limited to 'mkusbimg')
-rwxr-xr-xmkusbimg78
1 files changed, 0 insertions, 78 deletions
diff --git a/mkusbimg b/mkusbimg
deleted file mode 100755
index 727bb80..0000000
--- a/mkusbimg
+++ /dev/null
@@ -1,78 +0,0 @@
-#!/bin/bash
-#
-# mkusbimg - creates a bootable disk image
-# Copyright (C) 2008 Simo Leone <simo@archlinux.org>
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-# usage(exitvalue)
-# outputs a usage message and exits with value
-APPNAME=$(basename "${0}")
-usage()
-{
- echo "usage: ${APPNAME} <imageroot> <imagefile>"
- exit $1
-}
-
-##################################################
-
-if [ $# -ne 2 ]; then
- usage 1
-fi
-
-DISKIMG="${2}"
-IMGROOT="${1}"
-TMPDIR=$(mktemp -d)
-FSIMG=$(mktemp)
-
-# ext2 overhead's upper bound is 6%
-# empirically tested up to 1GB
-rootsize=$(du -bs ${IMGROOT}|cut -f1)
-IMGSZ=$(( (${rootsize}*106)/100/512 + 1)) # image size in sectors
-
-# create the filesystem image file
-dd if=/dev/zero of="$FSIMG" bs=512 count="$IMGSZ"
-
-# create a filesystem on the image
-mke2fs -m 0 -F "$FSIMG"
-
-# mount the filesystem and copy data
-mount -o loop "$FSIMG" "$TMPDIR"
-cp -a "$IMGROOT"/* "$TMPDIR"
-
-# unmount filesystem
-umount "$TMPDIR"
-
-# add sectors 0-62, then glue together
-dd if=/dev/zero of="$DISKIMG" bs=512 count=63
-cat "$FSIMG" >> "$DISKIMG"
-
-# create a partition table
-# if this looks like voodoo, it's because it is
-sfdisk -uS -f "$DISKIMG" << EOF
-63,$IMGSZ,83,*
-0,0,00
-0,0,00
-0,0,00
-EOF
-
-# install grub on the image
-grub --no-floppy --batch << EOF
-device (hd0) $DISKIMG
-root (hd0,0)
-setup (hd0)
-EOF
-
-# all done :)
-rm -fr "$TMPDIR" "$FSIMG"