From 34e1d6b5dc00f174b8e4ef41c46960ccdf2a8a0c Mon Sep 17 00:00:00 2001 From: Simo Leone Date: Tue, 23 Oct 2007 23:22:17 -0500 Subject: Make default-config an overlay This allows the root image to remain a [mostly] pristine image, and turns default liveCD configurations into an overlay, rather than copying them into the root image. Signed-off-by: Simo Leone --- hooks/archiso | 4 ++++ mkarchiso | 17 ++++++++++++++--- 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/hooks/archiso b/hooks/archiso index fc19d89..86c5885 100644 --- a/hooks/archiso +++ b/hooks/archiso @@ -58,6 +58,10 @@ run_hook () export LOOP_NUM="1" addon_dir="${BOOT_MOUNT}/addons" + + # always layer default configuration + _mnt_squashfs "default-config.sqfs" + if [ -e "${addon_dir}/config" ]; then msg ":: Mounting addons" while read img mountpoint type; do diff --git a/mkarchiso b/mkarchiso index c54a912..7f2e375 100755 --- a/mkarchiso +++ b/mkarchiso @@ -167,15 +167,26 @@ if [ "${command_name}" = "install" -o "${command_name}" = "all" ]; then [ "$(basename ${d})" != "local" ] && rm -rf "${d}" done - if [ -e "${instroot}/boot" ]; then + # copy over kernel and grub configs for boot + if [ -e "${instroot}/boot" -a -e "${DEF_CONFIG_DIR}/boot" ]; then rm -rf "${isoroot}/boot" - mv "${instroot}/boot" "${isoroot}" + cp -r "${instroot}/boot" "${isoroot}" + cp -rf "${DEF_CONFIG_DIR}/boot" "${isoroot}" fi # TODO: this might belong somewhere else + mkdir -p "${isoroot}/addons" if [ -d "${ADDON_DIR}" ]; then echo "Copying addons from ${ADDON_DIR}..." - cp -r ${ADDON_DIR} ${isoroot}/addons + cp -r ${ADDON_DIR}/* "${isoroot}/addons" + fi + + # always make an addon out of DEF_CONFIG_DIR + echo "Creating default-config addon..." + if [ "${QUIET}" = "y" ]; then + mksquashfs "${DEF_CONFIG_DIR}" "${isoroot}/addons/default-config.sqfs" >/dev/null + else + mksquashfs "${DEF_CONFIG_DIR}" "${isoroot}/addons/default-config.sqfs" fi fi -- cgit v1.2.3-54-g00ecf