#!/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="Cache bootstrap stage" USAGE="${PROGRAM} [--force]" # Processing arguments and configuration files Init_config_data "${@}" # Check architecture Check_crossarchitectures if ! In_list "bootstrap" ${LB_CACHE_STAGES}; then exit 0 fi _ACTION="${1}" shift if ! In_list "${_ACTION}" restore save; then Echo_error "Invalid action parameter" exit 1 fi # Set non-default stage file name # Note, this (plus the applicable extension added below) must match that used in `bootstrap_debootstrap` STAGE_FILE="bootstrap_cache.${_ACTION}" case "${_ACTION}" in restore) # Checking stage file Check_stagefile "${STAGE_FILE}" if [ -d cache/bootstrap ] then Echo_message "Restoring bootstrap stage from cache..." # Acquire lock file Acquire_lockfile # Removing old chroot rm -rf chroot # Restoring old cache cp -a cache/bootstrap chroot # Creating stage file Create_stagefile "${STAGE_FILE}" Create_stagefile "bootstrap" exit 0 fi ;; save) Echo_message "Saving bootstrap stage to cache..." # Checking stage file Check_stagefile "${STAGE_FILE}" # Acquire lock file Acquire_lockfile rm -rf cache/bootstrap mkdir -p cache cp -a chroot cache/bootstrap # Creating stage file Create_stagefile "${STAGE_FILE}" ;; esac