diff options
author | Chris Lamb <chris@chris-lamb.co.uk> | 2008-04-17 04:13:49 +0100 |
---|---|---|
committer | Daniel Baumann <daniel@debian.org> | 2011-03-09 19:03:32 +0100 |
commit | 36cc525945f8726662dbb35395a24064cee0098f (patch) | |
tree | 0fa56a1d775b64c68bbfed441499872f4463870f /helpers/lh_chroot_packageslists | |
parent | ae785955db43a135455b50b98807a26b9fb8805a (diff) | |
download | live-build-36cc525945f8726662dbb35395a24064cee0098f.zip live-build-36cc525945f8726662dbb35395a24064cee0098f.tar.gz |
Install most chroot packages in one ${LH_APT} call (Closes: #475739)
This patch installs (almost) all chroot packages by queueing the package
names into a single file and then installing that. It depends on my
previous patch to install local packages by using an APT mirror.
This speeds up image build causes even greater speedups once more packages
adopt triggers.
(Packages installed by debconf preseeding are not touched, nor are packages
installed by tasks.)
Diffstat (limited to 'helpers/lh_chroot_packageslists')
-rwxr-xr-x | helpers/lh_chroot_packageslists | 33 |
1 files changed, 10 insertions, 23 deletions
diff --git a/helpers/lh_chroot_packageslists b/helpers/lh_chroot_packageslists index 21b5107..05d742d 100755 --- a/helpers/lh_chroot_packageslists +++ b/helpers/lh_chroot_packageslists @@ -1,6 +1,6 @@ #!/bin/sh -# lh_chroot_packageslists(1) - install packages lists into chroot +# lh_chroot_packageslists(1) - queue install of packages lists into chroot # Copyright (C) 2006-2008 Daniel Baumann <daniel@debian.org> # # live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING. @@ -18,7 +18,7 @@ do done # Setting static variables -DESCRIPTION="install packages lists into chroot" +DESCRIPTION="queue install of packages lists into chroot" HELP="" USAGE="${PROGRAM} [--force]" @@ -28,7 +28,7 @@ Arguments "${@}" Read_conffile config/all config/common config/bootstrap config/chroot config/binary config/source Set_defaults -Echo_message "Begin installing packages lists..." +Echo_message "Begin queueing installation of packages lists..." # Requiring stage file Require_stagefile .stage/bootstrap @@ -44,35 +44,22 @@ Create_lockfile .lock if [ -n "${LH_PACKAGES_LISTS}" ] && [ "${LH_PACKAGES_LISTS}" != "none" ] then - # Restoring cache - Restore_cache cache/packages_packageslists for LIST in ${LH_PACKAGES_LISTS} do if [ -f ${LH_BASE:-/usr/share/live-helper}/lists/"${LIST}" ] then # Generating package list - Expand_packagelist "${LIST}" "config/chroot_local-packageslists" "${LH_BASE:-/usr/share/live-helper}/lists" > chroot/root/${LIST} - - # Installing package list - case "${LH_APT}" in - apt|apt-get) - Chroot "xargs --arg-file=/root/${LIST} apt-get ${APT_OPTIONS} install" - ;; - - aptitude) - Chroot "xargs --arg-file=/root/${LIST} aptitude ${APTITUDE_OPTIONS} install" - ;; - esac - - # Removing package list - rm -f chroot/root/"${LIST}" + Expand_packagelist \ + "${LIST}" \ + "config/chroot_local-packageslists" \ + "${LH_BASE:-/usr/share/live-helper}/lists" \ + >> chroot/root/chroot_packages + else + Echo_warning "skipping installation of unknown packages list '${LIST}'." fi done - # Saving cache - Save_cache cache/packages_packageslists - # Creating stage file Create_stagefile .stage/chroot_packageslists fi |