summaryrefslogtreecommitdiffstats
path: root/make-boot-iso.sh
diff options
context:
space:
mode:
authorMichael Neves2012-01-27 15:03:56 +0100
committerMichael Neves2012-01-27 15:03:56 +0100
commit8e8af091fd55501dcbab42836726cd25a494c077 (patch)
tree1af1be3fa81ca5196f5a7dba0e0df8218bde2cc5 /make-boot-iso.sh
parentadded boot media type in kcl of preboot environment (diff)
downloadusb-boot-stick-8e8af091fd55501dcbab42836726cd25a494c077.tar.gz
usb-boot-stick-8e8af091fd55501dcbab42836726cd25a494c077.tar.xz
usb-boot-stick-8e8af091fd55501dcbab42836726cd25a494c077.zip
pbs-serials added
Diffstat (limited to 'make-boot-iso.sh')
-rwxr-xr-xmake-boot-iso.sh62
1 files changed, 62 insertions, 0 deletions
diff --git a/make-boot-iso.sh b/make-boot-iso.sh
new file mode 100755
index 0000000..4ada7b4
--- /dev/null
+++ b/make-boot-iso.sh
@@ -0,0 +1,62 @@
+#!/bin/bash
+# -----------------------------------------------------------------------------
+# Copyright (c) 2011 - OpenSLX GmbH
+#
+# This program is free software distributed under the GPL version 2.
+# See http://openslx.org/COPYING
+#
+# If you have any feedback please consult http://openslx.org/feedback and
+# send your suggestions, praise, or complaints to feedback@openslx.org
+#
+# General information about OpenSLX can be found at http://openslx.org/
+# -----------------------------------------------------------------------------
+# PreBoot ISO image creation utility
+# -----------------------------------------------------------------------------
+
+ROOT_DIR=$(dirname $(readlink -f $0))
+
+SYSLINUX=$ROOT_DIR/contrib/syslinux/latest
+
+PATH="$PATH:$ROOT_DIR/bin/"
+
+[ ! -f $SYSLINUX/Makefile ] && env.setup-syslinux.sh
+
+mkdir -p /tmp/openslx-iso/isolinux
+
+[ ! -f $ROOT_DIR/build/kernel-preboot-latest ] && build.kernel.sh
+cp -v $ROOT_DIR/build/kernel-preboot-latest /tmp/openslx-iso/isolinux/kernel
+
+#[ ! -f $ROOT_DIR/build/initramfs-default ] && build.initramfs.sh
+build.initramfs.sh
+cp -v $ROOT_DIR/build/initramfs-default /tmp/openslx-iso/isolinux/initramfs
+
+cp -v $SYSLINUX/com32/menu/menu.c32 /tmp/openslx-iso/isolinux/
+cp -v $SYSLINUX/com32/menu/vesamenu.c32 /tmp/openslx-iso/isolinux/
+
+# exchange this for another theme
+cp -v ${ROOT_DIR}/config/extlinux/pbs2.png /tmp/openslx-iso/isolinux/
+sed -e "s,USB,ISO," $ROOT_DIR/config/extlinux/extlinux.conf \
+ > /tmp/openslx-iso/isolinux/isolinux.cfg
+
+
+# add tools needed for menu setup and ramdisk environment
+cp ${SYSLINUX}/core/isolinux.bin ${SYSLINUX}/com32/menu/vesamenu.c32 \
+ ${SYSLINUX}/com32/menu/menu.c32 /tmp/openslx-iso/isolinux/
+
+# create an autorun.inf file
+echo -en "icon=\boot\openslx.ico,0\r\nlabel=OpenSLX PreBoot Linux\r\n" \
+ > /tmp/openslx-iso/autorun.inf
+cp COPYING /tmp/openslx-iso/copying.txt
+
+# generate the ISO image
+echo "[make-boot-iso]\t\tGenerating the ISO image"
+genisoimage -b isolinux/isolinux.bin -no-emul-boot -boot-load-size 4 \
+ -r -J -l -boot-info-table -o ./openslx.iso -hide-list config/hide.conf \
+ -abstract /tmp/openslx-iso/isolinux/info.txt -relaxed-filenames \
+ -biblio /tmp/openslx-iso/isolinux/info.txt -publisher "OpenSLX GmbH" \
+ -p "OpenSLX Project, http://lab.openslx.org, info@openslx.org" \
+ -V "OpenSLX PreBoot Linux ISO Image" -input-charset iso8859-1 \
+ -volset "PreBoot Linux of the OpenSLX Project" -joliet-long \
+ -copyright /tmp/openslx-iso/copying.txt /tmp/openslx-iso/ 2>/dev/null
+echo "[make-boot-iso]\t\tOpenSLX PreBoot image created."
+