From 933d803877def8227fb80053ad592a82e0ba786b Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Thu, 28 Oct 2010 09:51:55 +0200 Subject: Shuffeling dpkg tmpfs hack arround in preparation for generic tmpfs support. --- functions/defaults.sh | 2 + scripts/build/lb_chroot | 4 +- scripts/build/lb_chroot_dpkg_tmpfs | 75 ----------------------------------- scripts/build/lb_chroot_tmpfs | 80 ++++++++++++++++++++++++++++++++++++++ 4 files changed, 84 insertions(+), 77 deletions(-) delete mode 100755 scripts/build/lb_chroot_dpkg_tmpfs create mode 100755 scripts/build/lb_chroot_tmpfs diff --git a/functions/defaults.sh b/functions/defaults.sh index 26756ae9c..c6e94f3d4 100755 --- a/functions/defaults.sh +++ b/functions/defaults.sh @@ -842,6 +842,8 @@ Set_defaults () # Setting chroot option LB_BUILD_WITH_CHROOT="${LB_BUILD_WITH_CHROOT:-true}" + LB_BUILD_WITH_TMPFS="${LB_BUILD_WITH_TMPFS:-false}" + # Setting debian-installer option LB_DEBIAN_INSTALLER="${LB_DEBIAN_INSTALLER:-false}" diff --git a/scripts/build/lb_chroot b/scripts/build/lb_chroot index 2fe7283a9..a5e83f044 100755 --- a/scripts/build/lb_chroot +++ b/scripts/build/lb_chroot @@ -42,7 +42,7 @@ lb chroot_selinuxfs install ${*} lb chroot_sysfs install ${*} lb chroot_debianchroot install ${*} lb chroot_dpkg install ${*} -lb chroot_dpkg_tmpfs install ${*} +lb chroot_tmpfs install ${*} lb chroot_sysv-rc install ${*} lb chroot_upstart install ${*} lb chroot_hosts install ${*} @@ -79,7 +79,7 @@ lb chroot_resolv remove ${*} lb chroot_hosts remove ${*} lb chroot_sysv-rc remove ${*} lb chroot_upstart remove ${*} -lb chroot_dpkg_tmpfs remove ${*} +lb chroot_tmpfs remove ${*} lb chroot_dpkg remove ${*} lb chroot_debianchroot remove ${*} lb chroot_sysfs remove ${*} diff --git a/scripts/build/lb_chroot_dpkg_tmpfs b/scripts/build/lb_chroot_dpkg_tmpfs deleted file mode 100755 index db3b8bf68..000000000 --- a/scripts/build/lb_chroot_dpkg_tmpfs +++ /dev/null @@ -1,75 +0,0 @@ -#!/bin/sh - -## live-build(7) - System Build Scripts -## Copyright (C) 2006-2010 Daniel Baumann -## -## live-build 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 -. "${LB_BASE:-/usr/share/live/build}"/scripts/build.sh - -# Setting static variables -DESCRIPTION="$(Echo 'manage /var/lib/dpkg')" -HELP="" -USAGE="${PROGRAM} {install|remove} [--force]" - -Arguments "${@}" - -# Reading configuration files -Read_conffiles config/all config/common config/bootstrap config/chroot config/binary config/source -Set_defaults - -# Requiring stage file -Require_stagefile .stage/config .stage/bootstrap - -case "${1}" in - install) - Echo_message "Configuring tmpfs for /var/lib/dpkg" - - # Checking stage file - Check_stagefile .stage/chroot_dpkg_tmpfs - - # Checking lock file - Check_lockfile .lock - - # Creating lock file - Create_lockfile .lock - - mv chroot/var/lib/dpkg chroot/var/lib/dpkg.tmp - mkdir chroot/var/lib/dpkg - mount -t tmpfs tmpfs chroot/var/lib/dpkg - mv chroot/var/lib/dpkg.tmp/* chroot/var/lib/dpkg - rm -rf chroot/var/lib/dpkg.tmp - - # Creating stage file - Create_stagefile .stage/chroot_dpkg_tmpfs - ;; - - remove) - Echo_message "Deconfiguring tmpfs for /var/lib/dpkg" - - # Checking lock file - Check_lockfile .lock - - # Creating lock file - Create_lockfile .lock - - mkdir -p chroot/var/lib/dpkg.tmp - mv chroot/var/lib/dpkg/* chroot/var/lib/dpkg.tmp - umount chroot/var/lib/dpkg - rm -rf chroot/var/lib/dpkg - mv chroot/var/lib/dpkg.tmp chroot/var/lib/dpkg - - # Removing stage file - rm -f .stage/chroot_dpkg_tmpfs - ;; - - *) - Usage - ;; -esac diff --git a/scripts/build/lb_chroot_tmpfs b/scripts/build/lb_chroot_tmpfs new file mode 100755 index 000000000..411452c52 --- /dev/null +++ b/scripts/build/lb_chroot_tmpfs @@ -0,0 +1,80 @@ +#!/bin/sh + +## live-build(7) - System Build Scripts +## Copyright (C) 2006-2010 Daniel Baumann +## +## live-build 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 +. "${LB_BASE:-/usr/share/live/build}"/scripts/build.sh + +# Setting static variables +DESCRIPTION="$(Echo 'use tmpfs to speedup the build')" +HELP="" +USAGE="${PROGRAM} {install|remove} [--force]" + +Arguments "${@}" + +# Reading configuration files +Read_conffiles config/all config/common config/bootstrap config/chroot config/binary config/source +Set_defaults + +if [ "${LB_BUILD_WITH_TMPFS}" != "true" ] +then + exit 0 +fi + +# Requiring stage file +Require_stagefile .stage/config .stage/bootstrap + +case "${1}" in + install) + Echo_message "Configuring tmpfs for /var/lib/dpkg" + + # Checking stage file + Check_stagefile .stage/chroot_tmpfs + + # Checking lock file + Check_lockfile .lock + + # Creating lock file + Create_lockfile .lock + + mv chroot/var/lib/dpkg chroot/var/lib/dpkg.tmp + mkdir chroot/var/lib/dpkg + mount -t tmpfs tmpfs chroot/var/lib/dpkg + mv chroot/var/lib/dpkg.tmp/* chroot/var/lib/dpkg + rm -rf chroot/var/lib/dpkg.tmp + + # Creating stage file + Create_stagefile .stage/chroot_tmpfs + ;; + + remove) + Echo_message "Deconfiguring tmpfs for /var/lib/dpkg" + + # Checking lock file + Check_lockfile .lock + + # Creating lock file + Create_lockfile .lock + + mkdir -p chroot/var/lib/dpkg.tmp + mv chroot/var/lib/dpkg/* chroot/var/lib/dpkg.tmp + umount chroot/var/lib/dpkg + rm -rf chroot/var/lib/dpkg + mv chroot/var/lib/dpkg.tmp chroot/var/lib/dpkg + + # Removing stage file + rm -f .stage/chroot_tmpfs + ;; + + *) + Usage + ;; +esac -- cgit v1.2.3