summaryrefslogtreecommitdiffstats
path: root/make-boot-iso
diff options
context:
space:
mode:
Diffstat (limited to 'make-boot-iso')
-rwxr-xr-xmake-boot-iso62
1 files changed, 62 insertions, 0 deletions
diff --git a/make-boot-iso b/make-boot-iso
new file mode 100755
index 0000000..a673b40
--- /dev/null
+++ b/make-boot-iso
@@ -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/init
+
+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."
+