From c205f2a9a8d2760540343a2293301edcca60ce6c Mon Sep 17 00:00:00 2001 From: Dirk von Suchodoletz Date: Sat, 30 Apr 2011 16:13:12 +0200 Subject: Boot ISO creator modelled after the usb-stick tool ... --- make-boot-iso | 62 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100755 make-boot-iso (limited to 'make-boot-iso') 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." + -- cgit v1.2.3-55-g7522