From 1863ed88740575342008ac5f694d03e944bcece2 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 23 Sep 2007 10:04:49 +0200 Subject: Adding live-helper 1.0~a5-1. --- contrib/casper-manpage/casper.7 | 4 +- contrib/syslinux-splash/COPYING | 6 +- debian/changelog | 10 +- debian/copyright | 10 +- debian/rules | 4 +- doc/ChangeLog | 40 +++++ doc/FAQ | 4 +- doc/TODO | 1 - doc/examples/beryl-hook.sh | 2 +- doc/examples/java-hook.sh | 4 +- doc/examples/live.sources.list | 9 ++ functions/arguments.sh | 18 ++- functions/breakpoints.sh | 13 +- functions/chroot.sh | 2 +- functions/common.sh | 2 +- functions/defaults.sh | 207 +++++++++++++++++++++++--- functions/echo.sh | 6 +- functions/lockfile.sh | 2 +- functions/stagefile.sh | 2 +- helpers/lh_binary | 1 + helpers/lh_binary_chroot | 7 + helpers/lh_binary_encryption | 128 ++++++++-------- helpers/lh_binary_grub | 277 ++++++++++++++++++----------------- helpers/lh_binary_hdd | 8 +- helpers/lh_binary_includes | 12 +- helpers/lh_binary_iso | 7 +- helpers/lh_binary_linuximage | 6 +- helpers/lh_binary_localincludes | 8 +- helpers/lh_binary_manifest | 6 + helpers/lh_binary_md5sum | 6 + helpers/lh_binary_memtest86 | 6 +- helpers/lh_binary_net | 17 ++- helpers/lh_binary_rootfs | 6 + helpers/lh_binary_syslinux | 6 +- helpers/lh_binary_usb | 7 +- helpers/lh_bootstrap | 7 + helpers/lh_bootstrap_cdebootstrap | 17 ++- helpers/lh_bootstrap_debootstrap | 9 +- helpers/lh_build | 3 + helpers/lh_chroot | 8 +- helpers/lh_chroot_apt | 8 +- helpers/lh_chroot_debianchroot | 8 +- helpers/lh_chroot_hacks | 8 +- helpers/lh_chroot_hooks | 8 +- helpers/lh_chroot_hosts | 8 +- helpers/lh_chroot_interactive | 8 +- helpers/lh_chroot_linuximage | 8 +- helpers/lh_chroot_localhooks | 8 +- helpers/lh_chroot_localincludes | 8 +- helpers/lh_chroot_localization | 8 +- helpers/lh_chroot_localpackages | 8 +- helpers/lh_chroot_localpackageslists | 8 +- helpers/lh_chroot_packages | 7 +- helpers/lh_chroot_packageslists | 8 +- helpers/lh_chroot_proc | 11 +- helpers/lh_chroot_resolv | 8 +- helpers/lh_chroot_sources | 71 ++++++++- helpers/lh_chroot_symlinks | 8 +- helpers/lh_chroot_sysfs | 11 +- helpers/lh_chroot_sysvinit | 8 +- helpers/lh_chroot_sysvrc | 8 +- helpers/lh_chroot_tasks | 8 +- helpers/lh_clean | 5 + helpers/lh_config | 35 +++++ helpers/lh_losetup | 7 + helpers/lh_source | 6 + helpers/lh_source_config | 6 + helpers/lh_source_download | 6 + helpers/lh_source_generic | 6 + helpers/lh_source_hdd | 6 + helpers/lh_source_iso | 6 + helpers/lh_source_md5sum | 6 + helpers/lh_source_net | 6 + helpers/lh_source_usb | 7 +- helpers/lh_testroot | 2 +- helpers/make-live | 39 +++-- manpages/lh_binary.1 | 9 +- manpages/lh_bootstrap.1 | 13 +- manpages/lh_bootstrap_cdebootstrap.1 | 22 ++- manpages/lh_bootstrap_debootstrap.1 | 22 ++- manpages/lh_chroot.1 | 5 +- manpages/lh_clean.1 | 20 ++- manpages/lh_testroot.1 | 5 +- manpages/live-helper.7 | 22 ++- 84 files changed, 1037 insertions(+), 366 deletions(-) create mode 100644 doc/examples/live.sources.list diff --git a/contrib/casper-manpage/casper.7 b/contrib/casper-manpage/casper.7 index 0b14023..9ebbd40 100644 --- a/contrib/casper-manpage/casper.7 +++ b/contrib/casper-manpage/casper.7 @@ -13,7 +13,7 @@ Casper is a hook for initramfs-tools used to generate an initramfs capable to bo .SH RECOGNIZED BOOT OPTIONS .TP .BI "access=" ACCESS -Set the accessibility level for physically or visually impared users. +Set the accessibility level for physically or visually impared users. ACCESS must be one of v1, v2, v3, m1, or m2. v1=lesser visual impairment, v2=moderate visual impairment, v3=blindness, m1=minor motor difficulties, m2=moderate motor difficulties. .TP .B casper-getty @@ -72,7 +72,7 @@ This option causes casper to reboot without attempting to eject the media and wi .B "showmounts" This parameter will make casper to show on "/" the ro filesystems (mostly compressed) on /casper. This is not enabled by default because could lead to problems by applications like "mono" which store binary paths on installation. .TP -.BI "todisk=" DEVICE +.BI "todisk=" DEVICE Adding this parameter, casper will try to copy the entire read-only media to the specified device before mounting the root filesystem. It probably needs a lot of free space. Subsequent boots should then skip this step and just specify the "live-media=DEVICE" boot parameter with the same DEVICE used this time. .TP .B toram diff --git a/contrib/syslinux-splash/COPYING b/contrib/syslinux-splash/COPYING index 23b4697..b8b654a 100644 --- a/contrib/syslinux-splash/COPYING +++ b/contrib/syslinux-splash/COPYING @@ -1,6 +1,6 @@ -The derivated splash for Debian Live was done by Daniel Baumann - from the original of Mark Riedesel. Daniels own contribution -to the derivated splash is hereby placed in the public domain. +The splash for Debian Live was done by Daniel Baumann based +on the original work of Mark Riedesel. The contribution of Daniel is hereby +placed in the public domain (no rights reserved). --------------- http://dugnet.com/klown/pics/klowner_debboot.png diff --git a/debian/changelog b/debian/changelog index f86e8b5..0782ee1 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,14 +1,20 @@ +live-helper (1.0~a5-1) unstable; urgency=low + + * New upstream release. + + -- Daniel Baumann Mon, 9 Apr 2007 00:00:00 +0200 + live-helper (1.0~a4-1) unstable; urgency=low * New upstream release. - -- Daniel Baumann Mon, 2 Apr 2007 00:00:00 +0100 + -- Daniel Baumann Mon, 2 Apr 2007 00:00:00 +0200 live-helper (1.0~a3-2) unstable; urgency=low * Fixed typo in maintainer scripts. - -- Daniel Baumann Mon, 26 Mar 2007 17:00:00 +0100 + -- Daniel Baumann Mon, 26 Mar 2007 17:00:00 +0200 live-helper (1.0~a3-1) unstable; urgency=low diff --git a/debian/copyright b/debian/copyright index 50489e4..0b55587 100644 --- a/debian/copyright +++ b/debian/copyright @@ -3,7 +3,7 @@ Mon, 12 Mar 2007 00:00:00 +0100. It was downloaded from . -Upstream Author: Debian Live +Upstream contact: Debian Live License: @@ -28,10 +28,10 @@ can be found in /usr/share/common-licenses/GPL file. License (contrib/syslinux-splash/*, templates/syslinux/splash.rle): - The derivated splash for Debian Live was done by Daniel Baumann - from the original of Mark Riedesel. Daniels own - contribution to the derivated splash is hereby placed in the public - domain. + The splash for Debian Live was done by Daniel Baumann + based on the original work of Mark Riedesel. The + contribution of Daniel is hereby placed in the public domain (no rights + reserved). --------------- http://dugnet.com/klown/pics/klowner_debboot.png diff --git a/debian/rules b/debian/rules index 7bd258d..5ed04e6 100755 --- a/debian/rules +++ b/debian/rules @@ -5,8 +5,8 @@ upstream: # Needs: subversion - cd .. && svn co svn://svn.debian.org/debian-live/dists/trunk/live-helper || exit 0 - find . -type d -name .svn -exec rm -rf {} \; || exit 0 + cd .. && svn co svn://svn.debian.org/debian-live/dists/trunk/live-helper || true + find . -type d -name .svn | xargs rm -rf build: diff --git a/doc/ChangeLog b/doc/ChangeLog index dc720ff..8412303 100644 --- a/doc/ChangeLog +++ b/doc/ChangeLog @@ -1,3 +1,43 @@ +2007-04-09 Daniel Baumann + + * helpers/lh_config, make-live, functions/defaults.sh: + - Added mode to distinguish between Debian and Ubuntu. + * helpers/lh_chroot_sources: + - Added check for LIVE_MIRROR_BUILD* to be equal to + LIVE_MIRROR_IMAGE*. + +2007-04-08 Daniel Baumann + + * helpers/lh_binary_net: + - Added check for namespace collision with LIVE_SERVER_PATH. + * helpers/lh_binary_grub: + - Added functionality for usb|hdd images. + +2007-04-07 Daniel Baumann + + * helpers/lh_chroot_sources: + - Moved check for local source lists from + config/sources.lists.{build,image} to + config/chroot_sources/*.{build,image}. + - Added check for local gpg keys in + config/chroot_sources/*.{build,image}.gpg. + - Added check for local keyring packages in + config/chroot_sources/*.deb. + - Added LIVE_KEYRING_PACKAGES. + +2007-04-06 Daniel Baumann + + * functions/breakpoints.sh, helpers/*: + - Added initial breakpoints. + * functions/chroot.sh: + - Adding /usr/local to path. + * functions/lockfile.sh: + - Added additional signals to the trap. + * helpers/lh_binary_includes: + - Respect LIVE_INCLUDES=none. + * manpages/*: + - Updated. + 2007-04-05 Daniel Baumann * helpers/lh_binary_grub, templates/grub/menu.lst: diff --git a/doc/FAQ b/doc/FAQ index ce9ad7c..0bdc3ba 100644 --- a/doc/FAQ +++ b/doc/FAQ @@ -22,8 +22,8 @@ Run Time -------- Q: What is the root password? -A: There is none. You can switch to root with 'sudo su -' or set a password with +A: There is none. You can switch to root with 'sudo -i' or set a password with 'sudo passwd'. Q: What is the user password? -A: The user password for 'user' is 'live'. +A: The password for the default user is 'live'. diff --git a/doc/TODO b/doc/TODO index 6444a26..5d31464 100644 --- a/doc/TODO +++ b/doc/TODO @@ -9,7 +9,6 @@ Todo: * write manpage and documentation * write lh_binary_di and lh_binary_gi - * write lh_binary_grub Later: * Add win32 autorun like diff --git a/doc/examples/beryl-hook.sh b/doc/examples/beryl-hook.sh index 1591487..ef076e4 100755 --- a/doc/examples/beryl-hook.sh +++ b/doc/examples/beryl-hook.sh @@ -2,8 +2,8 @@ # This is a hook for live-helper(7) to install beryl and enable aixgl. # It was originally written by Inigo Tejedor Arrondo . -# To enable it, copy this hook into your config/chroot_localhooks directory. # +# To enable it, copy this hook into your config/chroot_localhooks directory. # At boot prompt, type 'linux aixgl', press enter and have fun. # Update sources.list diff --git a/doc/examples/java-hook.sh b/doc/examples/java-hook.sh index 0574f3a..77c931b 100755 --- a/doc/examples/java-hook.sh +++ b/doc/examples/java-hook.sh @@ -1,7 +1,9 @@ #!/bin/sh # This is a hook for live-helper(7) to install sun-java. -# To enable it, copy this hook into your config/chroot_localhooks directory. +# +# To enable it, copy this hook into your config/chroot_localhooks directory and +# don't forget to enable non-free in LIVE_SECTIONS. # # live-helper sets DEBIAN_FRONTEND to 'noninteractive' to advise debconf to not # ask any questions while installing packages. Suns redistribution terms for diff --git a/doc/examples/live.sources.list b/doc/examples/live.sources.list new file mode 100644 index 0000000..10fba02 --- /dev/null +++ b/doc/examples/live.sources.list @@ -0,0 +1,9 @@ +# This is a sources.list for live-helper(7) to use packages from the +# Debian Live Etch backports repository. +# +# To enable it, copy this file to your config/chroot_sources directory, once +# as e.g. live.build and once as live.image. + +# Debian Live backports for Etch +deb http://live.debian.net/debian/ etch main +deb-src http://live.debian.net/debian/ etch main diff --git a/functions/arguments.sh b/functions/arguments.sh index b3db8ee..8405dcb 100755 --- a/functions/arguments.sh +++ b/functions/arguments.sh @@ -11,7 +11,7 @@ set -e Arguments () { - ARGUMENTS="`getopt --longoptions conffile:,debug,force,help,logfile:,quiet,usage,verbose,version --name=${PROGRAM} --options huv --shell sh -- "${@}"`" + ARGUMENTS="`getopt --longoptions breakpoints,conffile:,debug,force,help,logfile:,quiet,usage,verbose,version --name=${PROGRAM} --options huv --shell sh -- "${@}"`" if [ "${?}" != "0" ] then @@ -24,16 +24,20 @@ Arguments () while true do case "${1}" in + --breakpoints) + LH_BREAKPOINTS="enabled"; shift + ;; + --conffile) - CONFFILE="${2}"; shift 2 + LH_CONFFILE="${2}"; shift 2 ;; --debug) - DEBUG="true"; shift + LH_DEBUG="enabled"; shift ;; --force) - FORCE="true"; shift + LH_FORCE="enabled"; shift ;; -h|--help) @@ -41,11 +45,11 @@ Arguments () ;; --logfile) - LOGFILE="${2}"; shift 2 + LH_LOGFILE="${2}"; shift 2 ;; --quiet) - QUIET="true"; shift + LH_QUIET="enabled"; shift ;; -u|--usage) @@ -53,7 +57,7 @@ Arguments () ;; --verbose) - VERBOSE="true"; shift + LH_VERBOSE="enabled"; shift ;; -v|--version) diff --git a/functions/breakpoints.sh b/functions/breakpoints.sh index 7dfc24c..70e4738 100755 --- a/functions/breakpoints.sh +++ b/functions/breakpoints.sh @@ -1,8 +1,19 @@ #!/bin/sh -# breakpoints.sh +# breakpoints.sh - run with breakpoints # 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. + +Breakpoint () +{ + if [ "${LH_BREAKPOINTS}" = "enabled" ] + then + BREAKPOINT="${1}" + + Echo_message "Waiting at ${BREAKPOINT}" + read + fi +} diff --git a/functions/chroot.sh b/functions/chroot.sh index c40c475..643f08f 100755 --- a/functions/chroot.sh +++ b/functions/chroot.sh @@ -15,5 +15,5 @@ Chroot () # Executing commands in chroot Echo_debug "Executing: ${COMMANDS}" - chroot chroot /usr/bin/env -i HOME="/root" PATH="/usr/sbin:/usr/bin:/sbin:/bin" TERM="${TERM}" ftp_proxy="${LH_APT_FTPPROXY}" http_proxy="${LH_APT_HTTPPPROXY}" DEBIAN_FRONTEND="${LH_DEBCONF_FRONTEND}" DEBIAN_PRIORITY="${LH_DEBCONF_PRIORITY}" ${COMMANDS} + chroot chroot /usr/bin/env -i HOME="/root" PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" TERM="${TERM}" ftp_proxy="${LH_APT_FTPPROXY}" http_proxy="${LH_APT_HTTPPPROXY}" DEBIAN_FRONTEND="${LH_DEBCONF_FRONTEND}" DEBIAN_PRIORITY="${LH_DEBCONF_PRIORITY}" ${COMMANDS} } diff --git a/functions/common.sh b/functions/common.sh index 15093cd..61c10c1 100755 --- a/functions/common.sh +++ b/functions/common.sh @@ -10,4 +10,4 @@ set -e PROGRAM="`basename ${0}`" -VERSION="1.0~a4" +VERSION="1.0~a5" diff --git a/functions/defaults.sh b/functions/defaults.sh index 001ef1c..e22ab93 100755 --- a/functions/defaults.sh +++ b/functions/defaults.sh @@ -13,6 +13,12 @@ Set_defaults () { ## config/common + # Setting mode + if [ -z "${LH_MODE}" ] + then + LH_MODE="debian" + fi + # Setting package manager if [ -z "${LH_APT}" ] then @@ -68,16 +74,36 @@ Set_defaults () # Setting bootstrap program if [ -z "${LH_BOOTSTRAP}" ] || [ ! -x "${LH_BOOTSTRAP}" ] then - if [ -x "/usr/bin/cdebootstrap" ] - then - LH_BOOTSTRAP="cdebootstrap" - elif [ -x "/usr/sbin/debootstrap" ] - then - LH_BOOTSTRAP="debootstrap" - else - echo "E: Can't process file /usr/bin/cdebootstrap or /usr/sbin/debootstrap (FIXME)" - exit 1 - fi + case "${LH_MODE}" in + debian) + if [ -x "/usr/bin/cdebootstrap" ] + then + LH_BOOTSTRAP="cdebootstrap" + elif [ -x "/usr/sbin/debootstrap" ] + then + LH_BOOTSTRAP="debootstrap" + else + echo "E: Can't process file /usr/bin/cdebootstrap or /usr/sbin/debootstrap (FIXME)" + exit 1 + fi + ;; + + ubuntu) + if [ -x "/usr/sbin/debootstrap" ] + then + if [ -f /usr/lib/debootstrap/scripts/feisty ] + then + LH_BOOTSTRAP="debootstrap" + else + echo "E: Your version of debootstrap does not support ubuntu." + exit 1 + fi + else + echo "E: You need to install debootstrap from Ubuntu in order to bootstrap ubuntu." + exit 1 + fi + ;; + esac fi # Setting cache option @@ -121,7 +147,41 @@ Set_defaults () # Setting root directory if [ -z "${LIVE_ROOT}" ] then - LIVE_ROOT="debian-live" + case "${LH_MODE}" in + debian) + LIVE_ROOT="debian-live" + ;; + + ubuntu) + LIVE_ROOT="ubuntu-live" + ;; + esac + fi + + # Setting live helper options + if [ -z "${LH_BREAKPOINTS}" ] + then + LH_BREAKPOINTS="disabled" + fi + + if [ -z "${LH_DEBUG}" ] + then + LH_DEBUG="disabled" + fi + + if [ -z "${LH_FORCE}" ] + then + LH_FORCE="disabled" + fi + + if [ -z "${LH_QUIET}" ] + then + LH_QUIET="disabled" + fi + + if [ -z "${LH_VERBOSE}" ] + then + LH_VERBOSE="disabled" fi ## config/bootstrap @@ -140,11 +200,19 @@ Set_defaults () # Setting distribution value if [ -z "${LIVE_DISTRIBUTION}" ] then - LIVE_DISTRIBUTION="sid" + case "${LH_MODE}" in + debian) + LIVE_DISTRIBUTION="sid" + ;; + + ubuntu) + LIVE_DISTRIBUTION="feisty" + ;; + esac fi # Setting distribution configuration value - # LIVE_DISTRIBUTION_CONFIG + # LIVE_BOOTSTRAP_CONFIG # Setting flavour value if [ -z "${LIVE_BOOTSTRAP_FLAVOUR}" ] @@ -155,25 +223,57 @@ Set_defaults () # Setting mirror to fetch packages from if [ -z "${LIVE_MIRROR_BUILD}" ] then - LIVE_MIRROR_BUILD="http://ftp.debian.org/debian/" + case "${LH_MODE}" in + debian) + LIVE_MIRROR_BUILD="http://ftp.debian.org/debian/" + ;; + + ubuntu) + LIVE_MIRROR_BUILD="http://archive.ubuntu.com/ubuntu/" + ;; + esac fi # Setting security mirror to fetch packages from if [ -z "${LIVE_MIRROR_BUILD_SECURITY}" ] then - LIVE_MIRROR_BUILD_SECURITY="http://security.debian.org/" + case "${LH_MODE}" in + debian) + LIVE_MIRROR_BUILD_SECURITY="http://security.debian.org/" + ;; + + ubuntu) + LIVE_MIRROR_BUILD_SECURITY="http://security.ubuntu.org/ubuntu/" + ;; + esac fi # Setting mirror which ends up in the image if [ -z "${LIVE_MIRROR_IMAGE}" ] then - LIVE_MIRROR_IMAGE="http://ftp.debian.org/debian/" + case "${LH_MODE}" in + debian) + LIVE_MIRROR_IMAGE="http://ftp.debian.org/debian/" + ;; + + ubuntu) + LIVE_MIRROR_IMAGE="http://archive.ubuntu.com/ubuntu/" + ;; + esac fi # Setting security mirror which ends up in the image if [ -z "${LIVE_MIRROR_IMAGE_SECURITY}" ] then - LIVE_MIRROR_IMAGE_SECURITY="http://security.debian.org/" + case "${LH_MODE}" in + debian) + LIVE_MIRROR_IMAGE_SECURITY="http://security.debian.org/" + ;; + + ubuntu) + LIVE_MIRROR_IMAGE_SECURITY="http://security.ubuntu.com/ubuntu/" + ;; + esac fi # Setting sections value @@ -199,7 +299,15 @@ Set_defaults () ;; amd64) - LIVE_KERNEL_FLAVOUR="amd64" + case "${LH_MODE}" in + debian) + LIVE_KERNEL_FLAVOUR="amd64" + ;; + + ubuntu) + LIVE_KERNEL_FLAVOUR="amd64-generic" + ;; + esac ;; arm) @@ -212,7 +320,15 @@ Set_defaults () ;; i386) - LIVE_KERNEL_FLAVOUR="486" + case "${LH_MODE}" in + debian) + LIVE_KERNEL_FLAVOUR="486" + ;; + + ubuntu) + LIVE_KERNEL_FLAVOUR="386" + ;; + esac ;; ia64) @@ -233,7 +349,15 @@ Set_defaults () ;; sparc) - LIVE_KERNEL_FLAVOUR="sparc32" + case "${LH_MODE}" in + debian) + LIVE_KERNEL_FLAVOUR="sparc32" + ;; + + ubuntu) + LIVE_KERNEL_FLAVOUR="sparc64" + ;; + esac ;; *) @@ -245,7 +369,15 @@ Set_defaults () # Set kernel packages if [ -z "${LIVE_KERNEL_PACKAGES}" ] then - LIVE_KERNEL_PACKAGES="linux-image-2.6 squashfs-modules-2.6 unionfs-modules-2.6" + case "${LH_MODE}" in + debian) + LIVE_KERNEL_PACKAGES="linux-image-2.6 squashfs-modules-2.6 unionfs-modules-2.6" + ;; + + ubuntu) + LIVE_KERNEL_PACKAGES="linux-image" + ;; + esac if [ -n "${LIVE_ENCRYPTION}" ] then @@ -253,6 +385,9 @@ Set_defaults () fi fi + # Setting keyring packages + # LIVE_KEYRING_PACKAGES + # Setting language string # LIVE_LANGUAGE @@ -327,7 +462,15 @@ Set_defaults () # Setting hostname if [ -z "${LIVE_HOSTNAME}" ] then - LIVE_HOSTNAME="debian" + case "${LH_MODE}" in + debian) + LIVE_HOSTNAME="debian" + ;; + + ubuntu) + LIVE_HOSTNAME="ubuntu" + ;; + esac fi # Setting image type @@ -357,7 +500,15 @@ Set_defaults () # Setting iso volume if [ -z "${LIVE_ISO_VOLUME}" ] then - LIVE_ISO_VOLUME="Debian Live \`date +%Y%m%d\`" + case "${LH_MODE}" in + debian) + LIVE_ISO_VOLUME="Debian Live \`date +%Y%m%d\`" + ;; + + ubuntu) + LIVE_ISO_VOLUME="Ubuntu Live \`date +%Y%m%d\`" + ;; + esac fi # Setting netboot server address @@ -369,7 +520,15 @@ Set_defaults () # Setting netboot server path if [ -z "${LIVE_SERVER_PATH}" ] then - LIVE_SERVER_PATH="/srv/debian-live" + case "${LH_MODE}" in + debian) + LIVE_SERVER_PATH="/srv/debian-live" + ;; + + ubuntu) + LIVE_SERVER_PATH="/srv/ubuntu-live" + ;; + esac fi # Setting source option diff --git a/functions/echo.sh b/functions/echo.sh index 89d2d6b..71800ad 100755 --- a/functions/echo.sh +++ b/functions/echo.sh @@ -11,7 +11,7 @@ set -e Echo_debug () { - if [ "${DEBUG}" = "true" ] + if [ "${LH_DEBUG}" = "enabled" ] then echo "D: ${@}" fi @@ -24,7 +24,7 @@ Echo_error () Echo_message () { - if [ "${QUIET}" != "true" ] + if [ "${LH_QUIET}" != "enabled" ] then echo "P: ${@}" fi @@ -32,7 +32,7 @@ Echo_message () Echo_verbose () { - if [ "${VERBOSE}" = "true" ] + if [ "${LH_VERBOSE}" = "enabled" ] then echo "I: ${@}" fi diff --git a/functions/lockfile.sh b/functions/lockfile.sh index 3b44e54..efb478a 100755 --- a/functions/lockfile.sh +++ b/functions/lockfile.sh @@ -33,7 +33,7 @@ Create_lockfile () fi # Creating lock trap - trap "test -f ${FILE} && rm -f ${FILE}; exit 0" 0 2 15 + trap "test -f ${FILE} && rm -f ${FILE}; exit 0" 0 1 2 3 9 15 # Creating lock file touch "${FILE}" diff --git a/functions/stagefile.sh b/functions/stagefile.sh index a5879f5..6a41cda 100755 --- a/functions/stagefile.sh +++ b/functions/stagefile.sh @@ -17,7 +17,7 @@ Check_stagefile () # Checking stage file if [ -f "${FILE}" ] then - if [ "${FORCE}" = "true" ] + if [ "${LH_FORCE}" = "enabled" ] then # Forcing execution rm -f "${FILE}" diff --git a/helpers/lh_binary b/helpers/lh_binary index d972625..1326637 100755 --- a/helpers/lh_binary +++ b/helpers/lh_binary @@ -23,6 +23,7 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" Echo_debug "Init ${PROGRAM}" +Breakpoint "binary: Init" # Preparing root filesystem lh_binary_chroot "${@}" diff --git a/helpers/lh_binary_chroot b/helpers/lh_binary_chroot index 5cde421..86da15d 100755 --- a/helpers/lh_binary_chroot +++ b/helpers/lh_binary_chroot @@ -22,10 +22,17 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files +Read_conffile config/bootstrap +Read_conffile config/chroot Read_conffile config/common +Read_conffile config/image Set_defaults +Breakpoint "binary_chroot: Init" + # Requiring stage file Require_stagefile .stage/bootstrap diff --git a/helpers/lh_binary_encryption b/helpers/lh_binary_encryption index 03c056f..09c0fea 100755 --- a/helpers/lh_binary_encryption +++ b/helpers/lh_binary_encryption @@ -22,64 +22,73 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files +Read_conffile config/bootstrap +Read_conffile config/chroot Read_conffile config/common Read_conffile config/image Set_defaults -if [ -n "${LIVE_ENCRYPTION}" ] +if [ -z "${LIVE_ENCRYPTION}" ] then - # Requiring stage file - Require_stagefile .stage/bootstrap - Require_stagefile .stage/binary_rootfs + exit 0 +fi - # Checking lock file - Check_lockfile .lock +Breakpoint "binary_encryption: Init" - # Creating lock file - Create_lockfile .lock +# Requiring stage file +Require_stagefile .stage/bootstrap +Require_stagefile .stage/binary_rootfs - # Checking stage file - Check_stagefile .stage/binary_encryption +# Checking lock file +Check_lockfile .lock - case "${LIVE_FILESYSTEM}" in - ext2) - ROOTFS="ext2" - ;; +# Creating lock file +Create_lockfile .lock - plain) - echo "W: encryption not supported on plain filesystem." - exit 0 - ;; +# Checking stage file +Check_stagefile .stage/binary_encryption - squashfs) - ROOTFS="squashfs" - ;; - esac +case "${LIVE_FILESYSTEM}" in + ext2) + ROOTFS="ext2" + ;; - if [ ! -f chroot/usr/bin/aespipe ] - then - PACKAGES="${PACKAGES} aespipe" - fi + plain) + echo "W: encryption not supported on plain filesystem." + exit 0 + ;; - if [ -n "${PACKAGES}" ] - then - # Installing packages - case "${LH_APT}" in - apt|apt-get) - Chroot "apt-get install --yes ${PACKAGES}" - ;; + squashfs) + ROOTFS="squashfs" + ;; +esac - aptitude) - Chroot "aptitude install --assume-yes ${PACKAGES}" - ;; - esac - fi +if [ ! -f chroot/usr/bin/aespipe ] +then + PACKAGES="${PACKAGES} aespipe" +fi - # Moving image - mv binary/casper/filesystem.${LIVE_FILESYSTEM} chroot +if [ -n "${PACKAGES}" ] +then + # Installing packages + case "${LH_APT}" in + apt|apt-get) + Chroot "apt-get install --yes ${PACKAGES}" + ;; - echo "Encrypting binary/casper/filesystem.${ROOTFS} with ${LIVE_ENCRYPTION}..." + aptitude) + Chroot "aptitude install --assume-yes ${PACKAGES}" + ;; + esac +fi + +# Moving image +mv binary/casper/filesystem.${LIVE_FILESYSTEM} chroot + +echo "Encrypting binary/casper/filesystem.${ROOTFS} with ${LIVE_ENCRYPTION}..." cat >> chroot/encrypt << EOF while true @@ -98,25 +107,24 @@ do done EOF - Chroot "sh encrypt" - - # Move image - mv chroot/filesystem.${LIVE_FILESYSTEM} binary/casper - rm -f chroot/encrypt +Chroot "sh encrypt" - # Removing packages - if [ -n "${PACKAGES}" ] - then - case "${LH_APT}" in - apt|apt-get) - Chroot "apt-get remove --purge --yes ${PACKAGES}" - ;; - aptitude) - Chroot "aptitude purge --assume-yes ${PACKAGES}" - ;; - esac - fi +# Move image +mv chroot/filesystem.${LIVE_FILESYSTEM} binary/casper +rm -f chroot/encrypt - # Creating stage file - Create_stagefile .stage/binary_encryption +# Removing packages +if [ -n "${PACKAGES}" ] +then + case "${LH_APT}" in + apt|apt-get) + Chroot "apt-get remove --purge --yes ${PACKAGES}" + ;; + aptitude) + Chroot "aptitude purge --assume-yes ${PACKAGES}" + ;; + esac fi + +# Creating stage file +Create_stagefile .stage/binary_encryption diff --git a/helpers/lh_binary_grub b/helpers/lh_binary_grub index 2de092d..c115f79 100755 --- a/helpers/lh_binary_grub +++ b/helpers/lh_binary_grub @@ -22,13 +22,22 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files -Read_conffile config/common Read_conffile config/bootstrap Read_conffile config/chroot +Read_conffile config/common Read_conffile config/image Set_defaults +if [ "${LIVE_BOOTLOADER}" != "grub" ] +then + exit 0 +fi + +Breakpoint "binary_grub: Init" + # Requiring stage file Require_stagefile .stage/bootstrap @@ -43,153 +52,156 @@ Check_stagefile .stage/binary_grub if [ "${LIVE_ARCHITECTURE}" != "amd64" ] && [ "${LIVE_ARCHITECTURE}" != "i386" ] then - echo "W: skipping binary_grub, foreign architecture." + Echo_warning "skipping binary_grub, foreign architecture." exit 0 fi -if [ "${LIVE_BOOTLOADER}" = "grub" ] +# Check templates +if [ ! -d "${LIVE_TEMPLATES}" ] then - # Check templates - if [ ! -d "${LIVE_TEMPLATES}" ] + if [ -d ../"${LIVE_TEMPLATES}" ] then - if [ -d ../"${LIVE_TEMPLATES}" ] - then - LIVE_TEMPLATES="../${LIVE_TEMPLATES}" - else - Echo_error "user specified templates not accessible in ${LIVE_TEMPLATES}" - exit 1 - fi - fi - - if [ ! -f chroot/usr/sbin/grub ] - then - PACKAGES="${PACKAGES} grub" + LIVE_TEMPLATES="../${LIVE_TEMPLATES}" + else + Echo_error "user specified templates not accessible in ${LIVE_TEMPLATES}" + exit 1 fi +fi - if [ -n "${PACKAGES}" ] - then - # Installing symlinks - case "${LH_APT}" in - apt|apt-get) - Chroot "apt-get install --yes ${PACKAGES}" - ;; - - aptitude) - Chroot "aptitude install --assume-yes ${PACKAGES}" - ;; - esac - fi +if [ ! -f chroot/usr/sbin/grub ] +then + PACKAGES="${PACKAGES} grub" +fi - # Setting destination directory - case "${LIVE_BINARY_IMAGE}" in - iso|usb|hdd) - DESTDIR="binary/live" +if [ -n "${PACKAGES}" ] +then + # Installing symlinks + case "${LH_APT}" in + apt|apt-get) + Chroot "apt-get install --yes ${PACKAGES}" + ;; + + aptitude) + Chroot "aptitude install --assume-yes ${PACKAGES}" ;; + esac +fi + +# Setting destination directory +case "${LIVE_BINARY_IMAGE}" in + iso|usb|hdd) + DESTDIR="binary/live" + ;; + + net) + Echo_error "not supported, FIXME" + ;; +esac - net) - Echo_error "not supported, FIXME" +# Temporary check for broken syslinux +if [ "${LIVE_BINARY_IMAGE}" = "iso" ] +then + case "${LIVE_ARCHITECTURE}" in + i386) + DESTDIR="${DESTDIR}.386" ;; esac +fi - # Temporary check for broken syslinux - if [ "${LIVE_BINARY_IMAGE}" = "iso" ] - then - case "${LIVE_ARCHITECTURE}" in - i386) - DESTDIR="${DESTDIR}.386" - ;; - esac - fi - - # Creating directory - if [ ! -d "${DESTDIR}" ] - then - mkdir -p "${DESTDIR}" - fi +# Creating directory +if [ ! -d "${DESTDIR}" ] +then + mkdir -p "${DESTDIR}" +fi - # Setting boot parameters - if [ -n "${LIVE_ENCRYPTION}" ] - then - LIVE_BOOTAPPEND="${LIVE_BOOTAPPEND} encryption=${LIVE_ENCRYPTION}" - fi +# Setting boot parameters +if [ -n "${LIVE_ENCRYPTION}" ] +then + LIVE_BOOTAPPEND="${LIVE_BOOTAPPEND} encryption=${LIVE_ENCRYPTION}" +fi - if [ -n "${LIVE_USERNAME}" ] - then - LIVE_BOOTAPPEND="${LIVE_BOOTAPPEND} username=${LIVE_USERNAME}" - fi +if [ -n "${LIVE_USERNAME}" ] +then + LIVE_BOOTAPPEND="${LIVE_BOOTAPPEND} username=${LIVE_USERNAME}" +fi - if [ -n "${LIVE_HOSTNAME}" ] - then - LIVE_BOOTAPPEND="${LIVE_BOOTAPPEND} hostname=${LIVE_HOSTNAME}" - fi +if [ -n "${LIVE_HOSTNAME}" ] +then + LIVE_BOOTAPPEND="${LIVE_BOOTAPPEND} hostname=${LIVE_HOSTNAME}" +fi - LIVE_BOOTAPPEND="`echo ${LIVE_BOOTAPPEND} | sed -e 's/ //'`" +LIVE_BOOTAPPEND="`echo ${LIVE_BOOTAPPEND} | sed -e 's/ //'`" - # Assembling kernel configuration - if [ "${LIVE_BINARY_IMAGE}" = "iso" ] - then - DEFAULT_FLAVOUR="`echo ${LIVE_KERNEL_FLAVOUR} | awk '{ print $1 }'`" - LINUX="title\t\tDebian GNU/Linux - Live\nroot\t\t(cd)\nkernel\t\t/`basename ${DESTDIR}`/`basename chroot/boot/vmlinuz-*${DEFAULT_FLAVOUR}`\ninitrd\t\t/`basename ${DESTDIR}`/initrd.img-`basename chroot/boot/vmlinuz-*${DEFAULT_FLAVOUR} | sed -e 's/vmlinuz-//'` boot=casper LIVE_BOOTAPPEND" - else - DEFAULT_FLAVOUR="`echo ${LIVE_KERNEL_FLAVOUR} | awk '{ print $1 }'`" - LINUX="title\t\tDebian GNU/Linux - Live\nroot\t\t(cd)\nkernel\t\t`basename chroot/boot/vmlinuz-*${DEFAULT_FLAVOUR}`\ninitrd\t\tinitrd.img-`basename chroot/boot/vmlinuz-*${DEFAULT_FLAVOUR} | sed -e 's/vmlinuz-//'` boot=casper LIVE_BOOTAPPEND" - fi +# Assembling kernel configuration +if [ "${LIVE_BINARY_IMAGE}" = "iso" ] +then + DEFAULT_FLAVOUR="`echo ${LIVE_KERNEL_FLAVOUR} | awk '{ print $1 }'`" + LINUX="title\t\tDebian GNU/Linux - Live\nkernel\t\t/`basename ${DESTDIR}`/`basename chroot/boot/vmlinuz-*${DEFAULT_FLAVOUR}`\ninitrd\t\t/`basename ${DESTDIR}`/initrd.img-`basename chroot/boot/vmlinuz-*${DEFAULT_FLAVOUR} | sed -e 's/vmlinuz-//'` boot=casper LIVE_BOOTAPPEND" +else + DEFAULT_FLAVOUR="`echo ${LIVE_KERNEL_FLAVOUR} | awk '{ print $1 }'`" + LINUX="title\t\tDebian GNU/Linux - Live\nkernel\t\t`basename chroot/boot/vmlinuz-*${DEFAULT_FLAVOUR}`\ninitrd\t\tinitrd.img-`basename chroot/boot/vmlinuz-*${DEFAULT_FLAVOUR} | sed -e 's/vmlinuz-//'` boot=casper LIVE_BOOTAPPEND" +fi - if [ "`echo ${LIVE_KERNEL_FLAVOUR} | wc -w`" -gt "1" ] - then - for KERNEL in chroot/boot/vmlinuz* - do - if [ -z "${LINUX}" ] +if [ "`echo ${LIVE_KERNEL_FLAVOUR} | wc -w`" -gt "1" ] +then + for KERNEL in chroot/boot/vmlinuz* + do + if [ -z "${LINUX}" ] + then + if [ "${LIVE_BINARY_IMAGE}" = "iso" ] + then + LINUX="title\t\tDebian GNU/Linux - Live, kernel `basename ${KERNEL} | sed -e 's/vmlinuz-//'`\nkernel\t\t/`basename ${DESTDIR}`/`basename ${KERNEL}`\ninitrd\t\t/`basename ${DESTDIR}`/initrd.img-`basename ${KERNEL} | sed -e 's/vmlinuz-//'` boot=casper LIVE_BOOTAPPEND" + else + LINUX="title\t\tDebian GNU/Linux - Live, kernel `basename ${KERNEL} | sed -e 's/vmlinuz-//'`\nkernel\t\t`basename ${KERNEL}`\ninitrd\t\tinitrd.img-`basename ${KERNEL} | sed -e 's/vmlinuz-//'` boot=casper LIVE_BOOTAPPEND" + fi + else + if [ "${LIVE_BINARY_IMAGE}" = "iso" ] then - if [ "${LIVE_BINARY_IMAGE}" = "iso" ] - then - LINUX="title\t\tDebian GNU/Linux - Live, kernel `basename ${KERNEL} | sed -e 's/vmlinuz-//'`\nroot\t\t(cd)\nkernel\t\t/`basename ${DESTDIR}`/`basename ${KERNEL}`\ninitrd\t\t/`basename ${DESTDIR}`/initrd.img-`basename ${KERNEL} | sed -e 's/vmlinuz-//'` boot=casper LIVE_BOOTAPPEND" - else - LINUX="title\t\tDebian GNU/Linux - Live, kernel `basename ${KERNEL} | sed -e 's/vmlinuz-//'`\nroot\t\t(cd)\nkernel\t\t`basename ${KERNEL}`\ninitrd\t\tinitrd.img-`basename ${KERNEL} | sed -e 's/vmlinuz-//'` boot=casper LIVE_BOOTAPPEND" - fi + LINUX="${LINUX}\n\ntitle\t\tDebian GNU/Linux - Live, kernel `basename ${KERNEL} | sed -e 's/vmlinuz-//'`\nkernel /`basename ${DESTDIR}`/`basename ${KERNEL}`\ninitrd\t\t/`basename ${DESTDIR}`/initrd.img-`basename ${KERNEL} | sed -e 's/vmlinuz-//'` boot=casper LIVE_BOOTAPPEND" else - if [ "${LIVE_BINARY_IMAGE}" = "iso" ] - then - LINUX="${LINUX}\n\ntitle\t\tDebian GNU/Linux - Live, kernel `basename ${KERNEL} | sed -e 's/vmlinuz-//'`\nroot\t\t(cd)\nkernel /`basename ${DESTDIR}`/`basename ${KERNEL}`\ninitrd\t\t/`basename ${DESTDIR}`/initrd.img-`basename ${KERNEL} | sed -e 's/vmlinuz-//'` boot=casper LIVE_BOOTAPPEND" - else - LINUX="${LINUX}\n\ntitle\t\tDebian GNU/Linux - Live, kernel `basename ${KERNEL} | sed -e 's/vmlinuz-//'`\nroot\t\t(cd)\nkernel `basename ${KERNEL}`\ninitrd\t\tinitrd.img-`basename ${KERNEL} | sed -e 's/vmlinuz-//'` boot=casper LIVE_BOOTAPPEND" - fi + LINUX="${LINUX}\n\ntitle\t\tDebian GNU/Linux - Live, kernel `basename ${KERNEL} | sed -e 's/vmlinuz-//'`\nkernel `basename ${KERNEL}`\ninitrd\t\tinitrd.img-`basename ${KERNEL} | sed -e 's/vmlinuz-//'` boot=casper LIVE_BOOTAPPEND" fi - done - fi + fi + done +fi - LINUX="`echo ${LINUX} | sed -e 's#//#/#g'`" +LINUX="`echo ${LINUX} | sed -e 's#//#/#g'`" - # Assembling memtest configuration - if [ -f "${DESTDIR}"/memtest ] +# Assembling memtest configuration +if [ -f "${DESTDIR}"/memtest ] +then + if [ "${LIVE_BINARY_IMAGE}" = "iso" ] then - if [ "${LIVE_BINARY_IMAGE}" = "iso" ] - then - MEMTEST="title\t\tMemtest86+\nroot\t\t(cd)\nkernel\t\t/`basename ${DESTDIR}`/memtest" - MEMTEST="`echo ${MEMTEST} | sed -e 's#//#/#g'`" - else - MEMTEST="title\t\tMemtest86+\nroot\t\t(cd)\nkernel\t\tmemtest" - fi + MEMTEST="title\t\tMemtest86+\nkernel\t\t/`basename ${DESTDIR}`/memtest" + MEMTEST="`echo ${MEMTEST} | sed -e 's#//#/#g'`" + else + MEMTEST="title\t\tMemtest86+\nkernel\t\tmemtest" fi +fi - mkdir -p binary/boot/grub - cp -r "${LIVE_TEMPLATES}"/grub/* binary/boot/grub +mkdir -p binary/boot/grub +cp -r "${LIVE_TEMPLATES}"/grub/* binary/boot/grub - if [ "${LIVE_BINARY_IMAGE}" = "iso" ] - then +case ${LIVE_BINARY_IMAGE} in + iso) cp chroot/usr/lib/grub/i386-pc/stage2_eltorito binary/boot/grub - fi + ;; - # Copying splash screen - if [ -n "${LIVE_GRUB_SPLASH}" ] - then - # FIXME - cp "${LIVE_GRUB_SPLASH}" binary/boot/grub + usb|hdd) + cp chroot/usr/lib/grub/i386-pc/stage1 chroot/usr/lib/grub/i386-pc/stage2 binary/boot/grub + ;; +esac - LIVE_SPLASH="splashimage /boot/grub/`basename ${LIVE_GRUB_SPLASH}`" - fi +# Copying splash screen +if [ -n "${LIVE_GRUB_SPLASH}" ] +then + # FIXME + cp "${LIVE_GRUB_SPLASH}" binary/boot/grub - # Configure grub templates + LIVE_SPLASH="splashimage /boot/grub/`basename ${LIVE_GRUB_SPLASH}`" +fi + +# Configure grub templates cat >> binary/boot/grub/menu.lst << EOF # This is a divider, added to separate the menu items below from the Debian # ones. @@ -200,23 +212,22 @@ root LIVE_MEMTEST EOF - sed -i -e "s#LIVE_SPLASH#${LIVE_SPLASH}#" -e "s#LIVE_KERNEL_LIVE#${LINUX}#" -e "s#LIVE_KERNEL_INSTALL#${LIVE_KERNEL_INSTALL}#" -e "s#LIVE_MEMTEST#${MEMTEST}#" binary/boot/grub/menu.lst - sed -i -e "s#LIVE_BOOTAPPEND#${LIVE_BOOTAPPEND}#" binary/boot/grub/menu.lst +sed -i -e "s#LIVE_SPLASH#${LIVE_SPLASH}#" -e "s#LIVE_KERNEL_LIVE#${LINUX}#" -e "s#LIVE_KERNEL_INSTALL#${LIVE_KERNEL_INSTALL}#" -e "s#LIVE_MEMTEST#${MEMTEST}#" binary/boot/grub/menu.lst +sed -i -e "s#LIVE_BOOTAPPEND#${LIVE_BOOTAPPEND}#" binary/boot/grub/menu.lst - if [ -n "${PACKAGES}" ] - then - # Removing packages - case "${LH_APT}" in - apt|apt-get) - Chroot "apt-get remove --purge --yes ${PACKAGES}" - ;; - - aptitude) - Chroot "aptitude purge --assume-yes ${PACKAGES}" - ;; - esac - fi +if [ -n "${PACKAGES}" ] +then + # Removing packages + case "${LH_APT}" in + apt|apt-get) + Chroot "apt-get remove --purge --yes ${PACKAGES}" + ;; - # Creating stage file - Create_stagefile .stage/binary_grub + aptitude) + Chroot "aptitude purge --assume-yes ${PACKAGES}" + ;; +esac fi + +# Creating stage file +Create_stagefile .stage/binary_grub diff --git a/helpers/lh_binary_hdd b/helpers/lh_binary_hdd index f41fbf4..5a450ab 100755 --- a/helpers/lh_binary_hdd +++ b/helpers/lh_binary_hdd @@ -22,16 +22,22 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files -Read_conffile config/common Read_conffile config/bootstrap +Read_conffile config/chroot +Read_conffile config/common Read_conffile config/image Set_defaults + for IMAGE in ${LIVE_BINARY_IMAGE} do if [ "${IMAGE}" = "hdd" ] then + Breakpoint "binary_hdd: Init" + # Requiring stage file Require_stagefile .stage/bootstrap diff --git a/helpers/lh_binary_includes b/helpers/lh_binary_includes index aff6fa1..e343d72 100755 --- a/helpers/lh_binary_includes +++ b/helpers/lh_binary_includes @@ -22,12 +22,22 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files -Read_conffile config/common +Read_conffile config/bootstrap Read_conffile config/chroot +Read_conffile config/common Read_conffile config/image Set_defaults +if [ "${LIVE_INCLUDES}" = "none" ] +then + exit 0 +fi + +Breakpoint "binary_includes: Init" + # Requiring stage file Require_stagefile .stage/bootstrap diff --git a/helpers/lh_binary_iso b/helpers/lh_binary_iso index d7328c3..c77394e 100755 --- a/helpers/lh_binary_iso +++ b/helpers/lh_binary_iso @@ -22,9 +22,12 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files -Read_conffile config/common Read_conffile config/bootstrap +Read_conffile config/chroot +Read_conffile config/common Read_conffile config/image Set_defaults @@ -32,6 +35,8 @@ for IMAGE in ${LIVE_BINARY_IMAGE} do if [ "${IMAGE}" = "iso" ] then + Breakpoint "binary_iso: Init" + # Requiring stage file Require_stagefile .stage/bootstrap diff --git a/helpers/lh_binary_linuximage b/helpers/lh_binary_linuximage index 88f789c..bcdddc1 100755 --- a/helpers/lh_binary_linuximage +++ b/helpers/lh_binary_linuximage @@ -22,13 +22,17 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files -Read_conffile config/common Read_conffile config/bootstrap Read_conffile config/chroot +Read_conffile config/common Read_conffile config/image Set_defaults +Breakpoint "binary_linuximage: Init" + # Requiring stage file Require_stagefile .stage/bootstrap diff --git a/helpers/lh_binary_localincludes b/helpers/lh_binary_localincludes index 3327100..dc427d9 100755 --- a/helpers/lh_binary_localincludes +++ b/helpers/lh_binary_localincludes @@ -22,11 +22,17 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files -Read_conffile config/common +Read_conffile config/bootstrap Read_conffile config/chroot +Read_conffile config/common +Read_conffile config/image Set_defaults +Breakpoint "binary_localincludes: Init" + # Requiring stage file Require_stagefile .stage/bootstrap diff --git a/helpers/lh_binary_manifest b/helpers/lh_binary_manifest index b0ae36c..e90f98b 100755 --- a/helpers/lh_binary_manifest +++ b/helpers/lh_binary_manifest @@ -22,11 +22,17 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files +Read_conffile config/bootstrap +Read_conffile config/chroot Read_conffile config/common Read_conffile config/image Set_defaults +Breakpoint "binary_manifest: Init" + # Requiring stage file Require_stagefile .stage/bootstrap diff --git a/helpers/lh_binary_md5sum b/helpers/lh_binary_md5sum index c16b6d4..96e1007 100755 --- a/helpers/lh_binary_md5sum +++ b/helpers/lh_binary_md5sum @@ -22,11 +22,17 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files +Read_conffile config/bootstrap +Read_conffile config/chroot Read_conffile config/common Read_conffile config/image Set_defaults +Breakpoint "binary_md5sum: Init" + # Requiring stage file Require_stagefile .stage/bootstrap diff --git a/helpers/lh_binary_memtest86 b/helpers/lh_binary_memtest86 index 5232995..5f5e89c 100755 --- a/helpers/lh_binary_memtest86 +++ b/helpers/lh_binary_memtest86 @@ -22,13 +22,17 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files -Read_conffile config/common Read_conffile config/bootstrap Read_conffile config/chroot +Read_conffile config/common Read_conffile config/image Set_defaults +Breakpoint "binary_memtest86: Init" + # Requiring stage file Require_stagefile .stage/bootstrap diff --git a/helpers/lh_binary_net b/helpers/lh_binary_net index 2fded51..2acd2fb 100755 --- a/helpers/lh_binary_net +++ b/helpers/lh_binary_net @@ -22,12 +22,17 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files -Read_conffile config/common Read_conffile config/bootstrap +Read_conffile config/chroot +Read_conffile config/common Read_conffile config/image Set_defaults +Breakpoint "binary_net: Init" + for IMAGE in ${LIVE_BINARY_IMAGE} do if [ "${IMAGE}" = "net" ] @@ -51,6 +56,11 @@ do fi # Creating image file + if [ "`basename ${LIVE_SERVER_PATH}`" = "chroot" ] + then + mv chroot chroot.tmp + fi + mv binary "`basename ${LIVE_SERVER_PATH}`" cd .. @@ -60,6 +70,11 @@ do mv "`basename ${LIVE_SERVER_PATH}`" binary + if [ "`basename ${LIVE_SERVER_PATH}`" = "chroot" ] + then + mv chroot.tmp chroot + fi + # Creating stage file Create_stagefile .stage/binary_net fi diff --git a/helpers/lh_binary_rootfs b/helpers/lh_binary_rootfs index 20ecdd3..a1d3d3a 100755 --- a/helpers/lh_binary_rootfs +++ b/helpers/lh_binary_rootfs @@ -22,11 +22,17 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files +Read_conffile config/bootstrap +Read_conffile config/chroot Read_conffile config/common Read_conffile config/image Set_defaults +Breakpoint "binary_rootfs: Init" + # Requiring stage file Require_stagefile .stage/bootstrap Require_stagefile .stage/binary_chroot diff --git a/helpers/lh_binary_syslinux b/helpers/lh_binary_syslinux index b3dc446..3afc191 100755 --- a/helpers/lh_binary_syslinux +++ b/helpers/lh_binary_syslinux @@ -22,13 +22,17 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files -Read_conffile config/common Read_conffile config/bootstrap Read_conffile config/chroot +Read_conffile config/common Read_conffile config/image Set_defaults +Breakpoint "binary_syslinux: Init" + # Requiring stage file Require_stagefile .stage/bootstrap diff --git a/helpers/lh_binary_usb b/helpers/lh_binary_usb index 9371f67..228250e 100755 --- a/helpers/lh_binary_usb +++ b/helpers/lh_binary_usb @@ -22,12 +22,17 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files -Read_conffile config/common Read_conffile config/bootstrap +Read_conffile config/chroot +Read_conffile config/common Read_conffile config/image Set_defaults +Breakpoint "binary_usb: Init" + for IMAGE in ${LIVE_BINARY_IMAGE} do if [ "${IMAGE}" = "usb" ] diff --git a/helpers/lh_bootstrap b/helpers/lh_bootstrap index c3a8dd9..2692a56 100755 --- a/helpers/lh_bootstrap +++ b/helpers/lh_bootstrap @@ -22,11 +22,18 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Starting helper Echo_debug "Init ${PROGRAM}" +Breakpoint "bootstrap: Init" + # Reading configuration files +Read_conffile config/bootstrap +Read_conffile config/chroot Read_conffile config/common +Read_conffile config/image Set_defaults # Bootstrapping system diff --git a/helpers/lh_bootstrap_cdebootstrap b/helpers/lh_bootstrap_cdebootstrap index 2430cc8..9581d8c 100755 --- a/helpers/lh_bootstrap_cdebootstrap +++ b/helpers/lh_bootstrap_cdebootstrap @@ -25,14 +25,17 @@ Arguments "${@}" # Ensure that a system is built as root lh_testroot -# Starting helper Echo_debug "Init ${PROGRAM}" # Reading configuration files -Read_conffile config/common Read_conffile config/bootstrap +Read_conffile config/chroot +Read_conffile config/common +Read_conffile config/image Set_defaults +Breakpoint "bootstrap_cdeboostrap: Init" + if [ "${LH_BOOTSTRAP}" != "cdebootstrap" ] then exit 0 @@ -59,9 +62,9 @@ then CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --arch=${LIVE_ARCHITECTURE}" fi -if [ -n "${LIVE_DISTRIBUTION_CONFIG}" ] +if [ -n "${LIVE_BOOTSTRAP_CONFIG}" ] then - CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --suite-config=${LIVE_DISTRIBUTION_CONFIG}" + CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --suite-config=${LIVE_BOOTSTRAP_CONFIG}" fi if [ "${LIVE_PACKAGES_LISTS}" != "minimal" ] && [ "${LIVE_PACKAGES_LISTS}" != "mini" ] @@ -71,17 +74,17 @@ else CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --flavour=minimal" fi -if [ "${DEBUG}" = "true" ] +if [ "${LH_DEBUG}" = "true" ] then CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --debug" fi -if [ "${QUIET}" = "true" ] +if [ "${LH_QUIET}" = "true" ] then CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --quiet" fi -if [ "${VERBOSE}" = "true" ] +if [ "${LH_VERBOSE}" = "true" ] then CDEBOOTSTRAP_OPTIONS="${CDEBOOTSTRAP_OPTIONS} --verbose" fi diff --git a/helpers/lh_bootstrap_debootstrap b/helpers/lh_bootstrap_debootstrap index 87dd30e..a32c491 100755 --- a/helpers/lh_bootstrap_debootstrap +++ b/helpers/lh_bootstrap_debootstrap @@ -25,14 +25,17 @@ Arguments "${@}" # Ensure that a system is built as root lh_testroot -# Starting helper Echo_debug "Init ${PROGRAM}" # Reading configuration files -Read_conffile config/common Read_conffile config/bootstrap +Read_conffile config/chroot +Read_conffile config/common +Read_conffile config/image Set_defaults +Breakpoint "bootstrap_debootstrap: Init" + if [ "${LH_BOOTSTRAP}" != "debootstrap" ] then exit 0 @@ -64,7 +67,7 @@ then LIVE_DEBOOTSTRAP_SCRIPT="/usr/lib/debootstrap/scripts/${LIVE_BOOTSTRAP_CONFIG}" fi -if [ "${VERBOSE}" = "true" ] +if [ "${LH_VERBOSE}" = "true" ] then DEBOOTSTRAP_OPTIONS="${DEBOOTSTRAP_OPTIONS} --verbose" fi diff --git a/helpers/lh_build b/helpers/lh_build index 077b05a..20ae36d 100755 --- a/helpers/lh_build +++ b/helpers/lh_build @@ -22,6 +22,9 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" +Breakpoint "build: Init" + # Bootstrapping system lh_bootstrap "${@}" diff --git a/helpers/lh_chroot b/helpers/lh_chroot index 5e7ad8f..670c410 100755 --- a/helpers/lh_chroot +++ b/helpers/lh_chroot @@ -22,11 +22,17 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files -Read_conffile config/common +Read_conffile config/bootstrap Read_conffile config/chroot +Read_conffile config/common +Read_conffile config/image Set_defaults +Breakpoint "chroot: Init" + # Configuring chroot lh_chroot_proc install "${@}" lh_chroot_sysfs install "${@}" diff --git a/helpers/lh_chroot_apt b/helpers/lh_chroot_apt index e234c39..47107e7 100755 --- a/helpers/lh_chroot_apt +++ b/helpers/lh_chroot_apt @@ -22,11 +22,17 @@ USAGE="${PROGRAM} {install|remove} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files -Read_conffile config/common +Read_conffile config/bootstrap Read_conffile config/chroot +Read_conffile config/common +Read_conffile config/image Set_defaults +Breakpoint "chroot_apt: Init" + # Requiring stage file Require_stagefile .stage/bootstrap diff --git a/helpers/lh_chroot_debianchroot b/helpers/lh_chroot_debianchroot index 1c926eb..b0f3a57 100755 --- a/helpers/lh_chroot_debianchroot +++ b/helpers/lh_chroot_debianchroot @@ -22,11 +22,17 @@ USAGE="${PROGRAM} {install|remove} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files -Read_conffile config/common +Read_conffile config/bootstrap Read_conffile config/chroot +Read_conffile config/common +Read_conffile config/image Set_defaults +Breakpoint "chroot_debianchroot: Init" + # Requiring stage file Require_stagefile .stage/bootstrap diff --git a/helpers/lh_chroot_hacks b/helpers/lh_chroot_hacks index 9422226..bc6b0d4 100755 --- a/helpers/lh_chroot_hacks +++ b/helpers/lh_chroot_hacks @@ -22,11 +22,17 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files -Read_conffile config/common +Read_conffile config/bootstrap Read_conffile config/chroot +Read_conffile config/common +Read_conffile config/image Set_defaults +Breakpoint "chroot_hacks: Init" + # Requiring stage file Require_stagefile .stage/bootstrap diff --git a/helpers/lh_chroot_hooks b/helpers/lh_chroot_hooks index 47dea53..85386a8 100755 --- a/helpers/lh_chroot_hooks +++ b/helpers/lh_chroot_hooks @@ -22,11 +22,17 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files -Read_conffile config/common +Read_conffile config/bootstrap Read_conffile config/chroot +Read_conffile config/common +Read_conffile config/image Set_defaults +Breakpoint "chroot_hooks: Init" + # Requiring stage file Require_stagefile .stage/bootstrap diff --git a/helpers/lh_chroot_hosts b/helpers/lh_chroot_hosts index 518ef30..52784d5 100755 --- a/helpers/lh_chroot_hosts +++ b/helpers/lh_chroot_hosts @@ -22,11 +22,17 @@ USAGE="${PROGRAM} {install|remove} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files -Read_conffile config/common +Read_conffile config/bootstrap Read_conffile config/chroot +Read_conffile config/common +Read_conffile config/image Set_defaults +Breakpoint "chroot_hosts: Init" + # Requiring stage file Require_stagefile .stage/bootstrap diff --git a/helpers/lh_chroot_interactive b/helpers/lh_chroot_interactive index 82fd986..ac90f89 100755 --- a/helpers/lh_chroot_interactive +++ b/helpers/lh_chroot_interactive @@ -22,11 +22,17 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files -Read_conffile config/common +Read_conffile config/bootstrap Read_conffile config/chroot +Read_conffile config/common +Read_conffile config/image Set_defaults +Breakpoint "chroot_interactive: Init" + if [ "${LIVE_INTERACTIVE}" != "disabled" ] then # Requiring stage file diff --git a/helpers/lh_chroot_linuximage b/helpers/lh_chroot_linuximage index c9443dd..0af6e18 100755 --- a/helpers/lh_chroot_linuximage +++ b/helpers/lh_chroot_linuximage @@ -22,11 +22,17 @@ USAGE="${PROGRAM} {install|remove} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files -Read_conffile config/common +Read_conffile config/bootstrap Read_conffile config/chroot +Read_conffile config/common +Read_conffile config/image Set_defaults +Breakpoint "chroot_linuximage: Init" + # Requiring stage file Require_stagefile .stage/bootstrap diff --git a/helpers/lh_chroot_localhooks b/helpers/lh_chroot_localhooks index 94d9684..07a5c9c 100755 --- a/helpers/lh_chroot_localhooks +++ b/helpers/lh_chroot_localhooks @@ -22,11 +22,17 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files -Read_conffile config/common +Read_conffile config/bootstrap Read_conffile config/chroot +Read_conffile config/common +Read_conffile config/image Set_defaults +Breakpoint "chroot_localhooks: Init" + # Requiring stage file Require_stagefile .stage/bootstrap diff --git a/helpers/lh_chroot_localincludes b/helpers/lh_chroot_localincludes index 05ca4ec..777cdd1 100755 --- a/helpers/lh_chroot_localincludes +++ b/helpers/lh_chroot_localincludes @@ -22,11 +22,17 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files -Read_conffile config/common +Read_conffile config/bootstrap Read_conffile config/chroot +Read_conffile config/common +Read_conffile config/image Set_defaults +Breakpoint "chroot_localincludes: Init" + # Requiring stage file Require_stagefile .stage/bootstrap diff --git a/helpers/lh_chroot_localization b/helpers/lh_chroot_localization index a5d7de6..4abaf2d 100755 --- a/helpers/lh_chroot_localization +++ b/helpers/lh_chroot_localization @@ -22,11 +22,17 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files -Read_conffile config/common +Read_conffile config/bootstrap Read_conffile config/chroot +Read_conffile config/common +Read_conffile config/image Set_defaults +Breakpoint "chroot_localization: Init" + # Requiring stage file Require_stagefile .stage/bootstrap diff --git a/helpers/lh_chroot_localpackages b/helpers/lh_chroot_localpackages index b285527..6beee2d 100755 --- a/helpers/lh_chroot_localpackages +++ b/helpers/lh_chroot_localpackages @@ -22,11 +22,17 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files -Read_conffile config/common +Read_conffile config/bootstrap Read_conffile config/chroot +Read_conffile config/common +Read_conffile config/image Set_defaults +Breakpoint "chroot_localpackages: Init" + # Requiring stage file Require_stagefile .stage/bootstrap diff --git a/helpers/lh_chroot_localpackageslists b/helpers/lh_chroot_localpackageslists index 1989826..a8459ef 100755 --- a/helpers/lh_chroot_localpackageslists +++ b/helpers/lh_chroot_localpackageslists @@ -22,11 +22,17 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files -Read_conffile config/common +Read_conffile config/bootstrap Read_conffile config/chroot +Read_conffile config/common +Read_conffile config/image Set_defaults +Breakpoint "chroot_localpackageslists: Init" + # Requiring stage file Require_stagefile .stage/bootstrap diff --git a/helpers/lh_chroot_packages b/helpers/lh_chroot_packages index a0f5b8a..5b38fcc 100755 --- a/helpers/lh_chroot_packages +++ b/helpers/lh_chroot_packages @@ -22,12 +22,17 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files -Read_conffile config/common Read_conffile config/bootstrap Read_conffile config/chroot +Read_conffile config/common +Read_conffile config/image Set_defaults +Breakpoint "chroot_packages: Init" + # Requiring stage file Require_stagefile .stage/bootstrap diff --git a/helpers/lh_chroot_packageslists b/helpers/lh_chroot_packageslists index 3dfda53..18405bd 100755 --- a/helpers/lh_chroot_packageslists +++ b/helpers/lh_chroot_packageslists @@ -22,11 +22,17 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files -Read_conffile config/common +Read_conffile config/bootstrap Read_conffile config/chroot +Read_conffile config/common +Read_conffile config/image Set_defaults +Breakpoint "chroot_packageslists: Init" + # Requiring stage file Require_stagefile .stage/bootstrap diff --git a/helpers/lh_chroot_proc b/helpers/lh_chroot_proc index ac0dd17..b689cc6 100755 --- a/helpers/lh_chroot_proc +++ b/helpers/lh_chroot_proc @@ -22,11 +22,20 @@ USAGE="${PROGRAM} {install|remove} [--force]" Arguments "${@}" +# Ensure that a system is built as root +lh_testroot + +Echo_debug "Init ${PROGRAM}" + # Reading configuration files -Read_conffile config/common +Read_conffile config/bootstrap Read_conffile config/chroot +Read_conffile config/common +Read_conffile config/image Set_defaults +Breakpoint "chroot_proc: Init" + # Requiring stage file Require_stagefile .stage/bootstrap diff --git a/helpers/lh_chroot_resolv b/helpers/lh_chroot_resolv index d319e96..db68e8c 100755 --- a/helpers/lh_chroot_resolv +++ b/helpers/lh_chroot_resolv @@ -22,11 +22,17 @@ USAGE="${PROGRAM} {install|remove} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files -Read_conffile config/common +Read_conffile config/bootstrap Read_conffile config/chroot +Read_conffile config/common +Read_conffile config/image Set_defaults +Breakpoint "chroot_resolv: Init" + # Requiring stage file Require_stagefile .stage/bootstrap diff --git a/helpers/lh_chroot_sources b/helpers/lh_chroot_sources index 6037c4f..af85217 100755 --- a/helpers/lh_chroot_sources +++ b/helpers/lh_chroot_sources @@ -22,13 +22,17 @@ USAGE="${PROGRAM} {install|remove} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files -Read_conffile config/common +Read_conffile config/bootstrap Read_conffile config/chroot -Read_conffile config/bootstrap #FIXME +Read_conffile config/common Read_conffile config/image Set_defaults +Breakpoint "chroot_sources: Init" + # Requiring stage file Require_stagefile .stage/bootstrap @@ -65,11 +69,37 @@ case "${1}" in fi # Check local sources.list - if [ -f config/sources.list.build ] + if ls config/chroot_sources/*.build &> /dev/null then echo "" >> chroot/etc/apt/sources.list echo "# Custom repositories" >> chroot/etc/apt/sources.list - cat config/sources.list.build >> chroot/etc/apt/sources.list + + for FILE in config/chroot_sources/*.build + do + cat ${FILE} >> chroot/etc/apt/sources.list + done + fi + + # Check local gpg keys + if ls config/chroot_sources/*.build.gpg &> /dev/null + then + for FILE in config/chroot_sources/*.build.gpg + do + cp ${FILE} chroot/root + Chroot "apt-key add /root/`basename ${FILE}`" + rm -f chroot/root/`basename ${FILE}` + done + fi + + # Check local keyring packages + if ls config/chroot_sources/*.deb &> /dev/null + then + for PACKAGE in config/chroot_sources/*.deb + do + cp ${PACKAGE} chroot/root + Chroot "dpkg -i `basename ${PACKAGE}`" + rm -f chroot/root/`basename ${PACKAGE}` + done fi # Installing aptitude @@ -87,6 +117,13 @@ case "${1}" in Chroot "aptitude update" fi + # Installing keyring packages + if [ -n "${LIVE_KEYRING_PACKAGES}" ] + then + Chroot "apt-get install --yes --force-yes ${LIVE_KEYRING_PACKAGES}" + Chroot "apt-get update" + fi + # Creating stage file Create_stagefile .stage/chroot_sources ;; @@ -95,6 +132,13 @@ case "${1}" in # Configure generic indices if [ "${LH_APT_GENERIC}" = "enabled" ] then + # Don't do anything if it's not required + if [ "${LIVE_MIRROR_BUILD}" = "${LIVE_MIRROR_IMAGE}" ] && \ + [ "${LIVE_MIRROR_BUILD_SECURITY}" = "${LIVE_MIRROR_IMAGE_SECURITY}" ] + then + exit 0 + fi + # Cleaning apt list cache rm -rf chroot/var/lib/apt/lists mkdir -p chroot/var/lib/apt/lists/partial @@ -120,11 +164,26 @@ case "${1}" in fi # Check local sources.list - if [ -f config/sources.list.image ] + if ls config/chroot_sources/*.image &> /dev/null then echo "" >> chroot/etc/apt/sources.list echo "# Custom repositories" >> chroot/etc/apt/sources.list - cat config/sources.list.image >> chroot/etc/apt/sources.list + + for FILE in config/chroot_sources/*.image + do + cat ${FILE} >> chroot/etc/apt/sources.list + done + fi + + # Check local gpg keys + if ls config/chroot_sources/*.image.gpg &> /dev/null + then + for FILE in config/chroot_sources/*.image.gpg + do + cp ${FILE} chroot/root + Chroot "apt-key add /root/`basename ${FILE}`" + rm -f chroot/root/`basename ${FILE}` + done fi case "${LH_APT}" in diff --git a/helpers/lh_chroot_symlinks b/helpers/lh_chroot_symlinks index 850c8f8..a2413e5 100755 --- a/helpers/lh_chroot_symlinks +++ b/helpers/lh_chroot_symlinks @@ -22,11 +22,17 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files -Read_conffile config/common +Read_conffile config/bootstrap Read_conffile config/chroot +Read_conffile config/common +Read_conffile config/image Set_defaults +Breakpoint "chroot_symlinks: Init" + # Requiring stage file Require_stagefile .stage/bootstrap diff --git a/helpers/lh_chroot_sysfs b/helpers/lh_chroot_sysfs index d350541..ae9c0b4 100755 --- a/helpers/lh_chroot_sysfs +++ b/helpers/lh_chroot_sysfs @@ -22,11 +22,20 @@ USAGE="${PROGRAM} {install|remove} [--force]" Arguments "${@}" +# Ensure that a system is built as root +lh_testroot + +Echo_debug "Init ${PROGRAM}" + # Reading configuration files -Read_conffile config/common +Read_conffile config/bootstrap Read_conffile config/chroot +Read_conffile config/common +Read_conffile config/image Set_defaults +Breakpoint "chroot_sysfs: Init" + # Requiring stage file Require_stagefile .stage/bootstrap diff --git a/helpers/lh_chroot_sysvinit b/helpers/lh_chroot_sysvinit index 7817b47..48eae43 100755 --- a/helpers/lh_chroot_sysvinit +++ b/helpers/lh_chroot_sysvinit @@ -22,11 +22,17 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files -Read_conffile config/common +Read_conffile config/bootstrap Read_conffile config/chroot +Read_conffile config/common +Read_conffile config/image Set_defaults +Breakpoint "chroot_sysvinit: Init" + # Requiring stage file Require_stagefile .stage/bootstrap diff --git a/helpers/lh_chroot_sysvrc b/helpers/lh_chroot_sysvrc index ec27ad2..f864854 100755 --- a/helpers/lh_chroot_sysvrc +++ b/helpers/lh_chroot_sysvrc @@ -22,11 +22,17 @@ USAGE="${PROGRAM} {install|remove} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files -Read_conffile config/common +Read_conffile config/bootstrap Read_conffile config/chroot +Read_conffile config/common +Read_conffile config/image Set_defaults +Breakpoint "chroot_sysvrc: Init" + # Requiring stage file Require_stagefile .stage/bootstrap diff --git a/helpers/lh_chroot_tasks b/helpers/lh_chroot_tasks index 33a8464..7427e97 100755 --- a/helpers/lh_chroot_tasks +++ b/helpers/lh_chroot_tasks @@ -22,11 +22,17 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files -Read_conffile config/common +Read_conffile config/bootstrap Read_conffile config/chroot +Read_conffile config/common +Read_conffile config/image Set_defaults +Breakpoint "chroot_tasks: Init" + # Requiring stage file Require_stagefile .stage/bootstrap diff --git a/helpers/lh_clean b/helpers/lh_clean index d884ebe..dde83d5 100755 --- a/helpers/lh_clean +++ b/helpers/lh_clean @@ -22,8 +22,13 @@ USAGE="${PROGRAM} [all|cache|chroot|binary|lock|purge|stage|source]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files +Read_conffile config/bootstrap +Read_conffile config/chroot Read_conffile config/common +Read_conffile config/image Set_defaults case "${1}" in diff --git a/helpers/lh_config b/helpers/lh_config index 398b102..0d42477 100755 --- a/helpers/lh_config +++ b/helpers/lh_config @@ -22,6 +22,8 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + if [ "${1}" != "newconfig" ] then # Source existing configuration @@ -34,6 +36,8 @@ fi # Setting defaults Set_defaults +Breakpoint "config: Init" + # Creating configuration directory install -d -m 0755 "${LIVE_ROOT}"/config || true @@ -41,6 +45,10 @@ install -d -m 0755 "${LIVE_ROOT}"/config || true cat > "${LIVE_ROOT}"/config/common << EOF # config/common: configuration for live-helper(7) +# \$LH_MODE: set distribution mode +# (Default: ${LH_MODE}) +LH_MODE="${LH_MODE}" + # \$LH_APT: set package manager # (Default: ${LH_APT}) LH_APT="${LH_APT}" @@ -96,6 +104,28 @@ LH_LOSETUP="${LH_LOSETUP}" # \$LIVE_ROOT: set the root directory # (Default: ${LIVE_ROOT}) LIVE_ROOT="${LIVE_ROOT}" + +# Live-helper options + +# \$LH_BREAKPOINTS: enable breakpoints +# (Default: ${LH_BREAKPOINTS}) +LH_BREAKPOINTS="${LH_BREAKPOINTS}" + +# \$LH_DEBUG: enable debug +# (Default: ${LH_DEBUG}) +LH_DEBUG="${LH_DEBUG}" + +# \$LH_FORCE: enable force +# (Default: ${LH_FORCE}) +LH_FORCE="${LH_FORCE}" + +# \$LH_QUIET: enable quiet +# (Default: ${LH_QUIET}) +LH_QUIET="${LH_QUIET}" + +# \$LH_VERBOSE: enable verbose +# (Default: ${LH_VERBOSE}) +LH_VERBOSE="${LH_VERBOSE}" EOF # Creating lh_chroot_* configuration @@ -110,6 +140,10 @@ LIVE_KERNEL_FLAVOUR="${LIVE_KERNEL_FLAVOUR}" # (Default: autodetected) LIVE_KERNEL_PACKAGES="${LIVE_KERNEL_PACKAGES}" +# \$LIVE_KEYRING_PACKAGES: set the keyring packages +# (Default: empty) +LIVE_KEYRING_PACKAGES="${LIVE_KEYRING_PACKAGES}" + # \$LIVE_LANGUAGE: set the language to use # (Default: empty) LIVE_LANGUAGE="${LIVE_LANGUAGE}" @@ -148,6 +182,7 @@ install -d -m 0755 "${LIVE_ROOT}"/config/chroot_localhooks || true install -d -m 0755 "${LIVE_ROOT}"/config/chroot_localincludes || true install -d -m 0755 "${LIVE_ROOT}"/config/chroot_localpackages || true install -d -m 0755 "${LIVE_ROOT}"/config/chroot_localpackageslists || true +install -d -m 0755 "${LIVE_ROOT}"/config/chroot_sources || true # Creating lh_bootstrap_* configuration cat > "${LIVE_ROOT}"/config/bootstrap << EOF diff --git a/helpers/lh_losetup b/helpers/lh_losetup index fb7141e..e3b7148 100755 --- a/helpers/lh_losetup +++ b/helpers/lh_losetup @@ -22,10 +22,17 @@ USAGE="${PROGRAM} " Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files +Read_conffile config/bootstrap +Read_conffile config/chroot Read_conffile config/common +Read_conffile config/image Set_defaults +Breakpoint "losetup: Init" + if [ -z "${1}" ] then DEVICE="`${LH_LOSETUP} -f`" diff --git a/helpers/lh_source b/helpers/lh_source index 6e31cd9..b8892d2 100755 --- a/helpers/lh_source +++ b/helpers/lh_source @@ -22,11 +22,17 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files +Read_conffile config/bootstrap +Read_conffile config/chroot Read_conffile config/common Read_conffile config/image Set_defaults +Breakpoint "source: Init" + # Enabling network in chroot lh_chroot_hosts install "${@}" lh_chroot_resolv install "${@}" diff --git a/helpers/lh_source_config b/helpers/lh_source_config index 8701653..3982696 100755 --- a/helpers/lh_source_config +++ b/helpers/lh_source_config @@ -22,11 +22,17 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files +Read_conffile config/bootstrap +Read_conffile config/chroot Read_conffile config/common Read_conffile config/image Set_defaults +Breakpoint "source_config: Init" + if [ "${LIVE_SOURCE}" = "enabled" ] then # Requiring stage file diff --git a/helpers/lh_source_download b/helpers/lh_source_download index c1903f8..a3ec267 100755 --- a/helpers/lh_source_download +++ b/helpers/lh_source_download @@ -22,11 +22,17 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files +Read_conffile config/bootstrap +Read_conffile config/chroot Read_conffile config/common Read_conffile config/image Set_defaults +Breakpoint "source_download: Init" + if [ "${LIVE_SOURCE}" = "enabled" ] then # Requiring stage file diff --git a/helpers/lh_source_generic b/helpers/lh_source_generic index 81ba3a5..3740fe3 100755 --- a/helpers/lh_source_generic +++ b/helpers/lh_source_generic @@ -22,11 +22,17 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files +Read_conffile config/bootstrap +Read_conffile config/chroot Read_conffile config/common Read_conffile config/image Set_defaults +Breakpoint "source_generic: Init" + if [ "${LIVE_SOURCE}" = "disabled" ] then exit 0 diff --git a/helpers/lh_source_hdd b/helpers/lh_source_hdd index 9fbdf07..a3bdd8c 100755 --- a/helpers/lh_source_hdd +++ b/helpers/lh_source_hdd @@ -22,11 +22,17 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files +Read_conffile config/bootstrap +Read_conffile config/chroot Read_conffile config/common Read_conffile config/image Set_defaults +Breakpoint "source_hdd: Init" + if [ "${LIVE_SOURCE}" = "disabled" ] then exit 0 diff --git a/helpers/lh_source_iso b/helpers/lh_source_iso index 25dcb5f..f5b18cc 100755 --- a/helpers/lh_source_iso +++ b/helpers/lh_source_iso @@ -22,11 +22,17 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files +Read_conffile config/bootstrap +Read_conffile config/chroot Read_conffile config/common Read_conffile config/image Set_defaults +Breakpoint "source_iso: Init" + if [ "${LIVE_SOURCE}" = "disabled" ] then exit 0 diff --git a/helpers/lh_source_md5sum b/helpers/lh_source_md5sum index 70a2854..8fc2b39 100755 --- a/helpers/lh_source_md5sum +++ b/helpers/lh_source_md5sum @@ -22,11 +22,17 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files +Read_conffile config/bootstrap +Read_conffile config/chroot Read_conffile config/common Read_conffile config/image Set_defaults +Breakpoint "source_md5sum: Init" + if [ "${LIVE_SOURCE}" = "enabled" ] then # Requiring stage file diff --git a/helpers/lh_source_net b/helpers/lh_source_net index 9a3c72d..a149d5c 100755 --- a/helpers/lh_source_net +++ b/helpers/lh_source_net @@ -22,11 +22,17 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files +Read_conffile config/bootstrap +Read_conffile config/chroot Read_conffile config/common Read_conffile config/image Set_defaults +Breakpoint "source_net: Init" + if [ "${LIVE_SOURCE}" = "disabled" ] then exit 0 diff --git a/helpers/lh_source_usb b/helpers/lh_source_usb index 8f88715..bec69e0 100755 --- a/helpers/lh_source_usb +++ b/helpers/lh_source_usb @@ -22,12 +22,17 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" +Echo_debug "Init ${PROGRAM}" + # Reading configuration files -Read_conffile config/common Read_conffile config/bootstrap +Read_conffile config/chroot +Read_conffile config/common Read_conffile config/image Set_defaults +Breakpoint "source_usb: Init" + if [ "${LIVE_SOURCE}" = "disabled" ] then exit 0 diff --git a/helpers/lh_testroot b/helpers/lh_testroot index f30c655..e694529 100755 --- a/helpers/lh_testroot +++ b/helpers/lh_testroot @@ -22,7 +22,7 @@ USAGE="${PROGRAM} [--force]" Arguments "${@}" -set -e +Echo_debug "Init ${PROGRAM}" # Checking user account if [ "`id -u`" -ne "0" ] diff --git a/helpers/make-live b/helpers/make-live index bab264b..d92bebc 100755 --- a/helpers/make-live +++ b/helpers/make-live @@ -31,13 +31,13 @@ done # Set static variables PROGRAM="`basename ${0}`" DESCRIPTION="utility to build Debian Live systems" -USAGE="${PROGRAM} [config] [--apt apt|aptitude] [--apt-ftpproxy URL] [--apt-httpproxy URL] [--apt-generic enabled|disabled] [--apt-pdiffs enabled|disabled] [--apt-recommends enabled|disabled] [--apt-secure enabled|disabled] [--bootstrap cdebootstrap|deboostrap] [--cache enabled|disabled] [--debconf-frontend dialog|readline|noninteractive] [--debconf-priority low|medium|high|critical] [--genisoimage genisoimage|mkisofs] [--losetup losetup|losetup.org] [-r|--root DIRECTORY] [-a|--architecture ARCHITECTURE] [-d|--distribution testing|unstable|etch|sid] [--distribution-config DIRECTORY] [-f|--bootstrap-flavour minimal|standard] [-m|--mirror-build URL] [--mirror-build-security URL] [--mirror-image URL] [--mirror-image-security URL] [--sections SECTION|\"SECTIONS\"] [--interactive shell|x11|xnest] [-k|--kernel-flavour FLAVOUR] [--kernel-packages PACKAGES] [-l|--language LANGUAGE] [--packages PACKAGE|\"PACKAGES\"] [-p|--packages-lists LIST|\"LISTS\"] [--tasks TASK|\"TASKS\"] [--security enabled|disabled] [--symlinks enabled|disabled] [--sysvinit enabled|disabled] [--bootappend KERNEL_PARAMETER|\"KERNEL_PARAMETERS\"] [-e|--encryption ALGORITHM] [--username NAME] [--hostname NAME] [--filesystem ext2|plain|squashfs] [--memtest86 enabled|disabled] [--iso-volume STRING] [--server-address HOSTNAME|IP] [--server-path DIRECTORY] [--source enabled|disabled] [--bootloader grub|syslinux] [--grub-splash FILE] [--syslinux-splash FILE] [-b|--binary-image hdd|iso|usb|net] [-s|--source-image generic|hdd|iso|usb|net] [--includes PATH] [--templates PATH] [--debug] [--force] [--quiet] [--verbose]" +USAGE="${PROGRAM} [config] [--mode MODE] [--apt apt|aptitude] [--apt-ftpproxy URL] [--apt-httpproxy URL] [--apt-generic enabled|disabled] [--apt-pdiffs enabled|disabled] [--apt-recommends enabled|disabled] [--apt-secure enabled|disabled] [--bootstrap cdebootstrap|deboostrap] [--cache enabled|disabled] [--debconf-frontend dialog|readline|noninteractive] [--debconf-priority low|medium|high|critical] [--genisoimage genisoimage|mkisofs] [--losetup losetup|losetup.org] [-r|--root DIRECTORY] [-a|--architecture ARCHITECTURE] [-d|--distribution testing|unstable|etch|sid] [--distribution-config DIRECTORY] [-f|--bootstrap-flavour minimal|standard] [-m|--mirror-build URL] [--mirror-build-security URL] [--mirror-image URL] [--mirror-image-security URL] [--sections SECTION|\"SECTIONS\"] [--interactive shell|x11|xnest] [-k|--kernel-flavour FLAVOUR] [--kernel-packages PACKAGE|\"PACKAGES\"] [--keyring-packages PACKAGE|\"PACKAGES\"] [-l|--language LANGUAGE] [--packages PACKAGE|\"PACKAGES\"] [-p|--packages-lists LIST|\"LISTS\"] [--tasks TASK|\"TASKS\"] [--security enabled|disabled] [--symlinks enabled|disabled] [--sysvinit enabled|disabled] [--bootappend KERNEL_PARAMETER|\"KERNEL_PARAMETERS\"] [-e|--encryption ALGORITHM] [--username NAME] [--hostname NAME] [--filesystem ext2|plain|squashfs] [--memtest86 enabled|disabled] [--iso-volume STRING] [--server-address HOSTNAME|IP] [--server-path DIRECTORY] [--source enabled|disabled] [--bootloader grub|syslinux] [--grub-splash FILE] [--syslinux-splash FILE] [-b|--binary-image hdd|iso|usb|net] [-s|--source-image generic|hdd|iso|usb|net] [--includes PATH] [--templates PATH] [--breakpoints] [--debug] [--force] [--quiet] [--verbose]" HELP="Lists: gnome, gnome-core, gnome-desktop, gnome-full, gnome-junior, gnustep, kde, kde-core, kde-desktop, kde-extra, kde-full, kde-junior, mini, minimal, minimal-net, rescue, standard, standard-x11, xfce, xfce-desktop, xfce-junior" Local_arguments () { - ARGUMENTS="`getopt --longoptions apt:,apt-ftpproxy:,apt-httpproxy:,apt-generic:,apt-pdiffs:,apt-recommends:,apt-secure:,bootstrap:,cache:,debconf-frontend:,debconf-priority:,genisoimage:,losetup:,root:,architecture:,distribution:,distribution-config:,flavour:,mirror-local:,mirror-local-security:,mirror-generic:,mirror-generic-security:,sections:,interactive:,kernel:,kernel-packages:,language:,packages:,packages-lists:,tasks:,security:,symlinks:,sysvinit:,bootappend:,encryption:,username:,hostname:,filesystem:,memtest86:,iso-volume:,server-address:,server-path:,source:,bootloader:,grub-splash:,syslinux-splash:,binary-image:,binary-source:,includes:,templates:,help,usage,version,force,debug,quiet,verbose --name=${PROGRAM} --options r:a:d:f:m:k:l:p:e:b:s:huv --shell sh -- "${@}"`" + ARGUMENTS="`getopt --longoptions mode:,apt:,apt-ftpproxy:,apt-httpproxy:,apt-generic:,apt-pdiffs:,apt-recommends:,apt-secure:,bootstrap:,cache:,debconf-frontend:,debconf-priority:,genisoimage:,losetup:,root:,architecture:,distribution:,distribution-config:,flavour:,mirror-local:,mirror-local-security:,mirror-generic:,mirror-generic-security:,sections:,interactive:,kernel:,kernel-packages:,keyring-packages:,language:,packages:,packages-lists:,tasks:,security:,symlinks:,sysvinit:,bootappend:,encryption:,username:,hostname:,filesystem:,memtest86:,iso-volume:,server-address:,server-path:,source:,bootloader:,grub-splash:,syslinux-splash:,binary-image:,binary-source:,includes:,templates:,help,usage,version,force,breakpoints,debug,quiet,verbose --name=${PROGRAM} --options r:a:d:f:m:k:l:p:e:b:s:huv --shell sh -- "${@}"`" if [ "${?}" != "0" ] then @@ -56,6 +56,10 @@ Local_arguments () do case "${1}" in # common + --mode) + LH_MODE="${2}"; shift 2 + ;; + --apt) LH_APT="${2}"; shift 2 ;; @@ -163,6 +167,10 @@ Local_arguments () LIVE_KERNEL_PACKAGES="${2}"; shift 2 ;; + --keyring-packages) + LIVE_KEYRING_PACKAGS="${2}"; shift 2 + ;; + -l|--language) LIVE_LANGUAGE="${2}"; shift 2 ;; @@ -273,20 +281,24 @@ Local_arguments () Version; shift ;; + --breakpoints) + LH_BREAKPOINTS="enabled"; shift + ;; + --debug) - DEBUG="true"; shift + LH_DEBUG="enabled"; shift ;; --force) - FORCE="true"; shift + LH_FORCE="enabled"; shift ;; --quiet) - QUIET="true"; shift + LH_QUIET="enabled"; shift ;; --verbose) - VERBOSE="true"; shift + LH_VERBOSE="enabled"; shift ;; --) @@ -321,24 +333,29 @@ Main () Local_arguments "${@}" # Configuring (this is really shit!) - LH_APT="${LH_APT}" LH_APT_FTPPROXY="${LH_APT_FTPPROXY}" LH_APT_HTTPPROXY="${LH_APT_HTTPPROXY}" LH_APT_GENERIC="${LH_APT_GENERIC}" LH_APT_PDIFFS="${LH_APT_PDIFFS}" LH_APT_RECOMMENDS="${LH_APT_RECOMMENDS}" LH_APT_SECURE="${LH_APT_SECURE}" LH_BOOTSTRAP="${LH_BOOTSTRAP}" LH_CACHE="${LH_CACHE}" LH_DEBCONF_FRONTEND="${LH_DEBCONF_FRONTEND}" LH_DEBCONF_PRIORITY="${LH_DEBCONF_PRIORITY}" LH_GENISOIMAGE="${LH_GENISOIMAGE}" LIVE_ROOT="${LIVE_ROOT}" LIVE_ARCHITECTURE="${LIVE_ARCHITECTURE}" LIVE_DISTRIBUTION="${LIVE_DISTRIBUTION}" LIVE_DISTRIBUTION_CONFIG="${LIVE_DISTRIBUTION_CONFIG}" LIVE_BOOTSTRAP_FLAVOUR="${LIVE_BOOTSTRAP_FLAVOUR}" LIVE_MIRROR_BUILD="${LIVE_MIRROR_BUILD}" LIVE_MIRROR_BUILD_SECURITY="${LIVE_MIRROR_BUILD_SECURITY}" LIVE_MIRROR_IMAGE="${LIVE_MIRROR_IMAGE}" LIVE_MIRROR_IMAGE_SECURITY="${LIVE_MIRROR_IMAGE_SECURITY}" LIVE_SECTIONS="${LIVE_SECTIONS}" LIVE_INTERACTIVE="${LIVE_INTERACTIVE}" LIVE_KERNEL_FLAVOUR="${LIVE_KERNEL_FLAVOUR}" LIVE_KERNEL_PACKAGES="${LIVE_KERNEL_PACKAGES}" LIVE_LANGUAGE="${LIVE_LANGUAGE}" LIVE_PACKAGES="${LIVE_PACKAGES}" LIVE_PACKAGES_LISTS="${LIVE_PACKAGES_LISTS}" LIVE_TASKS="${LIVE_TASKS}" LIVE_SECURITY="${LIVE_SECURITY}" LIVE_SYMLINKS="${LIVE_SYMLINKS}" LIVE_SYSVINIT="${LIVE_SYSVINIT}" LIVE_BOOTAPPEND="${LIVE_BOOTAPPEND}" LIVE_ENCRYPTION="${LIVE_ENCRYPTION}" LIVE_USERNAME="${LIVE_USERNAME}" LIVE_HOSTNAME="${LIVE_HOSTNAME}" LIVE_FILESYSTEM="${LIVE_FILESYSTEM}" LIVE_MEMTEST86="${LIVE_MEMTEST86}" LIVE_ISO_VOLUME="${LIVE_ISO_VOLUME}" LIVE_SERVER_ADDRESS="${LIVE_SERVER_ADDRESS}" LIVE_SERVER_PATH="${LIVE_SERVER_PATH}" LIVE_SOURCE="${LIVE_SOURCE}" LIVE_BOOTLOADER="${LIVE_BOOTLOADER}" LIVE_GRUB_SPLASH="${LIVE_GRUB_SPLASH}" LIVE_SYSLINUX_SPLASH="${LIVE_SYSLINUX_SPLASH}" LIVE_BINARY_IMAGE="${LIVE_BINARY_IMAGE}" LIVE_SOURCE_IMAGE="${LIVE_SOURCE_IMAGE}" LIVE_INCLUDES="${LIVE_INCLUDES}" LIVE_TEMPLATES="${LIVE_TEMPLATES}" lh_config newconfig + LH_MODE="${LH_MODE}" LH_APT="${LH_APT}" LH_APT_FTPPROXY="${LH_APT_FTPPROXY}" LH_APT_HTTPPROXY="${LH_APT_HTTPPROXY}" LH_APT_GENERIC="${LH_APT_GENERIC}" LH_APT_PDIFFS="${LH_APT_PDIFFS}" LH_APT_RECOMMENDS="${LH_APT_RECOMMENDS}" LH_APT_SECURE="${LH_APT_SECURE}" LH_BOOTSTRAP="${LH_BOOTSTRAP}" LH_CACHE="${LH_CACHE}" LH_DEBCONF_FRONTEND="${LH_DEBCONF_FRONTEND}" LH_DEBCONF_PRIORITY="${LH_DEBCONF_PRIORITY}" LH_GENISOIMAGE="${LH_GENISOIMAGE}" LIVE_ROOT="${LIVE_ROOT}" LIVE_ARCHITECTURE="${LIVE_ARCHITECTURE}" LIVE_DISTRIBUTION="${LIVE_DISTRIBUTION}" LIVE_DISTRIBUTION_CONFIG="${LIVE_DISTRIBUTION_CONFIG}" LIVE_BOOTSTRAP_FLAVOUR="${LIVE_BOOTSTRAP_FLAVOUR}" LIVE_MIRROR_BUILD="${LIVE_MIRROR_BUILD}" LIVE_MIRROR_BUILD_SECURITY="${LIVE_MIRROR_BUILD_SECURITY}" LIVE_MIRROR_IMAGE="${LIVE_MIRROR_IMAGE}" LIVE_MIRROR_IMAGE_SECURITY="${LIVE_MIRROR_IMAGE_SECURITY}" LIVE_SECTIONS="${LIVE_SECTIONS}" LIVE_INTERACTIVE="${LIVE_INTERACTIVE}" LIVE_KERNEL_FLAVOUR="${LIVE_KERNEL_FLAVOUR}" LIVE_KERNEL_PACKAGES="${LIVE_KERNEL_PACKAGES}" LIVE_KEYRING_PACKAGES="${LIVE_KEYRING_PACKAGES}" LIVE_LANGUAGE="${LIVE_LANGUAGE}" LIVE_PACKAGES="${LIVE_PACKAGES}" LIVE_PACKAGES_LISTS="${LIVE_PACKAGES_LISTS}" LIVE_TASKS="${LIVE_TASKS}" LIVE_SECURITY="${LIVE_SECURITY}" LIVE_SYMLINKS="${LIVE_SYMLINKS}" LIVE_SYSVINIT="${LIVE_SYSVINIT}" LIVE_BOOTAPPEND="${LIVE_BOOTAPPEND}" LIVE_ENCRYPTION="${LIVE_ENCRYPTION}" LIVE_USERNAME="${LIVE_USERNAME}" LIVE_HOSTNAME="${LIVE_HOSTNAME}" LIVE_FILESYSTEM="${LIVE_FILESYSTEM}" LIVE_MEMTEST86="${LIVE_MEMTEST86}" LIVE_ISO_VOLUME="${LIVE_ISO_VOLUME}" LIVE_SERVER_ADDRESS="${LIVE_SERVER_ADDRESS}" LIVE_SERVER_PATH="${LIVE_SERVER_PATH}" LIVE_SOURCE="${LIVE_SOURCE}" LIVE_BOOTLOADER="${LIVE_BOOTLOADER}" LIVE_GRUB_SPLASH="${LIVE_GRUB_SPLASH}" LIVE_SYSLINUX_SPLASH="${LIVE_SYSLINUX_SPLASH}" LIVE_BINARY_IMAGE="${LIVE_BINARY_IMAGE}" LIVE_SOURCE_IMAGE="${LIVE_SOURCE_IMAGE}" LIVE_INCLUDES="${LIVE_INCLUDES}" LIVE_TEMPLATES="${LIVE_TEMPLATES}" lh_config newconfig + + if [ "${LH_BREAKPOINTS}" = "enabled" ] + then + OPTIONS="${OPTIONS} --breakpoints" + fi - if [ "${DEBUG}" = "true" ] + if [ "${LH_DEBUG}" = "enabled" ] then OPTIONS="${OPTIONS} --debug" fi - if [ "${FORCE}" = "true" ] + if [ "${LH_FORCE}" = "enabled" ] then OPTIONS="${OPTIONS} --force" fi - if [ "${QUIET}" = "true" ] + if [ "${LH_QUIET}" = "enabled" ] then OPTIONS="${OPTIONS} --quiet" fi - if [ "${VERBOSE}" = "true" ] + if [ "${LH_VERBOSE}" = "enabled" ] then OPTIONS="${OPTIONS} --verbose" fi diff --git a/manpages/lh_binary.1 b/manpages/lh_binary.1 index 05f3775..72c694a 100644 --- a/manpages/lh_binary.1 +++ b/manpages/lh_binary.1 @@ -1,4 +1,4 @@ -.TH LH_BINARY 1 "2007\-04\-02" "1.0~a4" "live\-helper" +.TH LH_BINARY 1 "2007\-04\-09" "1.0~a5" "live\-helper" .SH NAME lh_binary \- meta-helper for lh_binary_* @@ -9,9 +9,6 @@ lh_binary \- meta-helper for lh_binary_* .SH DESCRIPTION lh_binary is a meta-helper. It calls all necessary helpers to complete the binary stage. -.SH OPTIONS -lh_binary has no options (FIXME). - .SH BINARY HELPERS Here is the complete list of available binary helper commands. See their man pages for additional documentation. .IP "\fIlh_binary_chroot\fR(1)" 4 @@ -20,10 +17,10 @@ copies chroot into chroot. encrypts the root filesystem. .IP "\fIlh_binary_grub\fR(1)" 4 copies grub into the binary image. -.IP "\fIlh_binary_includes\fR(1)" 4 -copies files into the binary image. .IP "\fIlh_binary_hdd\fR(1)" 4 creates the harddisk binary tarball. +.IP "\fIlh_binary_includes\fR(1)" 4 +copies files into the binary image. .IP "\fIlh_binary_iso\fR(1)" 4 creates the CD/DVD binary image. .IP "\fIlh_binary_linuximage\fR(1)" 4 diff --git a/manpages/lh_bootstrap.1 b/manpages/lh_bootstrap.1 index 0c71e85..ff59cc0 100644 --- a/manpages/lh_bootstrap.1 +++ b/manpages/lh_bootstrap.1 @@ -1,4 +1,4 @@ -.TH LH_BOOTSTRAP 1 "2007\-04\-02" "1.0~a4" "live\-helper" +.TH LH_BOOTSTRAP 1 "2007\-04\-09" "1.0~a5" "live\-helper" .SH NAME lh_bootstrap \- meta-helper for lh_bootstrap_* @@ -9,17 +9,6 @@ lh_bootstrap \- meta-helper for lh_bootstrap_* .SH DESCRIPTION lh_bootstrap is a meta-helper. It calls all necessary helpers to complete the bootstrap stage. -.SH CONFIGURATION FILE -lh_bootstrap reads config/common if available. See ENVIRONMENT for the correct environment variables to use. - -.SH ENVIRONMENT -lh_bootstrap respects the following environment variables if available, otherwise uses default values for it. -.IP "\fI$LH_BOOTSTRAP\fR" 4 -select the bootstrap program (Default: cdebootstrap) - -.SH OPTIONS -lh_bootstrap has no options (FIXME). - .SH BOOTSTRAP HELPERS Here is the complete list of available bootstrap helper commands. See their man pages for additional documentation. .IP "\fIlh_bootstrap_cdebootstrap\fR(1)" 4 diff --git a/manpages/lh_bootstrap_cdebootstrap.1 b/manpages/lh_bootstrap_cdebootstrap.1 index dfb6621..2195a57 100644 --- a/manpages/lh_bootstrap_cdebootstrap.1 +++ b/manpages/lh_bootstrap_cdebootstrap.1 @@ -1,4 +1,4 @@ -.TH LH_BOOTSTRAP_CDEBOOTSTRAP 1 "2007\-04\-02" "1.0~a4" "live\-helper" +.TH LH_BOOTSTRAP_CDEBOOTSTRAP 1 "2007\-04\-09" "1.0~a5" "live\-helper" .SH NAME lh_bootstrap_cdebootstrap \- bootstrap a Debian system with \fIcdebootstrap\fR(1) @@ -14,23 +14,21 @@ lh_bootstrap_cdebootstrap reads config/common and config/bootstrap if available. .SH ENVIRONMENT lh_bootstrap_cdebootstrap respects the following environment variables if available, otherwise uses default values for it. +.IP "\fI$LH_BOOTSTRAP\fR" 4 +control the bootstrap program to be used (Default: cdebootstrap) .IP "\fI$LH_CACHE\fR" 4 control if downloaded packages should be cached (Default: enabled) -.IP "\fI$LH_ROOT\fR" 4 -set the root directory (Default: debian-live) +.PP .IP "\fI$LIVE_ARCHITECTURE\fR" 4 select the chroot architecture (Default: autodetected) -.IP "\fI$LIVE_DISTRIBUTION\fR" 4 -select the distribution to use (Default: sid) -.IP "\fI$LIVE_DISTRIBUTION_CONFIG\fR" 4 +.IP "\fI$LIVE_BOOTSTRAP_CONFIG\fR" 4 set distribution config directory (Default: empty) -.IP "\fI$LIVE_FLAVOUR\fR" 4 +.IP "\fI$LIVE_BOOTSTRAP_FLAVOUR\fR" 4 select the flavour to use (Default: standard) -.IP "\fI$LIVE_MIRROR_LOCAL\fR" 4 -set the local mirror to use (Default: http://ftp.debian.org/debian/) - -.SH OPTIONS -lh_bootstrap_cdebootstrap has no options (FIXME). +.IP "\fI$LIVE_DISTRIBUTION\fR" 4 +select the distribution to use (Default: sid) +.IP "\fI$LIVE_MIRROR_BUILD\fR" 4 +set the mirror to use (Default: http://ftp.debian.org/debian/) .SH SEE ALSO \fIcdebootstrap\fR(1) diff --git a/manpages/lh_bootstrap_debootstrap.1 b/manpages/lh_bootstrap_debootstrap.1 index a24dac3..0220278 100644 --- a/manpages/lh_bootstrap_debootstrap.1 +++ b/manpages/lh_bootstrap_debootstrap.1 @@ -1,4 +1,4 @@ -.TH LH_BOOTSTRAP_DEBOOTSTRAP 1 "2007\-04\-02" "1.0~a4" "live\-helper" +.TH LH_BOOTSTRAP_DEBOOTSTRAP 1 "2007\-04\-09" "1.0~a5" "live\-helper" .SH NAME lh_bootstrap_debootstrap \- bootstrap a Debian system with \fIdebootstrap\fR(8) @@ -14,23 +14,21 @@ lh_bootstrap_debootstrap reads config/common and config/bootstrap if available. .SH ENVIRONMENT lh_bootstrap_debootstrap respects the following environment variables if available, otherwise uses default values for it. +.IP "\fI$LH_BOOTSTRAP\fR" 4 +control the bootstrap program to be used (Default: cdebootstrap) .IP "\fI$LH_CACHE\fR" 4 control if downloaded packages should be cached (Default: enabled) -.IP "\fI$LH_ROOT\fR" 4 -set the root directory (Default: debian-live) +.PP .IP "\fI$LIVE_ARCHITECTURE\fR" 4 select the chroot architecture (Default: autodetected) -.IP "\fI$LIVE_DISTRIBUTION\fR" 4 -select the distribution to use (Default: sid) -.IP "\fI$LIVE_DISTRIBUTION_CONFIG\fR" 4 +.IP "\fI$LIVE_BOOTSTRAP_CONFIG\fR" 4 set distribution config directory (Default: empty) -.IP "\fI$LIVE_FLAVOUR\fR" 4 +.IP "\fI$LIVE_BOOTSTRAP_FLAVOUR\fR" 4 select the flavour to use (Default: standard) -.IP "\fI$LIVE_MIRROR_LOCAL\fR" 4 -set the local mirror to use (Default: http://ftp.debian.org/debian/) - -.SH OPTIONS -lh_bootstrap_debootstrap has no options (FIXME). +.IP "\fI$LIVE_DISTRIBUTION\fR" 4 +select the distribution to use (Default: sid) +.IP "\fI$LIVE_MIRROR_BUILD\fR" 4 +set the mirror to use (Default: http://ftp.debian.org/debian/) .SH SEE ALSO \fIdebootstrap\fR(8) diff --git a/manpages/lh_chroot.1 b/manpages/lh_chroot.1 index 3e8413c..9cb6854 100644 --- a/manpages/lh_chroot.1 +++ b/manpages/lh_chroot.1 @@ -1,4 +1,4 @@ -.TH LH_CHROOT 1 "2007\-04\-02" "1.0~a4" "live\-helper" +.TH LH_CHROOT 1 "2007\-04\-09" "1.0~a5" "live\-helper" .SH NAME lh_chroot \- meta-helper for lh_chroot_* @@ -9,9 +9,6 @@ lh_chroot \- meta-helper for lh_chroot_* .SH DESCRIPTION lh_chroot is a meta-helper. It calls all necessary helpers to complete the chroot stage. -.SH OPTIONS -lh_chroot has no options (FIXME). - .SH CHROOT HELPERS Here is the complete list of available chroot helper commands. See their man pages for additional documentation. .IP "\fIlh_chroot_apt\fR(1)" 4 diff --git a/manpages/lh_clean.1 b/manpages/lh_clean.1 index 1c56824..18722b3 100644 --- a/manpages/lh_clean.1 +++ b/manpages/lh_clean.1 @@ -1,4 +1,4 @@ -.TH LH_CLEAN 1 "2007\-04\-02" "1.0~a4" "live\-helper" +.TH LH_CLEAN 1 "2007\-04\-09" "1.0~a5" "live\-helper" .SH NAME lh_clean \- clean up system build directories @@ -11,7 +11,23 @@ lh_clean \- clean up system build directories lh_clean is a live\-helper program that is responsible for cleaning up after a system is built. It removes the system build directories, and removes some other files including stage files, and any detritus left behind by other live\-helper commands. .SH OPTIONS -lh_clean has no options (FIXME). +The following command line options are supported by lh_clean. +.IP "\fBall\fR" 4 +removes chroot, binary, lock, stage, and source. This is the default operation. +.IP "\fBcache\fR" 4 +removes all cache directories. +.IP "\fBchroot\fR" 4 +unmounts and removes the chroot directory. If bootstrap cache is available, the system is reset to bootstrap stage. +.IP "\fBbinary\fR" 4 +removes all binary related caches, directories, and stages files. +.IP "\fBlock\fR" 4 +removes all lock files. +.IP "\fBpurge\fR" 4 +removes everything (including cache) but config. +.IP "\fBstage\fR" 4 +removes all stage files. +.IP "\fBsource\fR" 4 +removes all source related caches, directories, and stage files. .SH SEE ALSO \fIlive\-helper\fR(7) diff --git a/manpages/lh_testroot.1 b/manpages/lh_testroot.1 index 3c7963b..f924a06 100644 --- a/manpages/lh_testroot.1 +++ b/manpages/lh_testroot.1 @@ -1,4 +1,4 @@ -.TH LH_TESTROOT 1 "2007\-04\-02" "1.0~a4" "live\-helper" +.TH LH_TESTROOT 1 "2007\-04\-09" "1.0~a5" "live\-helper" .SH NAME lh_testroot \- ensure that a system is built as root @@ -9,9 +9,6 @@ lh_testroot \- ensure that a system is built as root .SH DESCRIPTION lh_testroot simply checks to see if you are root. If not, it exits with an error. Debian Live images must currently be built as real root, \fIfakeroot\fR(1) or \fIsudo\fR(8) does not work. -.SH OPTIONS -lh_testroot has no options (FIXME). - .SH SEE ALSO \fIlive\-helper\fR(7) .PP diff --git a/manpages/live-helper.7 b/manpages/live-helper.7 index a80aefd..0046e01 100644 --- a/manpages/live-helper.7 +++ b/manpages/live-helper.7 @@ -1,4 +1,4 @@ -.TH LIVE\-HELPER 7 "2007\-04\-02" "1.0~a4" "live\-helper" +.TH LIVE\-HELPER 7 "2007\-04\-09" "1.0~a5" "live\-helper" .SH NAME live\-helper \- Debian Live helper programs @@ -31,10 +31,12 @@ meta-helper for lh_binary_*. copies chroot into chroot. .IP "\fIlh_binary_encryption\fR(1)" 4 encrypts the root filesystem. -.IP "\fIlh_binary_includes\fR(1)" 4 -copies files into the binary image. +.IP "\fIlh_binary_grub\fR(1)" 4 +copies grub into the binary image. .IP "\fIlh_binary_hdd\fR(1)" 4 creates the harddisk binary tarball. +.IP "\fIlh_binary_includes\fR(1)" 4 +copies files into the binary image. .IP "\fIlh_binary_iso\fR(1)" 4 creates the CD/DVD binary image. .IP "\fIlh_binary_linuximage\fR(1)" 4 @@ -75,6 +77,8 @@ does evil (temporary) hacks in the chroot. executes additional commands in the chroot. .IP "\fIlh_chroot_hosts\fR(1)" 4 configures /etc/hosts in the chroot. +.IP "\fIlh_chroot_interactive\fR(1)" 4 +makes build interactive. .IP "\fIlh_chroot_linuximage\fR(1)" 4 configures /etc/kernel-img.conf in the chroot. .IP "\fIlh_chroot_localhooks\fR(1)" 4 @@ -134,12 +138,24 @@ checks for root privileges. .SH LIVE\-HELPER OPTIONS The following command line options are supported by all live\-helper programs. +.IP "\fB\-\-breakpoints\fR" 4 +run with breakpoints +.IP "\fB\-\-conffile\fR" 4 +use custom configuration file +.IP "\fB\-\-debug\fR" 4 +show debug information .IP "\fB\-\-force\fR" 4 force helper execution, even if stage file exists. .IP "\fB\-h, \-\-help\fR" 4 display help and exit +.IP "\fB\-\-logfile\fR" 4 +use custom log file +.IP "\fB\-\-quiet\fR" 4 +be quiet .IP "\fB\-u, \-\-usage\fR" 4 show usage and exit +.IP "\fB\-\-verbose\fR" 4 +be verbose .IP "\fB\-v, \-\-version\fR" 4 output version information and exit -- cgit v1.0