summaryrefslogtreecommitdiff
path: root/bin/tcos-buildchroot
diff options
context:
space:
mode:
authorMario Izquierdo (mariodebian) <mariodebian@gmail.com>2012-06-22 12:42:53 +0100
committerMario Izquierdo (mariodebian) <mariodebian@gmail.com>2012-06-22 12:42:53 +0100
commit85e11fb132b2b81b50a45647b070e8f6fd648d65 (patch)
tree1238a0e269d68604457ef6435e1c7ec18ffe7e20 /bin/tcos-buildchroot
tcos (0.89.90) unstable; urgency=low
* debian/initramfs-tools-tcos.postrm: - piuparts, don't call delgroup if can't * Add overlayfs as aufs alternative * hooks-addons/clean_initramfs: multiarch with libpci3 * Simplify grep commands * Install conf/tcos.conf instead of conf/tcos.conf.etc * Use a global LIB_MULTIARCH var * tcos-standalone French translation, thanks to Julien Patriarca, (closes: #672135) # imported from the archive
Diffstat (limited to 'bin/tcos-buildchroot')
-rwxr-xr-xbin/tcos-buildchroot506
1 files changed, 506 insertions, 0 deletions
diff --git a/bin/tcos-buildchroot b/bin/tcos-buildchroot
new file mode 100755
index 0000000..3afc892
--- /dev/null
+++ b/bin/tcos-buildchroot
@@ -0,0 +1,506 @@
+#!/bin/bash
+#
+# tcos-buildchroot This script creates a chroot to build TCOS 32bits images
+#
+# Copyright (C) 2006-2011 mariodebian at gmail
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+#
+
+
+if [ $(id -u) != 0 ]; then
+ echo "Error: need to exec as root user" >&2
+ exit 1
+fi
+
+. /etc/tcos/tcos.conf
+[ -e /var/lib/tcos/version.conf ] && . /var/lib/tcos/version.conf
+. ${TCOS_DIR}/tcos-generation-functions.sh
+
+for tpl in $(tcos_get_templates); do
+ . $tpl
+done
+
+# load forced settings for derivatives
+if [ -d /etc/tcos/conf.d/ ]; then
+ for file in /etc/tcos/conf.d/tcos*conf; do
+ [ -e $file ] && . $file
+ done
+fi
+
+
+export LC_ALL=C
+export LC_MESSAGES=C
+export DEBCONF_FRONTEND="noninteractive"
+export DEBIAN_FRONTEND="noninteractive"
+
+# default settings
+TCOS_ARCH=i386
+TCOS_FLAVOUR=standard
+#TCOS_MIRROR="http://www.tcosproject.org"
+TCOS_MIRROR=
+
+TCOS_PACKAGES="initramfs-tools-tcos p910nd fgetty"
+TCOS_PACKAGES="${TCOS_PACKAGES} binutils acpid alsa-utils twm dropbear mbr file"
+TCOS_PACKAGES="${TCOS_PACKAGES} rdesktop pulseaudio pulseaudio-module-x11"
+TCOS_PACKAGES="${TCOS_PACKAGES} pulseaudio-utils pulseaudio-esound-compat libasound2-plugins"
+TCOS_PACKAGES="${TCOS_PACKAGES} dbus dbus-x11 avahi-daemon"
+
+
+DISTRO_PACKAGES="xserver-xorg xutils xfonts-base xfonts-100dpi libgl1-mesa-dri libgl1-mesa-glx libglu1-mesa mtools xterm wget dosfstools"
+DISTRO_PACKAGES="${DISTRO_PACKAGES} x11-utils debootstrap eject debconf syslinux squashfs-tools"
+DISTRO_PACKAGES="${DISTRO_PACKAGES} python python-dbus alsa-base xauth xserver-xorg-input-all xserver-xorg-input-mouse"
+
+
+# apt options (force-yes)
+APT_OPTS="-y --force-yes"
+ACTION=
+GENTCOS_OPTS="-tftp"
+MIRROR_EXTRAS=""
+TCOS_EXPERIMENTAL=""
+
+UBUNTU_DEF_MIRROR=http://archive.ubuntu.com/ubuntu/
+UBUNTU_DEF_MIRROR2=http://security.ubuntu.com/ubuntu/
+DEBIAN_DEF_MIRROR=http://ftp.de.debian.org/debian/
+
+
+set_conf() {
+ if [ "${DISTRIBUTION}" = "ubuntu" ]; then
+ if [ ! $MIRROR ]; then MIRROR=$UBUNTU_DEF_MIRROR ; fi
+ if [ ! $MIRROR2 ]; then MIRROR2=$UBUNTU_DEF_MIRROR2 ; fi
+ MIRROR_EXTRAS="universe restricted multiverse"
+ #DISTRO_PACKAGES="console-setup ${DISTRO_PACKAGES}"
+ else
+ if [ ! $MIRROR ]; then MIRROR=$DEBIAN_DEF_MIRROR ; fi
+ #DISTRO_PACKAGES="console-data ${DISTRO_PACKAGES} libltdl3 "
+ #DISTRO_PACKAGES="console-tools console-data ${DISTRO_PACKAGES}"
+ fi
+}
+
+# load forced settings for derivatives
+if [ -d /etc/tcos/conf.d/ ]; then
+ for file in /etc/tcos/conf.d/tcos*conf; do
+ [ -e $file ] && . $file
+ done
+fi
+
+usage() {
+ cat << EOF
+tcos-buildchroot usage:
+
+ Actions:
+ --create (Create chroot)
+ --update (Update chroot)
+ --install=package1,package2 (Install some packages in chroot)
+ --update-images (Update chroot TCOS images)
+
+ Options:
+ --arch=xxx (Set Architecture of chroot, default: $TCOS_ARCH)
+ --flavour=xxx (Set flavour of chroot, default: $TCOS_FLAVOUR)
+ --version=xxx (Set version of chroot, default: $TCOS_DISTRO)
+ --forcedistro=xxx (Set distro of chroot, default: $DISTRIBUTION)
+ --dir=xxx (Set dir of chroot, default: $TCOS_CHROOT)
+ --tcos-exp (Enable experimental TCOS branch)
+EOF
+if [ "$DISTRIBUTION" = "ubuntu" ]; then
+cat << EOF
+ --mirror=xxx (Set mirror of chroot, default: $UBUNTU_DEF_MIRROR)
+ --securitymirror=xxx (Set security mirror of chroot, default: $UBUNTU_DEF_MIRROR2)
+EOF
+else
+cat << EOF
+ --mirror=xxx (Set mirror of chroot, default: $DEBIAN_DEF_MIRROR)
+EOF
+fi
+cat << EOF
+ --tcosmirror=xxx (Set mirror of TCOS, default: $TCOS_MIRROR)
+ --kversion=xxx (Set kernel version of chroot, default: $TCOS_KERNEL)
+ --gentcos="xxx" (Set gentcos cmdline options)
+
+EOF
+}
+
+createEmptyCMD() {
+cat << CMD > ${TCOS_CHROOT}/$1
+#!/bin/sh
+#echo " * Fake $1 called: '\$@'"
+exit 0
+CMD
+ chmod +x ${TCOS_CHROOT}/$1
+}
+
+chrootcreate() {
+ mkdir -p ${TCOS_CHROOT}
+
+ debootstrap --arch "${TCOS_ARCH}" ${TCOS_DISTRO} ${TCOS_CHROOT} ${MIRROR}
+
+
+ if [ $? != 0 ]; then echo "Error running debootstrap." ; exit $?; fi
+
+ # Add TCOS mirror
+ [ "x${TCOS_MIRROR}" != "x" ] && echo "deb ${TCOS_MIRROR} ${TCOS_DISTRO} main ${TCOS_EXPERIMENTAL}" >> ${TCOS_CHROOT}/etc/apt/sources.list
+ [ "x${TCOS_MIRROR}" != "x" ] && TCOS_PACKAGES="${TCOS_PACKAGES} tcos-keyring"
+
+ # add extras (universe and multiverse repos)
+ if [ "${MIRROR_EXTRAS}" != "" ]; then
+ echo "deb ${MIRROR} ${TCOS_DISTRO} ${MIRROR_EXTRAS}" >> ${TCOS_CHROOT}/etc/apt/sources.list
+ echo "deb ${MIRROR2} ${TCOS_DISTRO}-security main" >> ${TCOS_CHROOT}/etc/apt/sources.list
+ echo "deb ${MIRROR} ${TCOS_DISTRO}-updates main ${MIRROR_EXTRAS}" >> ${TCOS_CHROOT}/etc/apt/sources.list
+ fi
+
+ # add extra source include in forced settings
+ if [ ! -z ${MIRROR_EXTRA} ];then
+ echo ${MIRROR_EXTRA} >> ${TCOS_CHROOT}/etc/apt/sources.list
+ fi
+
+ # add /etc/resolv.conf (some versions of cdebootstrap don't create it)
+ cat /etc/resolv.conf > ${TCOS_CHROOT}/etc/resolv.conf
+
+ # avoid to use a shell script in chroot
+ chroot ${TCOS_CHROOT} dpkg-divert --package initramfs-tools-tcos \
+ --add --rename --quiet \
+ --divert /sbin/start-stop-daemon.original \
+ /sbin/start-stop-daemon
+
+ chroot ${TCOS_CHROOT} dpkg-divert --package initramfs-tools-tcos \
+ --add --rename --quiet \
+ --divert /usr/sbin/invoke-rc.d.original \
+ /usr/sbin/invoke-rc.d
+
+ # avoid calling udevadm inside chroot
+ # http://bugs.debian.org/627790
+ chroot ${TCOS_CHROOT} dpkg-divert --package initramfs-tools-tcos \
+ --add --rename --quiet \
+ --divert /sbin/udevadm.original \
+ /sbin/udevadm
+ createEmptyCMD /sbin/udevadm
+
+
+ cat << EOF > ${TCOS_CHROOT}/etc/apt/apt.conf
+APT::Install-Recommends "false";
+APT::Install-Suggests "false";
+EOF
+
+ mount --bind /proc ${TCOS_CHROOT}/proc
+ mount --bind /sys ${TCOS_CHROOT}/sys
+
+ # preseed linux-image message
+ cat << EOF > ${TCOS_CHROOT}/preseed
+linux-image-${TCOS_KERNEL} linux-image-${TCOS_KERNEL}/preinst/lilo-initrd-${TCOS_KERNEL} boolean false
+linux-image-${TCOS_KERNEL} linux-image-${TCOS_KERNEL}/preinst/bootloader-initrd-${TCOS_KERNEL} boolean false
+linux-image-${TCOS_KERNEL} linux-image-${TCOS_KERNEL}/postinst/create-kimage-link-${TCOS_KERNEL} boolean false
+linux-image-${TCOS_KERNEL} shared/kernel-image/really-run-bootloader boolean false
+console-common console-data/keymap/policy select Don't touch keymap
+console-data console-data/keymap/policy select Don't touch keymap
+console-setup console-setup/variant select USA
+console-setup console-setup/charmap select UTF-8
+console-setup console-setup/layoutcode string us
+console-setup console-setup/compose select No compose key
+console-setup console-setup/fontsize-text select 16
+console-setup console-setup/optionscode string
+console-setup console-setup/layout select USA
+console-setup console-setup/detect detect-keyboard
+console-setup console-setup/detected note
+console-setup console-setup/variantcode string
+console-setup console-setup/codesetcode string Uni1
+console-setup console-setup/dont_ask_layout error
+console-setup console-setup/modelcode string pc105
+console-setup console-setup/ask_detect boolean false
+console-setup console-setup/altgr select No AltGr key
+console-setup console-setup/ttys string /dev/tty[1-6]
+console-setup console-setup/model select Generic 105-key (Intl) PC
+console-setup console-setup/fontsize-fb select 16
+console-setup console-setup/switch select No temporary switch
+console-setup console-setup/codeset select . Combined - Latin; Slavic Cyrillic; Hebrew; basic Arabic
+console-setup console-setup/toggle select No toggling
+console-setup console-setup/fontface select Fixed
+console-setup console-setup/fontsize string 16
+dash dash/sh boolean false
+EOF
+
+ createEmptyCMD /sbin/start-stop-daemon
+ createEmptyCMD /usr/sbin/invoke-rc.d
+
+ cat << EOC | chroot ${TCOS_CHROOT}
+apt-get $APT_OPTS update
+apt-get $APT_OPTS dist-upgrade
+grep "tcosproject" /etc/apt/sources.list && apt-get install $APT_OPTS tcos-keyring
+apt-get $APT_OPTS update
+apt-get install $APT_OPTS ${DISTRO_PACKAGES}
+apt-get clean
+debconf-set-selections /preseed
+rm -f /preseed
+apt-get $APT_OPTS upgrade
+apt-get $APT_OPTS remove --purge grub grub-pc
+EOC
+
+
+
+ if [ "${DISTRIBUTION}" = "ubuntu" ]; then
+
+ cat << EOC | chroot ${TCOS_CHROOT}
+apt-get install $APT_OPTS linux-image-${TCOS_KERNEL}
+apt-get install $APT_OPTS ${TCOS_PACKAGES}
+apt-get clean
+/etc/init.d/dropbear stop || true
+EOC
+
+ ######################################
+ else # DISTRO != ubuntu
+ cat << EOC | chroot ${TCOS_CHROOT}
+apt-get install $APT_OPTS linux-image-${TCOS_KERNEL}
+apt-get install $APT_OPTS ${TCOS_PACKAGES}
+apt-get clean
+/etc/init.d/dropbear stop || true
+rm -f /preseed
+EOC
+ fi
+
+ touch ${TCOS_CHROOT}/etc/tcos/chroot
+ umount -l ${TCOS_CHROOT}/proc
+ umount -l ${TCOS_CHROOT}/sys
+ # remove udevadm diversion
+ chrootexit
+} # end of chrootcreate()
+
+###############################################################################
+
+chrootenter() {
+cat /etc/resolv.conf > ${TCOS_CHROOT}/etc/resolv.conf
+[ ! -e ${TCOS_CHROOT}/sbin/start-stop-daemon ] && createEmptyCMD /sbin/start-stop-daemon
+[ ! -e ${TCOS_CHROOT}/usr/sbin/invoke-rc.d ] && createEmptyCMD /usr/sbin/invoke-rc.d
+
+if [ ! -e /sbin/udevadm.original ]; then
+ chroot ${TCOS_CHROOT} dpkg-divert --package initramfs-tools-tcos \
+ --add --rename --quiet \
+ --divert /sbin/udevadm.original \
+ /sbin/udevadm
+ createEmptyCMD /sbin/udevadm
+fi
+}
+
+chrootexit() {
+if [ -e ${TCOS_CHROOT}/sbin/udevadm.original ]; then
+ rm -f ${TCOS_CHROOT}/sbin/udevadm
+ chroot ${TCOS_CHROOT} dpkg-divert --package initramfs-tools-tcos \
+ --remove --rename --quiet \
+ --divert /sbin/udevadm.original \
+ /sbin/udevadm
+fi
+}
+
+chrootupdate() {
+ chrootenter
+
+# copy console keymap
+if [ -e /etc/console/boottime.kmap.gz ]; then
+ mkdir -p ${TCOS_CHROOT}/etc/console
+ cp /etc/console/boottime.kmap.gz ${TCOS_CHROOT}/etc/console
+fi
+if [ -e /etc/console-setup/boottime.kmap.gz ]; then
+ mkdir -p ${TCOS_CHROOT}/etc/console-setup
+ cp /etc/console-setup/boottime.kmap.gz ${TCOS_CHROOT}/etc/console-setup/
+fi
+if [ -e /etc/console-setup/cached.kmap.gz ]; then
+ mkdir -p ${TCOS_CHROOT}/etc/console-setup
+ cp /etc/console-setup/cached.kmap.gz ${TCOS_CHROOT}/etc/console-setup/
+fi
+
+ cat << EOC | chroot ${TCOS_CHROOT}
+apt-get update
+apt-get $APT_OPTS dist-upgrade
+apt-get install $APT_OPTS ${TCOS_PACKAGES}
+apt-get install $APT_OPTS ${DISTRO_PACKAGES}
+apt-get clean
+EOC
+
+touch ${TCOS_CHROOT}/etc/tcos/chroot
+chrootexit
+}
+
+###############################################################################
+
+chrootinstallpkg() {
+ chrootenter
+
+ cat << EOC | chroot ${TCOS_CHROOT}
+apt-get update
+apt-get $APT_OPTS install $@
+apt-get clean
+EOC
+ chrootexit
+}
+
+###############################################################################
+chrootcp() {
+ if [ -e "$1" ]; then
+ mkdir -p "${TCOS_CHROOT}/$(dirname $1)"
+ cp "$1" "${TCOS_CHROOT}/$(dirname $1)/"
+ fi
+}
+chrootupdateimages() {
+chrootenter
+# remove udevadm diversion before gentcos
+chrootexit
+
+# copy some files
+chrootcp /usr/share/tcos-core/lockscreen-custom.png
+chrootcp /etc/default/console-setup
+chrootcp /etc/default/keyboard
+chrootcp /etc/adjtime
+chrootcp /etc/hosts
+
+TCOS_KERNEL=$(awk -F"=" '/^TCOS_KERNEL=/ {print $2}' ${TCOS_CHROOT}/etc/tcos/tcos.conf | sed 's/"//g')
+if [ -f /etc/tcos/templates/tcosconfig.conf ]; then
+ mkdir -p ${TCOS_CHROOT}/etc/tcos/templates/
+ cp /etc/tcos/templates/tcosconfig.conf ${TCOS_CHROOT}/etc/tcos/templates/
+ if grep -q "TCOS_KERNEL" ${TCOS_CHROOT}/etc/tcos/templates/tcosconfig.conf; then
+ TCOS_KERNEL=$(awk -F"=" '/^TCOS_KERNEL=/ {print $2}' ${TCOS_CHROOT}/etc/tcos/templates/tcosconfig.conf | sed 's/"//g')
+ fi
+fi
+
+
+mount --bind /proc ${TCOS_CHROOT}/proc
+
+ cat << EOC | chroot ${TCOS_CHROOT}
+gentcos ${GENTCOS_OPT}
+EOC
+
+umount -l ${TCOS_CHROOT}/proc
+
+# this is exec outside chroot
+rm -rf /var/lib/tcos/tftp/vmlinuz-${TCOS_KERNEL} \
+ /var/lib/tcos/tftp/usr-${TCOS_KERNEL}.squashfs \
+ /var/lib/tcos/tftp/initramfs-${TCOS_KERNEL} \
+ /var/lib/tcos/tftp/linux-${TCOS_KERNEL}.nbi \
+ /var/lib/tcos/fs-${TCOS_KERNEL}
+
+# new Ubuntus chmod 600 vmlinuz, copy vmlinuz to tcos/tftp/
+[ ! -e /var/lib/tcos/tftp/vmlinuz-${TCOS_KERNEL} ] && \
+ cp ${TCOS_CHROOT}/boot/vmlinuz-${TCOS_KERNEL} /var/lib/tcos/tftp/ && \
+ chmod 644 /var/lib/tcos/tftp/vmlinuz-${TCOS_KERNEL}
+
+[ ! -e /var/lib/tcos/tftp/usr-${TCOS_KERNEL}.squashfs ] && \
+ ln -s ${TCOS_CHROOT}/var/lib/tcos/tftp/usr-${TCOS_KERNEL}.squashfs /var/lib/tcos/tftp/
+
+[ ! -e /var/lib/tcos/tftp/initramfs-${TCOS_KERNEL} ] && \
+ [ -e ${TCOS_CHROOT}/var/lib/tcos/tftp/initramfs-${TCOS_KERNEL} ] && \
+ ln -s ${TCOS_CHROOT}/var/lib/tcos/tftp/initramfs-${TCOS_KERNEL} /var/lib/tcos/tftp/
+
+[ ! -e /var/lib/tcos/tftp/linux-${TCOS_KERNEL}.nbi ] && \
+ [ -e ${TCOS_CHROOT}/var/lib/tcos/tftp/linux-${TCOS_KERNEL}.nbi ] && \
+ ln -s ${TCOS_CHROOT}/var/lib/tcos/tftp/linux-${TCOS_KERNEL}.nbi /var/lib/tcos/tftp/
+
+# NFS files and dirs
+[ ! -e /var/lib/tcos/tftp/initramfs-${TCOS_KERNEL}-nfs ] && \
+ [ -e ${TCOS_CHROOT}/var/lib/tcos/tftp/initramfs-${TCOS_KERNEL}-nfs ] && \
+ ln -s ${TCOS_CHROOT}/var/lib/tcos/tftp/initramfs-${TCOS_KERNEL}-nfs /var/lib/tcos/tftp/
+
+[ ! -d /var/lib/tcos/fs-${TCOS_KERNEL} ] && \
+ [ -d ${TCOS_CHROOT}/var/lib/tcos/fs-${TCOS_KERNEL} ] && \
+ ln -s ${TCOS_CHROOT}/var/lib/tcos/fs-${TCOS_KERNEL} /var/lib/tcos/
+
+# generate pxelinux.cfg/default
+parse_pxelinuxcfg
+}
+
+###############################################################################
+
+#
+# Script begins here
+#
+
+if [ "$#" = 0 ]; then
+ echo "No parameters !!"
+ usage
+ exit 1
+fi
+
+
+OPTIONS=`getopt -o d:ko:r:v --long create,update,install:,update-images,help,version:,forcedistro:,arch:,flavour:,dir:,mirror:,securitymirror:,tcosmirror:,kversion:,gentcos:,debug,quiet,verbose,tcos-exp -n "$0" -- "$@"`
+
+if [ $? != 0 ] ; then echo "Terminating..." >&2 ; exit 1 ; fi
+eval set -- "$OPTIONS"
+
+
+while true; do
+ case "$1" in
+ --help) usage ; exit 0 ;;
+ --version) TCOS_DISTRO=$2; shift 2 ;;
+ --forcedistro) DISTRIBUTION=$2; shift 2;;
+ --arch) TCOS_ARCH=$2 ; shift 2 ;;
+ --flavour) TCOS_FLAVOUR=$2; shift 2 ;;
+ --mirror) MIRROR=$2; shift 2 ;;
+ --securitymirror) MIRROR2=$2; shift 2;;
+ --tcosmirror) TCOS_MIRROR=$2; shift 2 ;;
+ --dir) TCOS_CHROOT=$2 ; shift 2 ;;
+ --kversion) TCOS_KERNEL=$2; shift 2 ;;
+ --gentcos) GENTCOS_OPT=$2; shift 2 ;;
+ --debug) echo "FIXME DEBUG"; shift ;;
+ --quiet) echo "FIXME QUIET"; shift ;;
+ --verbose) echo "FIXME VERBOSE";shift ;;
+ --tcos-exp) TCOS_EXPERIMENTAL="experimental"; shift ;;
+
+ --create) ACTION=create ; shift ;;
+ --update) ACTION=update ; shift ;;
+ --install) ACTION=installpkgs PKGS="$2"; shift 2;;
+ --update-images) ACTION=update-images; shift;;
+
+ --) shift ; break ;;
+ *) usage; echo "Unknow option $1"; exit -1
+ ;;
+ esac
+done
+
+# load conf with forces settings
+set_conf
+
+# save data in tcos-buildchroot.conf or load if chroot exists
+if [ ! -f ${TCOS_CHROOT}/tcos-buildchroot.conf ]; then
+ mkdir -p ${TCOS_CHROOT}
+ echo "DISTRIBUTION=$DISTRIBUTION" > ${TCOS_CHROOT}/tcos-buildchroot.conf
+ echo "MIRROR=$MIRROR" >> ${TCOS_CHROOT}/tcos-buildchroot.conf
+ echo "MIRROR2=$MIRROR2" >> ${TCOS_CHROOT}/tcos-buildchroot.conf
+ echo "TCOS_MIRROR=$TCOS_MIRROR" >> ${TCOS_CHROOT}/tcos-buildchroot.conf
+ echo "TCOS_KERNEL=$TCOS_KERNEL" >> ${TCOS_CHROOT}/tcos-buildchroot.conf
+ echo "TCOS_DISTRO=$TCOS_DISTRO" >> ${TCOS_CHROOT}/tcos-buildchroot.conf
+ echo "TCOS_EXPERIMENTAL=$TCOS_EXPERIMENTAL" >> ${TCOS_CHROOT}/tcos-buildchroot.conf
+else
+ . ${TCOS_CHROOT}/tcos-buildchroot.conf
+fi
+
+if [ "$ACTION" != "" ]; then
+ case $ACTION in
+ update)
+ chrootupdate; exit
+ ;;
+ create)
+ chrootcreate; exit
+ ;;
+ installpkgs)
+ tmp=$(echo $PKGS | sed 's/,/ /g')
+ chrootinstallpkg $tmp ; exit
+ ;;
+ update-images)
+ chrootupdateimages; exit
+ ;;
+ *)
+ echo "Error, unknow action: $ACTION"
+ exit 1
+ ;;
+ esac
+fi
+
+