From c68c0a270832ca340429878ce6a0ab606d435b06 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 23 Sep 2007 10:05:16 +0200 Subject: Adding live-helper 1.0~a21-1. --- functions/chroot.sh | 2 +- functions/common.sh | 2 +- functions/package.sh | 67 -------------------------------------- functions/packagelist.sh | 42 ------------------------ functions/packages.sh | 81 ++++++++++++++++++++++++++++++++++++++++++++++ functions/packageslists.sh | 42 ++++++++++++++++++++++++ functions/stagefile.sh | 7 ++-- 7 files changed, 129 insertions(+), 114 deletions(-) delete mode 100755 functions/package.sh delete mode 100755 functions/packagelist.sh create mode 100755 functions/packages.sh create mode 100755 functions/packageslists.sh (limited to 'functions') diff --git a/functions/chroot.sh b/functions/chroot.sh index 4b9e8506b..12c49b6af 100755 --- a/functions/chroot.sh +++ b/functions/chroot.sh @@ -15,7 +15,7 @@ Chroot () # Executing commands in chroot Echo_debug "Executing: ${COMMANDS}" - ${LH_ROOT_COMMAND} chroot chroot /usr/bin/env -i HOME="/root" PATH="/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin" TERM="${TERM}" ftp_proxy="${LH_APT_FTPPROXY}" http_proxy="${LH_APT_HTTPPROXY}" DEBIAN_FRONTEND="${LH_DEBCONF_FRONTEND}" DEBIAN_PRIORITY="${LH_DEBCONF_PRIORITY}" DEBCONF_NOWARNINGS="${LH_DEBCONF_NOWARNINGS}" ${COMMANDS} + ${LH_ROOT_COMMAND} chroot chroot /usr/bin/env -i HOME="/root" PATH="/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin" TERM="${TERM}" ftp_proxy="${LH_APT_FTPPROXY}" http_proxy="${LH_APT_HTTPPROXY}" DEBIAN_FRONTEND="${LH_DEBCONF_FRONTEND}" DEBIAN_PRIORITY="${LH_DEBCONF_PRIORITY}" DEBCONF_NOWARNINGS="${LH_DEBCONF_NOWARNINGS}" XORG_CONFIG="custom" ${COMMANDS} return "${?}" } diff --git a/functions/common.sh b/functions/common.sh index d9d63a744..19abcbb6a 100755 --- a/functions/common.sh +++ b/functions/common.sh @@ -10,4 +10,4 @@ set -e PROGRAM="`basename ${0}`" -VERSION="1.0~a20" +VERSION="1.0~a21" diff --git a/functions/package.sh b/functions/package.sh deleted file mode 100755 index 96316dcc2..000000000 --- a/functions/package.sh +++ /dev/null @@ -1,67 +0,0 @@ -#!/bin/sh - -# packages.sh - handle packages installation -# Copyright (C) 2006-2007 Daniel Baumann -# -# 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 - -Check_package () -{ - ITEM="${1}" - PACKAGE="${2}" - - case "${LIVE_CHROOT_BUILD}" in - enabled) - if [ ! -d "${ITEM}" ] && [ ! -f "${ITEM}" ] - then - PACKAGES="${PACKAGES} ${PACKAGE}" - fi - ;; - - disabled) - ITEM="`echo ${ITEM} | sed -e 's/chroot//'`" - - if [ ! -d "${ITEM}" ] && [ ! -f "${ITEM}" ] - then - Echo_error "You need to install ${PACKAGE} on your host system." - exit 1 - fi - ;; - esac -} - -Install_package () -{ - if [ -n "${PACKAGES}" ] && [ "${LIVE_CHROOT_BUILD}" != "disabled" ] - then - case "${LH_APT}" in - apt|apt-get) - Chroot "apt-get install --yes ${PACKAGES}" - ;; - - aptitude) - Chroot "aptitude install --assume-yes ${PACKAGES}" - ;; - esac - fi -} - -Remove_package () -{ - if [ -n "${PACKAGES}" ] && [ "${LIVE_CHROOT_BUILD}" != "disabled" ] - then - case "${LH_APT}" in - apt|apt-get) - Chroot "apt-get remove --purge --yes ${PACKAGES}" - ;; - - aptitude) - Chroot "aptitude purge --assume-yes ${PACKAGES}" - ;; - esac - fi -} diff --git a/functions/packagelist.sh b/functions/packagelist.sh deleted file mode 100755 index f25b5fbca..000000000 --- a/functions/packagelist.sh +++ /dev/null @@ -1,42 +0,0 @@ -#!/bin/sh - -# packagelists.sh - expands package list includes -# Copyright (C) 2006-2007 Daniel Baumann -# -# 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 - -Expand_packagelist () -{ - # ${1} List name - # ${2} Default path to search - # ${3} Fallback path to search (optional) - - # Does list exist in default path? - if [ -e "${2}/${1}" ]; - then - Expand_packagelist_file "${2}/${1}" "${@}" - else - # If list exists in fallback, include it. - if [ -n "${3}" ] && [ -e "${3}/${1}" ] - then - Expand_packagelist_file "${3}/${1}" "${@}" - fi - fi -} - -Expand_packagelist_file () -{ - local FILE="${1}" - shift - shift - - for INCLUDE in `sed -ne 's/^# \(.*\)/\1/gp' "${FILE}"`; - do - Expand_packagelist "${INCLUDE}" "${@}" - done - sed -ne 's/^\([^#].*\)/\1\n/gp' "${FILE}" -} diff --git a/functions/packages.sh b/functions/packages.sh new file mode 100755 index 000000000..049c89b8d --- /dev/null +++ b/functions/packages.sh @@ -0,0 +1,81 @@ +#!/bin/sh + +# packages.sh - handle packages installation +# Copyright (C) 2006-2007 Daniel Baumann +# +# 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 + +Check_package () +{ + FILE="${1}" + PACKAGE="${2}" + + case "${LIVE_CHROOT_BUILD}" in + enabled) + for ITEM in ${PACKAGE} + do + if ! `Chroot "dpkg-query -s ${ITEM}"` + then + PACKAGES="${PACKAGES} ${ITEM}" + fi + done + ;; + + disabled) + if `which dpkg-query` + then + for ITEM in ${PACKAGE} + do + if ! `dpkg-query -s ${ITEM}` + then + PACKAGES="${PACKAGES} ${ITEM}" + fi + done + else + FILE="`echo ${FILE} | sed -e 's/chroot//'`" + + if [ ! -f "${FILE}" ] && [ ! -d "${FILE}" ] + then + Echo_error "You need to install ${PACKAGE} on your host system." + exit 1 + fi + fi + ;; + esac +} + +Install_package () +{ + if [ -n "${PACKAGES}" ] && [ "${LIVE_CHROOT_BUILD}" != "disabled" ] + then + case "${LH_APT}" in + apt|apt-get) + Chroot "apt-get install --yes ${PACKAGES}" + ;; + + aptitude) + Chroot "aptitude install --assume-yes ${PACKAGES}" + ;; + esac + fi +} + +Remove_package () +{ + if [ -n "${PACKAGES}" ] && [ "${LIVE_CHROOT_BUILD}" != "disabled" ] + then + case "${LH_APT}" in + apt|apt-get) + Chroot "apt-get remove --purge --yes ${PACKAGES}" + ;; + + aptitude) + Chroot "aptitude purge --assume-yes ${PACKAGES}" + ;; + esac + fi +} diff --git a/functions/packageslists.sh b/functions/packageslists.sh new file mode 100755 index 000000000..f25b5fbca --- /dev/null +++ b/functions/packageslists.sh @@ -0,0 +1,42 @@ +#!/bin/sh + +# packagelists.sh - expands package list includes +# Copyright (C) 2006-2007 Daniel Baumann +# +# 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 + +Expand_packagelist () +{ + # ${1} List name + # ${2} Default path to search + # ${3} Fallback path to search (optional) + + # Does list exist in default path? + if [ -e "${2}/${1}" ]; + then + Expand_packagelist_file "${2}/${1}" "${@}" + else + # If list exists in fallback, include it. + if [ -n "${3}" ] && [ -e "${3}/${1}" ] + then + Expand_packagelist_file "${3}/${1}" "${@}" + fi + fi +} + +Expand_packagelist_file () +{ + local FILE="${1}" + shift + shift + + for INCLUDE in `sed -ne 's/^# \(.*\)/\1/gp' "${FILE}"`; + do + Expand_packagelist "${INCLUDE}" "${@}" + done + sed -ne 's/^\([^#].*\)/\1\n/gp' "${FILE}" +} diff --git a/functions/stagefile.sh b/functions/stagefile.sh index 2606983a1..647b1817d 100755 --- a/functions/stagefile.sh +++ b/functions/stagefile.sh @@ -44,6 +44,7 @@ Create_stagefile () Require_stagefile () { + NAME="`basename ${0}`" FILES="${@}" NUMBER="`echo ${@} | wc -w`" @@ -59,11 +60,11 @@ Require_stagefile () if [ "${CONTINUE}" != "true" ] then - if [ "${NUMBER}" -gt 1 ] + if [ "${NUMBER}" -eq 1 ] then - Echo_error "one of ${NAME} is missing" - else Echo_error "${NAME} missing" + else + Echo_error "one of ${NAME} is missing" fi exit 1 -- cgit v1.2.3