#!/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="Installs a memtest into binary" USAGE="${PROGRAM} [--force]" # Processing arguments and configuration files Init_config_data "${@}" if [ "${LB_MEMTEST}" = "none" ] || [ "${LB_CHROOT_FILESYSTEM}" = "none" ] then exit 0 fi Echo_message "Begin installing memtest..." # Requiring stage file Require_stagefiles config bootstrap # Checking stage file Check_stagefile # Acquire lock file Acquire_lockfile if [ "${LB_ARCHITECTURES}" != "amd64" ] && [ "${LB_ARCHITECTURES}" != "i386" ] then Echo_warning "Skipping binary_memtest, foreign architecture." exit 0 fi if [ "${LB_BUILD_WITH_CHROOT}" = "true" ] then if [ -f chroot/usr/sbin/grub ] && [ ! -f chroot/boot/grub/menu.lst ] then GRUB="yes" mkdir -p chroot/boot/grub touch chroot/boot/grub/menu.lst fi fi # Checking depends case "${LB_MEMTEST}" in memtest86) Check_package chroot /boot/memtest86.bin memtest86 ;; memtest86+) Check_package chroot /boot/memtest86+.bin memtest86+ ;; esac # Restoring cache Restore_package_cache binary # Installing depends Install_package # Setting destination directory case "${LB_INITRAMFS}" in live-boot) DESTDIR="binary/live" ;; *) DESTDIR="binary/boot" ;; esac # Creating directory mkdir -p "${DESTDIR}" # Installing memtest case "${LB_BUILD_WITH_CHROOT}" in true) cp chroot/boot/${LB_MEMTEST}.bin "${DESTDIR}"/memtest ;; false) cp /boot/${LB_MEMTEST}.bin "${DESTDIR}"/memtest ;; esac # Saving cache Save_package_cache binary # Removing depends Remove_package if [ "${GRUB}" ] then rm -rf chroot/boot/grub fi # Creating stage file Create_stagefile