summaryrefslogtreecommitdiff
path: root/helpers/lh_chroot_tasks
diff options
context:
space:
mode:
authorDaniel Baumann <daniel@debian.org>2007-09-23 10:04:48 +0200
committerDaniel Baumann <daniel@debian.org>2011-03-09 18:18:28 +0100
commit799d4bfb31c279b72088c8ee8a16c2710ab8a309 (patch)
tree4bbc1758ceaa46c5e81fe9d66ccdaacfec047ef8 /helpers/lh_chroot_tasks
parent677415f6d7efc1e5b888570d70af311d2900c69c (diff)
downloadlive-build-799d4bfb31c279b72088c8ee8a16c2710ab8a309.zip
live-build-799d4bfb31c279b72088c8ee8a16c2710ab8a309.tar.gz
Adding live-helper 1.0~a3-1.
Diffstat (limited to 'helpers/lh_chroot_tasks')
-rwxr-xr-xhelpers/lh_chroot_tasks66
1 files changed, 53 insertions, 13 deletions
diff --git a/helpers/lh_chroot_tasks b/helpers/lh_chroot_tasks
index b2ffb8f..33a8464 100755
--- a/helpers/lh_chroot_tasks
+++ b/helpers/lh_chroot_tasks
@@ -1,6 +1,11 @@
#!/bin/sh
# lh_chroot_tasks(1) - install tasks into chroot
+# Copyright (C) 2006-2007 Daniel Baumann <daniel@debian.org>
+#
+# live-helper 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
@@ -10,6 +15,13 @@ do
. ${FUNCTION}
done
+# Set static variables
+DESCRIPTION="install tasks into chroot"
+HELP=""
+USAGE="${PROGRAM} [--force]"
+
+Arguments "${@}"
+
# Reading configuration files
Read_conffile config/common
Read_conffile config/chroot
@@ -27,29 +39,57 @@ Check_lockfile .lock
# Creating lock file
Create_lockfile .lock
-if [ -n "${LIVE_TASKS}" ] && [ "${LH_APT}" = "aptitude" ]
+if [ -n "${LIVE_TASKS}" ]
then
- # Restore old cache
- if [ -d cache/chroot_tasks ]
+ # Restoring cache
+ Restore_cache cache/chroot_tasks
+
+ if [ ! -f chroot/usr/bin/aptitude ]
+ then
+ PACKAGES="${PACKAGES} aptitude"
+ fi
+
+ if [ ! -f chroot/usr/bin/tasksel ]
then
- cp cache/chroot_tasks/*.deb chroot/var/cache/apt/archives
+ PACKAGES="${PACKAGES} tasksel"
fi
- Chroot "aptitude install --assume-yes ${LIVE_TASKS}"
+ if [ -n "${PACKAGES}" ]
+ then
+ # Installing symlinks
+ case "${LH_APT}" in
+ apt|apt-get)
+ Chroot "apt-get install --yes ${PACKAGES}"
+ ;;
- # Saving new cache
- Chroot "apt-get autoclean"
+ aptitude)
+ Chroot "aptitude install --assume-yes ${PACKAGES}"
+ ;;
+ esac
+ fi
- if ls chroot/var/cache/apt/archives/*.deb &> /dev/null
+ for TASK in ${LIVE_TASKS}
+ do
+ Chroot "tasksel --debconf-apt-progress --logstderr install ${TASK}"
+ done
+
+ if [ -n "${PACKAGES}" ]
then
- if [ ! -d cache/chroot_tasks ]
- then
- mkdir -p cache/chroot_tasks
- fi
+ # Removing packages
+ case "${LH_APT}" in
+ apt|apt-get)
+ Chroot "apt-get remove --purge --yes ${PACKAGES}"
+ ;;
- mv -f chroot/var/cache/apt/archives/*.deb cache/chroot_tasks
+ aptitude)
+ Chroot "aptitude purge --assume-yes ${PACKAGES}"
+ ;;
+ esac
fi
+ # Saving cache
+ Save_cache cache/chroot_tasks
+
# Creating stage file
Create_stagefile .stage/chroot_tasks
fi