diff options
author | Daniel Baumann <daniel@debian.org> | 2012-08-27 15:59:56 +0200 |
---|---|---|
committer | Daniel Baumann <daniel@debian.org> | 2012-08-27 16:05:49 +0200 |
commit | a0a5bbfd1c9b6fc58d1b102ee56fb7d3b8b7bfcf (patch) | |
tree | 584a8f8174bdcbafddb6652e469c5ae5381ce3da /scripts/build/lb_chroot_hacks | |
parent | d6e45a34376c9c80d1488ad4f3c9c1f85bedb338 (diff) | |
download | vyos-live-build-a0a5bbfd1c9b6fc58d1b102ee56fb7d3b8b7bfcf.tar.gz vyos-live-build-a0a5bbfd1c9b6fc58d1b102ee56fb7d3b8b7bfcf.zip |
Dropping lb prefix from live-build scripts, not needed anymore.
Previously, we needed to keep the lb_* prefix as the scripts
could also be executed standalone. Since the lb wrapper is
mandatory since squeeze, we can drop this now.
Diffstat (limited to 'scripts/build/lb_chroot_hacks')
-rwxr-xr-x | scripts/build/lb_chroot_hacks | 309 |
1 files changed, 0 insertions, 309 deletions
diff --git a/scripts/build/lb_chroot_hacks b/scripts/build/lb_chroot_hacks deleted file mode 100755 index f0e885b08..000000000 --- a/scripts/build/lb_chroot_hacks +++ /dev/null @@ -1,309 +0,0 @@ -#!/bin/sh - -## live-build(7) - System Build Scripts -## Copyright (C) 2006-2012 Daniel Baumann <daniel@debian.org> -## -## This program 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 - -# Including common functions -[ -e "${LIVE_BUILD}/scripts/build.sh" ] && . "${LIVE_BUILD}/scripts/build.sh" || . /usr/lib/live/build.sh - -# Setting static variables -DESCRIPTION="$(Echo 'execute hacks in chroot')" -HELP="" -USAGE="${PROGRAM} [--force]" - -Arguments "${@}" - -# Reading configuration files -Read_conffiles config/all config/common config/bootstrap config/chroot config/binary config/source -Set_defaults - -Echo_message "Begin executing hacks..." - -# Requiring stage file -Require_stagefile .build/config .build/bootstrap - -# Checking stage file -Check_stagefile .build/chroot_hacks - -# Checking lock file -Check_lockfile .lock - -# Creating lock file -Create_lockfile .lock - -case "${LB_PARENT_DISTRIBUTION}" in - squeeze) - if echo "${LB_TASKS}" | grep -qs lxde || - echo "${LB_TASKS}" | grep -qs xfce - then - GDM="gdm" - else - GDM="gdm3" - fi - ;; - - *) - GDM="gdm3" - ;; -esac - -# Handling default desktop configuration -case "${LB_MODE}" in - debian*) - # disable kexec-tools - if [ -e chroot/sbin/kexec ] - then - echo "kexec-tools kexec-tools/load_kexec boolean false" > chroot/root/preseed - Chroot chroot "debconf-set-selections /root/preseed" - rm -f chroot/root/preseed - Chroot chroot "dpkg-reconfigure kexec-tools" - fi - ;; -esac - -for TASK in ${LB_TASKS} -do - case "${TASK}" in - gnome-desktop) - # gnome is the only desktop environment in this image - if [ -z "$(echo ${LB_TASKS} | sed -e 's|gnome-desktop||' -e 's| desktop ||' | grep desktop)" ] - then - # set display manager - echo "${GDM} shared/default-x-display-manager select ${GDM}" > chroot/root/preseed - Chroot chroot "debconf-set-selections /root/preseed" - rm -f chroot/root/preseed - Chroot chroot "dpkg-reconfigure ${GDM}" - echo "/usr/bin/${GDM}" > chroot/etc/X11/default-display-manager - - # set session manager - Chroot chroot "update-alternatives --set x-session-manager /usr/bin/gnome-session" - fi - ;; - - kde-desktop) - # kde is the only desktop-environment in this image - if [ -z "$(echo ${LB_TASKS} | sed -e 's|kde-desktop||' -e 's| desktop ||' | grep desktop)" ] - then - # set display manager - echo "kdm shared/default-x-display-manager select kdm" > chroot/root/preseed - Chroot chroot "debconf-set-selections /root/preseed" - rm -f chroot/root/preseed - Chroot chroot "dpkg-reconfigure kdm" - echo "/usr/bin/kdm" > chroot/etc/X11/default-display-manager - - # set session manager - Chroot chroot "update-alternatives --set x-session-manager /usr/bin/startkde" - - # get rid of resolvconf - Chroot chroot "dpkg -P resolvconf" - fi - ;; - - lxde-desktop) - # lxde is the only desktop environment in this image - if [ -z "$(echo ${LB_TASKS} | sed -e 's|lxde-desktop||' -e 's| desktop ||' | grep desktop)" ] - then - # set display manager - echo "${GDM} shared/default-x-display-manager select ${GDM}" > chroot/root/preseed - Chroot chroot "debconf-set-selections /root/preseed" - rm -f chroot/root/preseed - Chroot chroot "dpkg-reconfigure ${GDM}" - echo "/usr/bin/${GDM}" > chroot/etc/X11/default-display-manager - - # set session manager - Chroot chroot "update-alternatives --set x-session-manager /usr/bin/startlxde" - fi - ;; - - xfce-desktop) - # xfce is the only desktop environment in this image - if [ -z "$(echo ${LB_TASKS} | sed -e 's|xfce-desktop||' -e 's| desktop ||' | grep desktop)" ] - then - # set display manager - echo "${GDM} shared/default-x-display-manager select ${GDM}" > chroot/root/preseed - Chroot chroot "debconf-set-selections /root/preseed" - rm -f chroot/root/preseed - Chroot chroot "dpkg-reconfigure ${GDM}" - echo "/usr/bin/${GDM}" > chroot/etc/X11/default-display-manager - - # set session manager - Chroot chroot "update-alternatives --set x-session-manager /usr/bin/xfce4-session" - fi - ;; - esac -done - -case "${LB_BINARY_IMAGES}" in - netboot) - if [ ! -f chroot/sbin/mount.cifs ] - then - Apt chroot install cifs-utils - fi - - if [ ! -d chroot/etc/initramfs-tools ] - then - mkdir chroot/etc/initramfs-tools - fi - - # Configuring initramfs for NFS - if ! grep -qs "BOOT=nfs" chroot/etc/initramfs-tools/initramfs.conf - then - echo "BOOT=nfs" >> chroot/etc/initramfs-tools/initramfs.conf - fi - - if ! grep -qs "NFSROOT=auto" chroot/etc/initramfs-tools/initramfs.conf - then - echo "NFSROOT=auto" >> chroot/etc/initramfs-tools/initramfs.conf - fi - ;; -esac - -# Update initramfs (always, because of udev rules in initrd) -case "${LB_INITRAMFS}" in - casper) - UPDATE_INITRAMFS_OPTIONS="CASPER_GENERATE_UUID=1" - ;; - - live-boot) - #UPDATE_INITRAMFS_OPTIONS="LIVE_GENERATE_UUID=1" - ;; -esac - -if [ "${LB_INITRAMFS}" != "none" ] -then - Chroot chroot "${UPDATE_INITRAMFS_OPTIONS} update-initramfs -k all -t -u" -fi - -# We probably ought to use COMPRESS= in a temporary file in -# /etc/initramfs-tools/conf.d/ instead, but it's hard to pass options that -# way. -case "${LB_INITRAMFS_COMPRESSION}" in - gzip) - ;; - - bzip2) - for INITRAMFS in $(find chroot/boot -name 'initrd*'); do - zcat "${INITRAMFS}" | bzip2 -c ${BZIP2_OPTIONS} > "${INITRAMFS}.new" - mv "${INITRAMFS}.new" "${INITRAMFS}" - done - ;; - - lzma) - # We probably ought to use COMPRESS= in a temporary file in - # /etc/initramfs-tools/conf.d/ instead, but it's hard to - # pass options that way. - for INITRAMFS in $(find chroot/boot -name 'initrd*'); do - zcat "${INITRAMFS}" | lzma -c ${LZMA_OPTIONS} > "${INITRAMFS}.new" - mv "${INITRAMFS}.new" "${INITRAMFS}" - done - ;; -esac - -# Ensure readable permissions on initramfs. loop-aes-utils sets umask to -# protect GPG keys, which live-build does not support. -# Note: Use find rather than chmod on the wildcard, one never knows what -# people might do in local hooks, and there might be no initrds at all. -find chroot/boot -name 'initrd*' -print0 | xargs -r -0 chmod go+r - -# Remove build systems clock drift -echo "0.0 0 0.0" > chroot/etc/adjtime - -# Remove cruft -rm -f chroot/boot/initrd*bak* -rm -f chroot/etc/apt/trusted.gpg~ -rm -f chroot/etc/group- chroot/etc/passwd- -rm -f chroot/etc/gshadow- chroot/etc/shadow- -rm -f chroot/var/cache/debconf/*-old -rm -f chroot/var/lib/dpkg/*-old -rm -f chroot/var/log/apt/term.log - -# Delete and re-create temporary directories -TEMP_DIRS="/tmp /var/tmp" -for DIR in ${TEMP_DIRS} -do - rm -rf "chroot/${DIR}" - install -d -m 1777 "chroot/${DIR}" -done - -if [ -n "${LB_ROOT_COMMAND}" ] -then - ${LB_ROOT_COMMAND} chown -R --quiet $(whoami):$(whoami) chroot -fi - -case "${LB_INITRAMFS}" in - casper) - ID="999" - ;; - - live-boot) - ID="1000" - ;; - - *) - ID="" - ;; -esac - -if [ "${LB_DEBIAN_INSTALLER}" = "live" ] -then - # This is a temporary hack to get rid of fstab; - # needs cleanup in live-boot first to proper fix. - rm -f chroot/etc/fstab - touch chroot/etc/fstab -fi - -if [ "${LB_EXPOSED_ROOT}" = "true" ] -then - # Make sure RW dirs exist so that the initramfs script has - # a directory in which to bind the tmpfs filesystems - COW_DIRECTORIES="/home /live /tmp /var/lib/live /var/lock /var/log /var/run /var/tmp /var/spool" - - for DIRECTORY in ${COW_DIRECTORIES} - do - mkdir -p chroot/"${DIRECTORY}" - done - - # Config files which need to be RW - COW_FILES="/etc/adjtime /etc/fstab /etc/hostname /etc/hosts /etc/live.conf /etc/network/interfaces /etc/resolv.conf /etc/udev/rules.d/*persistent-net.rules /etc/udev/rules.d/*persistent-cd.rules /etc/X11/xorg.conf" - - # Where we will store RW config files - RW_DIRECTORY="/var/lib/live" - - for FILE in ${COW_FILES} - do - DIRECTORY="$(dirname ${FILE})" - FILE="$(basename ${FILE})" - RELATIVE_PATH="$(echo ${DIRECTORY} | sed 's|[^/]\+|..|g; s|^/||g')" - - # Touch files in case they don't yet exist - mkdir -p chroot/${DIRECTORY} - touch chroot/${DIRECTORY}/${FILE} - - # Move files to the read-write directory - mkdir -p chroot/${RW_DIRECTORY}/${DIRECTORY} - mv chroot/${DIRECTORY}/${FILE} chroot/${RW_DIRECTORY}/${DIRECTORY} - - # Create a symbolic link to RW config file - ln -s ${RELATIVE_PATH}/${RW_DIRECTORY}/${DIRECTORY}/${FILE} chroot/${DIRECTORY}/${FILE} - done - - # Mount doesn't write to a symlink so use /proc/mounts instead, - # see debian bug #154438 for more info - rm -f chroot/etc/mtab - ln -s /proc/mounts chroot/etc/mtab -fi - -if [ "${LB_SWAP_FILE_PATH}" ]; then - dd if=/dev/zero of="chroot/${LB_SWAP_FILE_PATH}" bs=1024k count="${LB_SWAP_FILE_SIZE}" - mkswap "chroot/${LB_SWAP_FILE_PATH}" -fi - -# Creating stage file -Create_stagefile .build/chroot_hacks |