#!/bin/sh ## live-build(7) - System Build Scripts ## Copyright (C) 2006-2015 Daniel Baumann ## ## This program 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 [ -e "${LIVE_BUILD}/scripts/build.sh" ] && . "${LIVE_BUILD}/scripts/build.sh" || . /usr/lib/live/build.sh # Setting static variables DESCRIPTION="Build netboot binary image" USAGE="${PROGRAM} [--force]" # Processing arguments and configuration files Init_config_data "${@}" if ! In_list netboot "${LIVE_IMAGE_TYPE}" then exit 0 fi if [ "${LB_NET_TARBALL}" = "false" ] then exit 0 fi Echo_message "Begin building binary netboot image..." # Requiring stage file Require_stagefile .build/config .build/bootstrap # Checking stage file Check_stagefile .build/binary_netboot # Checking lock file Check_lockfile .lock # Creating lock file Create_lockfile .lock # Remove old binary rm -f ${LIVE_IMAGE_NAME}-${LB_ARCHITECTURES}.netboot.tar ${LIVE_IMAGE_NAME}-${LB_ARCHITECTURES}.netboot.tar.gz ${LIVE_IMAGE_NAME}-${LB_ARCHITECTURES}.netboot.tar.bz2 ${LIVE_IMAGE_NAME}-${LB_ARCHITECTURES}.netboot.tar.xz ${LIVE_IMAGE_NAME}-${LB_ARCHITECTURES}.netboot.tar.xz # Creating image file ROOT_DIR=$(basename ${LB_NET_ROOT_PATH}) if [ "${ROOT_DIR}" = "chroot" ] then mv chroot chroot.tmp fi if [ "${ROOT_DIR}" != "binary" ] then mv binary ${ROOT_DIR} fi mkdir binary.tmp mv ${ROOT_DIR} tftpboot binary.tmp cd binary.tmp # Moving kernel and initrd image arround mkdir tftpboot/live mv */live/vmlinuz* */live/initrd* tftpboot/live tar cf ../${LIVE_IMAGE_NAME}-${LB_ARCHITECTURES}.netboot.tar * case "${LB_COMPRESSION}" in bzip2) bzip2 ${BZIP2_OPTIONS} ../${LIVE_IMAGE_NAME}-${LB_ARCHITECTURES}.netboot.tar ;; gzip) gzip ${GZIP_OPTIONS} ../${LIVE_IMAGE_NAME}-${LB_ARCHITECTURES}.netboot.tar ;; lzip) lzip ${LZIP_OPTIONS} ../${LIVE_IMAGE_NAME}-${LB_ARCHITECTURES}.netboot.tar ;; xz) xz ${XZ_OPTIONS} ../${LIVE_IMAGE_NAME}-${LB_ARCHITECTURES}.netboot.tar ;; none) ;; esac mv * ../ cd "${OLDPWD}" rmdir binary.tmp if [ "${ROOT_DIR}" != "binary" ] then mv ${ROOT_DIR} binary fi if [ "${ROOT_DIR}" = "chroot" ] then mv chroot.tmp chroot fi # Creating stage file Create_stagefile .build/binary_netboot