diff options
Diffstat (limited to 'scripts/build/lb_bootstrap_cdebootstrap')
-rwxr-xr-x | scripts/build/lb_bootstrap_cdebootstrap | 232 |
1 files changed, 116 insertions, 116 deletions
diff --git a/scripts/build/lb_bootstrap_cdebootstrap b/scripts/build/lb_bootstrap_cdebootstrap index 2f648a3c0..759d4587e 100755 --- a/scripts/build/lb_bootstrap_cdebootstrap +++ b/scripts/build/lb_bootstrap_cdebootstrap @@ -32,146 +32,146 @@ fi # Check architecture Check_crossarchitectures -Echo_message "Begin bootstrapping system..." +for _ARCHITECTURE in ${LB_ARCHITECTURES} +do + Echo_message "Begin bootstrapping system..." -Check_package /usr/bin/${LB_BOOTSTRAP} cdebootstrap + Check_package /usr/bin/${LB_BOOTSTRAP} cdebootstrap -# Ensure that a system is built as root -lb testroot + # Ensure that a system is built as root + lb testroot -# Checking stage file -Check_stagefile .stage/bootstrap -Check_stagefile .stage/bootstrap_cache.restore + # Checking stage file + Check_stagefile .stage/bootstrap.${_ARCHITECTURE} + Check_stagefile .stage/bootstrap_cache.${_ARCHITECTURE}-restore -# Checking lock file -Check_lockfile .lock + # Checking lock file + Check_lockfile .lock -# Creating lock file -Create_lockfile .lock + # Creating lock file + Create_lockfile .lock -# Creating chroot directory -mkdir -p chroot + # Creating chroot directory + mkdir -p chroot.${_ARCHITECTURE} -# Setting cdebootstrap options -if [ -n "${LB_ARCHITECTURES}" ] -then - CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --arch=${LB_ARCHITECTURES}" -fi + # Setting cdebootstrap options + CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --arch=${_ARCHITECTURE}" -if [ -n "${LB_BOOTSTRAP_CONFIG}" ] -then - CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --suite-config=${LB_BOOTSTRAP_CONFIG}" -fi + if [ -n "${LB_BOOTSTRAP_CONFIG}" ] + then + CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --suite-config=${LB_BOOTSTRAP_CONFIG}" + fi -if [ -n "${LB_BOOTSTRAP_INCLUDE}" ] -then - CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --include=$(echo ${LB_BOOTSTRAP_INCLUDE} | sed 's| *|,|g')" -fi + if [ -n "${LB_BOOTSTRAP_INCLUDE}" ] + then + CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --include=$(echo ${LB_BOOTSTRAP_INCLUDE} | sed 's| *|,|g')" + fi -if [ -n "${LB_BOOTSTRAP_EXCLUDE}" ] -then - CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --exclude=$(echo ${LB_BOOTSTRAP_EXCLUDE} | sed 's| *|,|g')" -fi + if [ -n "${LB_BOOTSTRAP_EXCLUDE}" ] + then + CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --exclude=$(echo ${LB_BOOTSTRAP_EXCLUDE} | sed 's| *|,|g')" + fi -if [ -n "${LB_BOOTSTRAP_KEYRING}" ] -then - CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --keyring=${LB_BOOTSTRAP_KEYRING}" -fi + if [ -n "${LB_BOOTSTRAP_KEYRING}" ] + then + CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --keyring=${LB_BOOTSTRAP_KEYRING}" + fi -if [ -z "${LB_BOOTSTRAP_FLAVOUR}" ] -then - case "${LB_PACKAGE_LISTS}" in - stripped|minimal) - CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --flavour=minimal" - ;; - *) - CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --flavour=standard" - ;; - esac -else - case "${LB_BOOTSTRAP_FLAVOUR}" in - stripped|minimal) - CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --flavour=minimal" - ;; - - *) - CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --flavour=${LB_BOOTSTRAP_FLAVOUR}" - ;; - esac -fi + if [ -z "${LB_BOOTSTRAP_FLAVOUR}" ] + then + case "${LB_PACKAGE_LISTS}" in + stripped|minimal) + CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --flavour=minimal" + ;; + *) + CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --flavour=standard" + ;; + esac + else + case "${LB_BOOTSTRAP_FLAVOUR}" in + stripped|minimal) + CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --flavour=minimal" + ;; + + *) + CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --flavour=${LB_BOOTSTRAP_FLAVOUR}" + ;; + esac + fi -if [ "${_DEBUG}" = "true" ] -then - CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --debug" -fi + if [ "${_DEBUG}" = "true" ] + then + CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --debug" + fi -if [ "${_QUIET}" = "true" ] -then - CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --quiet" -fi + if [ "${_QUIET}" = "true" ] + then + CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --quiet" + fi -if [ "${_VERBOSE}" = "true" ] -then - CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --verbose" -fi + if [ "${_VERBOSE}" = "true" ] + then + CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --verbose" + fi -if [ "${LB_APT_SECURE}" = "false" ] -then - CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --allow-unauthenticated" -fi + if [ "${LB_APT_SECURE}" = "false" ] + then + CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --allow-unauthenticated" + fi -if [ -x "/usr/bin/cdebootstrap" ] || [ -x "/usr/bin/cdebootstrap-static" ] -then - if [ "${LB_CACHE_PACKAGES}" = "true" ] + if [ -x "/usr/bin/cdebootstrap" ] || [ -x "/usr/bin/cdebootstrap-static" ] then - if ls cache/packages_bootstrap/*.deb > /dev/null 2>&1 + if [ "${LB_CACHE_PACKAGES}" = "true" ] then - mkdir -p chroot/var/cache/bootstrap - cp cache/packages_bootstrap/*.deb chroot/var/cache/bootstrap + if ls cache/packages_bootstrap.${_ARCHITECTURE}/*.deb > /dev/null 2>&1 + then + mkdir -p chroot.${_ARCHITECTURE}/var/cache/bootstrap + cp cache/packages_bootstrap.${_ARCHITECTURE}/*.deb chroot.${_ARCHITECTURE}/var/cache/bootstrap + fi + + Echo_breakage "Running ${LB_BOOTSTRAP} (download-only)... " + ${LB_ROOT_COMMAND} ${LB_BOOTSTRAP} ${CDEBOOTSTRAP_OPTIONS} --download-only "${LB_DISTRIBUTION}" chroot.${_ARCHITECTURE} "${LB_MIRROR_BOOTSTRAP}" + + if [ -n "${LB_ROOT_COMMAND}" ] + then + ${LB_ROOT_COMMAND} chown -R $(whoami):$(whoami) chroot.${_ARCHITECTURE} + fi + + # Removing old cache + rm -f cache/packages_bootstrap.${_ARCHITECTURE}/*.deb + + # Saving new cache + mkdir -p cache/packages_bootstrap.${_ARCHITECTURE} + cp chroot/var/cache/bootstrap/*.deb cache/packages_bootstrap.${_ARCHITECTURE} fi - Echo_breakage "Running ${LB_BOOTSTRAP} (download-only)... " - ${LB_ROOT_COMMAND} ${LB_BOOTSTRAP} ${CDEBOOTSTRAP_OPTIONS} --download-only "${LB_DISTRIBUTION}" chroot "${LB_MIRROR_BOOTSTRAP}" + Echo_breakage "Running ${LB_BOOTSTRAP}... " + ${LB_ROOT_COMMAND} ${LB_BOOTSTRAP} ${CDEBOOTSTRAP_OPTIONS} "${LB_DISTRIBUTION}" chroot.${_ARCHITECTURE} "${LB_MIRROR_BOOTSTRAP}" if [ -n "${LB_ROOT_COMMAND}" ] then - ${LB_ROOT_COMMAND} chown -R $(whoami):$(whoami) chroot + ${LB_ROOT_COMMAND} chown -R $(whoami):$(whoami) chroot.${_ARCHITECTURE} fi - # Removing old cache - rm -f cache/packages_bootstrap/*.deb - - # Saving new cache - mkdir -p cache/packages_bootstrap - cp chroot/var/cache/bootstrap/*.deb cache/packages_bootstrap + # Remove cdebootstrap-helper-diverts (needed at least for minimal flavours) + case "${LB_PACKAGE_LISTS}" in + stripped|minimal) + Chroot chroot.${_ARCHITECTURE} "dpkg -P cdebootstrap-helper-diverts" + ;; + esac + + # Deconfiguring cdebootstrap configurations + rm -f chroot.${_ARCHITECTURE}/etc/apt/sources.list + rm -f chroot.${_ARCHITECTURE}/etc/hosts + rm -f chroot.${_ARCHITECTURE}/etc/resolv.conf + + # Removing bootstrap cache + rm -rf chroot.${_ARCHITECTURE}/var/cache/bootstrap + + # Creating stage file + Create_stagefile .stage/bootstrap.${_ARCHITECTURE} + else + Echo_error "Can't process file /usr/bin/${LB_BOOTSTRAP} (FIXME)" + exit 1 fi - - Echo_breakage "Running ${LB_BOOTSTRAP}... " - ${LB_ROOT_COMMAND} ${LB_BOOTSTRAP} ${CDEBOOTSTRAP_OPTIONS} "${LB_DISTRIBUTION}" chroot "${LB_MIRROR_BOOTSTRAP}" - - if [ -n "${LB_ROOT_COMMAND}" ] - then - ${LB_ROOT_COMMAND} chown -R $(whoami):$(whoami) chroot - fi - - # Remove cdebootstrap-helper-diverts (needed at least for minimal flavours) - case "${LB_PACKAGE_LISTS}" in - stripped|minimal) - Chroot chroot "dpkg -P cdebootstrap-helper-diverts" - ;; - esac - - # Deconfiguring cdebootstrap configurations - rm -f chroot/etc/apt/sources.list - rm -f chroot/etc/hosts - rm -f chroot/etc/resolv.conf - - # Removing bootstrap cache - rm -rf chroot/var/cache/bootstrap - - # Creating stage file - Create_stagefile .stage/bootstrap -else - Echo_error "Can't process file /usr/bin/${LB_BOOTSTRAP} (FIXME)" - exit 1 -fi +done |