#!/bin/sh ## live-build(7) - System Build Scripts ## Copyright (C) 2016-2020 The Debian Live team ## 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="Utility to build live systems" HELP="" USAGE="lb {clean|config|build}" case "${1}" in -h|--help) if [ $(which man) ]; then man lb else ${0} --usage fi exit 0 ;; ""|-u|--usage) Usage ;; -v|--version) echo "${VERSION}" exit 0 ;; esac COMMAND="${1}" shift ENV="" if [ "${COMMAND}" != "config" ]; then # Checking user account if [ "$(id -u)" -ne "0" ]; then Echo_error "Root privileges needed!" exit 1 fi fi for _FILE in config/environment config/environment.binary; do if [ -e "${_FILE}" ]; then ENV="${ENV} $(grep -v '^#' ${_FILE})" fi done if [ -x "${LIVE_BUILD}/scripts/build/${COMMAND}" ]; then # User has live-build copied locally in the system SCRIPT="${LIVE_BUILD}/scripts/build/${COMMAND}" elif [ -x "local/live-build/scripts/build/${COMMAND}" ]; then # User has live-build copied locally in the config SCRIPT="local/live-build/scripts/build/${COMMAND}"; elif [ -x /usr/lib/live/build/${COMMAND} ]; then # User has live-build installed in the system SCRIPT=/usr/lib/live/build/"${COMMAND}" elif [ $(which "${COMMAND}") ]; then # User has live-build commands in path SCRIPT="${COMMAND}" else Echo_error "No such script: ${COMMAND}" exit 1 fi Echo "[%s] %s" "$(date +'%F %T')" "lb ${COMMAND} $(echo ${@})" ${ENV} exec "${SCRIPT}" "${@}"