diff options
Diffstat (limited to 'helpers/source_iso')
-rwxr-xr-x | helpers/source_iso | 109 |
1 files changed, 109 insertions, 0 deletions
diff --git a/helpers/source_iso b/helpers/source_iso new file mode 100755 index 0000000..0ef1bcb --- /dev/null +++ b/helpers/source_iso @@ -0,0 +1,109 @@ +#!/bin/sh + +# lh_source_iso(1) - build iso source image +# Copyright (C) 2006-2009 Daniel Baumann <daniel@debian.org> +# +# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING. +# This is free software, and you are welcome to redistribute it +# under certain conditions; see COPYING for details. + +set -e + +# Including common functions +. "${LH_BASE:-/usr/share/live-helper}"/live-helper.sh + +# Setting static variables +DESCRIPTION="$(Echo 'build iso source image')" +HELP="" +USAGE="${PROGRAM} [--force]" + +Arguments "${@}" + +# Reading configuration files +Read_conffiles config/all config/common config/bootstrap config/chroot config/binary config/source +Set_defaults + +if [ "${LH_SOURCE}" != "true" ] +then + exit 0 +fi + +if ! In_list iso "${LH_SOURCE_IMAGES}" +then + exit 0 +fi + +Echo_message "Begin building source iso image..." + +# Requiring stage file +Require_stagefile .stage/config .stage/source_debian + +# Checking stage file +Check_stagefile .stage/source_iso + +# Checking lock file +Check_lockfile .lock + +# Creating lock file +Create_lockfile .lock + +# Checking depends +Check_package chroot/usr/bin/genisoimage genisoimage + +# Installing depends +Install_package + +# Remove old iso image +if [ -f source.iso ] +then + rm -f source.iso +fi + +if [ "${_QUIET}" = "true" ] +then + GENISOIMAGE_OPTIONS="${GENISOIMAGE_OPTIONS} -quiet" +fi + +if [ "${_VERBOSE}" = "true" ] +then + GENISOIMAGE_OPTIONS="${GENISOIMAGE_OPTIONS} -v" +fi + +if [ -n "${LH_ISO_APPLICATION}" ] && [ "${LH_ISO_APPLICATION}" != "none" ] +then + GENISOIMAGE_OPTIONS="${GENISOIMAGE_OPTIONS} -A \"${LH_ISO_APPLICATION}\"" +fi + +if [ -n "${LH_ISO_PREPARER}" ] && [ "${LH_ISO_PREPARER}" != "none" ] +then + GENISOIMAGE_OPTIONS="${GENISOIMAGE_OPTIONS} -p \"${LH_ISO_PREPARER}\"" +fi + +if [ -n "${LH_ISO_PUBLISHER}" ] && [ "${LH_ISO_PUBLISHER}" != "none" ] +then + GENISOIMAGE_OPTIONS="${GENISOIMAGE_OPTIONS} -publisher \"${LH_ISO_PUBLISHER}\"" +fi + +if [ -n "${LH_ISO_VOLUME}" ] && [ "${LH_ISO_VOLUME}" != "none" ] +then + GENISOIMAGE_OPTIONS="${GENISOIMAGE_OPTIONS} -V \"${LH_ISO_VOLUME}\"" +fi + +# Moving image +mv source chroot + +cat >> chroot/source.sh << EOF +genisoimage ${GENISOIMAGE_OPTIONS} -o source.iso -r -J -l -cache-inodes source +EOF + +Chroot chroot "sh source.sh" + +# Move image +mv chroot/source chroot/source.iso ./ +rm -f chroot/source.sh + +# Removing depends +Remove_package + +# Creating stage file +Create_stagefile .stage/source_iso |