summaryrefslogtreecommitdiff
path: root/helpers/lh_binary_live-installer
diff options
context:
space:
mode:
authorDaniel Baumann <daniel@debian.org>2007-09-23 10:05:12 +0200
committerDaniel Baumann <daniel@debian.org>2011-03-09 18:22:25 +0100
commitfdef63e60c2e68226da2fe92d6cc393c1af2b801 (patch)
treea066f2620ba741d786b628d1f9d56bcf38cbd8ea /helpers/lh_binary_live-installer
parent504c05c3a63de0af4fd0e876274afc039c5c0ed1 (diff)
downloadlive-build-fdef63e60c2e68226da2fe92d6cc393c1af2b801.zip
live-build-fdef63e60c2e68226da2fe92d6cc393c1af2b801.tar.gz
Adding live-helper 1.0~a16-1.
Diffstat (limited to 'helpers/lh_binary_live-installer')
-rwxr-xr-xhelpers/lh_binary_live-installer333
1 files changed, 0 insertions, 333 deletions
diff --git a/helpers/lh_binary_live-installer b/helpers/lh_binary_live-installer
deleted file mode 100755
index 8517ceb..0000000
--- a/helpers/lh_binary_live-installer
+++ /dev/null
@@ -1,333 +0,0 @@
-#!/bin/sh
-
-# lh_binary_live-installer(1) - install live-installer into binary
-# Copyright (C) 2006-2007 Daniel Baumann <daniel@debian.org>
-#
-# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
-# This is free software, and you are welcome to redistribute it
-# under certain conditions; see COPYING for details.
-
-set -e
-
-# Including common functions
-LH_BASE="${LH_BASE:-/usr/share/live-helper}"
-
-for FUNCTION in "${LH_BASE}"/functions/*.sh
-do
- . "${FUNCTION}"
-done
-
-# Setting static variables
-DESCRIPTION="install live-installer into binary"
-HELP=""
-USAGE="${PROGRAM} [--force]"
-
-Arguments "${@}"
-
-# Reading configuration files
-Read_conffile config/common
-Read_conffile config/bootstrap
-Read_conffile config/chroot
-Read_conffile config/binary
-Read_conffile config/source
-Set_defaults
-
-if [ "${LIVE_LIVE_INSTALLER}" != "enabled" ]
-then
- exit 0
-fi
-
-Echo_message "Begin installing live-installer..."
-
-# Requiring stage file
-Require_stagefile .stage/bootstrap
-
-# Checking stage file
-Check_stagefile .stage/binary_live-installer
-
-# Checking lock file
-Check_lockfile .lock
-
-# Creating lock file
-Create_lockfile .lock
-
-# Setting destination directory
-case "${LIVE_BINARY_IMAGES}" in
- iso)
- DESTDIR="binary/install"
- DI="cdrom"
- ;;
-
- net)
- DESTDIR="tftpboot"
- DI="netboot"
-
- Echo_error "Not supported yet (FIXME)"
- exit 1
- ;;
-
- tar|usb-hdd)
- DESTDIR="binary/install"
- DI="hd-media"
-
- # Workaround for syslinux (<< 3.36) which doesn't support long file/path names
- if [ "${LIVE_DISTRIBUTION}" = "etch" ] && [ "${LIVE_BOOTLOADER}" = "syslinux" ]
- then
- DESTDIR="binary"
- fi
- ;;
-esac
-
-# Temporary check for broken syslinux
-if [ "${LIVE_BINARY_IMAGES}" = "iso" ]
-then
- # Assemble multi-arch
- if [ -n "${MULTIARCH}" ]
- then
- case "${LIVE_ARCHITECTURE}" in
- amd64)
- DESTDIR="${DESTDIR}.amd"
- ;;
-
- i386)
- DESTDIR="${DESTDIR}.386"
- ;;
-
- powerpc)
- DESTDIR="${DESTDIR}.ppc"
- ;;
- esac
- fi
-fi
-
-VMLINUZ_DI="vmlinuz"
-INITRD_DI="initrd.gz"
-DESTDIR_DI="${DESTDIR}"
-
-VMLINUZ_GI="gtk/vmlinuz"
-INITRD_GI="gtk/initrd.gz"
-DESTDIR_GI="${DESTDIR}/gtk"
-
-# Workaround for syslinux (<< 3.36) which doesn't support long file/path names
-if [ "${LIVE_DISTRIBUTION}" = "etch" ]
-then
- if [ "${LIVE_BINARY_IMAGES}" = "tar" ] || [ "${LIVE_BINARY_IMAGES}" = "usb-hdd" ]
- then
- VMLINUZ_DI="vmlinuz.di"
- INITRD_DI="initrddi.gz"
- DESTDIR_DI="${DESTDIR}"
-
- VMLINUZ_GI="vmlinuz.gi"
- INITRD_GI="initrdgi.gz"
- DESTDIR_GI="${DESTDIR}"
- fi
-fi
-
-# Downloading debian-installer
-mkdir -p "${DESTDIR_DI}"
-wget --no-clobber -O "${DESTDIR}"/"${VMLINUZ_DI}" "${LIVE_MIRROR_BOOTSTRAP}"/dists/"${LIVE_DISTRIBUTION}"/main/installer-"${LIVE_ARCHITECTURE}"/current/images/"${DI}"/vmlinuz
-wget --no-clobber -O "${DESTDIR}"/"${INITRD_DI}" "${LIVE_MIRROR_BOOTSTRAP}"/dists/"${LIVE_DISTRIBUTION}"/main/installer-"${LIVE_ARCHITECTURE}"/current/images/"${DI}"/initrd.gz
-
-# Downloading graphical-installer
-if [ "${LIVE_ARCHITECTURE}" = "amd64" ] || [ "${LIVE_ARCHITECTURE}" = "i386" ] || [ "${LIVE_ARCHITECTURE}" = "powerpc" ]
-then
- mkdir -p "${DESTDIR_GI}"
- wget --no-clobber -O "${DESTDIR}"/"${VMLINUZ_GI}" "${LIVE_MIRROR_BOOTSTRAP}"/dists/"${LIVE_DISTRIBUTION}"/main/installer-"${LIVE_ARCHITECTURE}"/current/images/"${DI}"/gtk/vmlinuz
- wget --no-clobber -O "${DESTDIR}"/"${INITRD_GI}" "${LIVE_MIRROR_BOOTSTRAP}"/dists/"${LIVE_DISTRIBUTION}"/main/installer-"${LIVE_ARCHITECTURE}"/current/images/"${DI}"/gtk/initrd.gz
-fi
-
-# Downloading additional packages
-mkdir -p chroot/binary.deb/archives/partial
-mv chroot/var/lib/dpkg/status chroot/var/lib/dpkg/status.tmp
-touch chroot/var/lib/dpkg/status
-
-case "${LIVE_ARCHITECTURE}" in
- amd64)
- DI_PACKAGES="linux-image-2.6-amd64 lilo grub"
- ;;
-
- i386)
- DI_PACKAGES="linux-image-2.6-486 linux-image-2.6-686 lilo grub"
- ;;
-
- powerpc)
- DI_PACKAGES="linux-image-2.6-powerpc linux-image-2.6-powerpc64 linux-image-2.6-powerpc-smp linux-image-2.6-prep yaboot" # FIXME bootloader?
- ;;
-esac
-
-Chroot "apt-get -o Dir::Cache=/binary.deb --download-only install --yes ${DI_PACKAGES}"
-mv chroot/binary.deb ./
-mv chroot/var/lib/dpkg/status.tmp chroot/var/lib/dpkg/status
-
-# Including base debian packages
-if [ -d cache/packages_bootstrap ]
-then
- for FILE in cache/packages_bootstrap/*.deb binary.deb/archives/*.deb
- do
- SOURCE="`dpkg -f ${FILE} Source | awk '{ print $1 }'`"
-
- if [ -z "${SOURCE}" ]
- then
- SOURCE="`basename ${FILE} | awk -F_ '{ print $1 }'`"
- fi
-
- case "${SOURCE}" in
- lib?*)
- LETTER="`echo ${SOURCE} | sed 's/\(....\).*/\1/'`"
- ;;
-
- *)
- LETTER="`echo ${SOURCE} | sed 's/\(.\).*/\1/'`"
- ;;
- esac
-
- # Install directory
- mkdir -p binary/pool/main/"${LETTER}"/"${SOURCE}"
-
- # Move files
- cp "${FILE}" binary/pool/main/"${LETTER}"/"${SOURCE}"
- done
-fi
-
-# Generating deb indices
-mkdir -p binary/dists/${LIVE_DISTRIBUTION}/main/binary-${LIVE_ARCHITECTURE}
-
-cd binary
-apt-ftparchive packages pool/main > dists/${LIVE_DISTRIBUTION}/main/binary-${LIVE_ARCHITECTURE}/Packages
-gzip -9 -c dists/${LIVE_DISTRIBUTION}/main/binary-${LIVE_ARCHITECTURE}/Packages > dists/${LIVE_DISTRIBUTION}/main/binary-${LIVE_ARCHITECTURE}/Packages.gz
-#apt-ftparchive sources pool/main > dists/${LIVE_DISTRIBUTION}/main/source/Sources
-#gzip -9 -c dists/${LIVE_DISTRIBUTION}/main/source/Sources > dists/${LIVE_DISTRIBUTION}/main/source/Sources
-cd "${OLDPWD}"
-
-# Fetching release
-wget http://"${LIVE_MIRROR_BOOTSTRAP}"/dists/"${LIVE_DISTRIBUTION}"/main/binary-"${LIVE_ARCHITECTURE}"/Release -O binary/dists/${LIVE_DISTRIBUTION}/main/binary-${LIVE_ARCHITECTURE}/Release
-
-#cat > binary/dists/${LIVE_DISTRIBUTION}/main/source/Release << EOF
-#Archive: stable
-#Version: 4.0r0
-#Component: main
-#Origin: Debian
-#Label: Debian
-#Architecture: source
-#EOF
-
-mkdir binary.udeb
-cd binary.udeb
-
-# Downloading udeb indices
-wget "${LIVE_MIRROR_BOOTSTRAP}"/dists/"${LIVE_DISTRIBUTION}"/main/debian-installer/binary-"${LIVE_ARCHITECTURE}"/Packages.gz
-gunzip -c Packages.gz > Packages
-
-# Sorting udebs
-UDEBS="`awk '/Filename: / { print $2 }' Packages`"
-
-# Downloading udebs
-for UDEB in ${UDEBS}
-do
- wget "${LIVE_MIRROR_BOOTSTRAP}"/${UDEB}
-done
-
-# Including local udebs
-if ls ../config/binary_local-udebs/* &> /dev/null
-then
- for FILE in ../config/binary_local-udebs/*.udeb
- do
- SOURCE="`dpkg -f ${FILE} Source | awk '{ print $1 }'`"
-
- if [ -z "${SOURCE}" ]
- then
- SOURCE="`basename ${FILE} | awk -F_ '{ print $1 }'`"
- fi
-
- case "${SOURCE}" in
- lib?*)
- LETTER="`echo ${SOURCE} | sed 's/\(....\).*/\1/'`"
- ;;
-
- *)
- LETTER="`echo ${SOURCE} | sed 's/\(.\).*/\1/'`"
- ;;
- esac
-
- # Install directory
- mkdir -p pool/main/"${LETTER}"/"${SOURCE}"
-
- # Copy files
- cp "${FILE}" pool/main/"${LETTER}"/"${SOURCE}"
-
- # Prefere local udebs over downloaded udebs
- rm -f "`basename ${FILE} | awk -F_ '{ print $1 }'`"_*.udeb
- done
-fi
-
-# Excluding udebs
-grep -v "^#" ${LH_BASE:-/usr/share/live-helper}/data/debian-cd/"${LIVE_DISTRIBUTION}"/udeb_exclude > exclude
-grep -v "^#" ${LH_BASE:-/usr/share/live-helper}/data/debian-cd/"${LIVE_DISTRIBUTION}"/exclude-udebs > exclude
-grep -v "^#" ${LH_BASE:-/usr/share/live-helper}/data/debian-cd/"${LIVE_DISTRIBUTION}"/exclude-udebs-${LIVE_ARCHITECTURE} >> exclude
-
-for EXCLUDE in `cat exclude`
-do
- rm -f "${EXCLUDE}"_*.udeb
-done
-
-# Moving udebs
-for UDEB in ${UDEBS}
-do
- if [ -f "`basename ${UDEB}`" ]
- then
- mkdir -p `dirname ${UDEB}`
- mv "`basename ${UDEB}`" "`dirname ${UDEB}`"
- fi
-done
-
-# Creating udeb indices
-mkdir -p dists/"${LIVE_DISTRIBUTION}"/main/debian-installer/binary-"${LIVE_ARCHITECTURE}"
-apt-ftparchive packages pool/main > dists/"${LIVE_DISTRIBUTION}"/main/debian-installer/binary-"${LIVE_ARCHITECTURE}"/Packages
-gzip -9 -c dists/${LIVE_DISTRIBUTION}/main/debian-installer/binary-${LIVE_ARCHITECTURE}/Packages > dists/${LIVE_DISTRIBUTION}/main/debian-installer/binary-${LIVE_ARCHITECTURE}/Packages.gz
-
-rm -f Packages* exclude
-find . | cpio -dmpu "${OLDPWD}"/binary
-cd "${OLDPWD}"
-
-rm -rf binary.udeb
-rm -rf binary.deb
-
-# Generating release file
-apt-ftparchive \
- -o APT::FTPArchive::Release::Origin="Debian" \
- -o APT::FTPArchive::Release::Label="Debian" \
- -o APT::FTPArchive::Release::Suite="${LIVE_DISTRIBUTION}" \
- -o APT::FTPArchive::Release::Version="4.0" \
- -o APT::FTPArchive::Release::Codename="${LIVE_DISTRIBUTION}" \
- -o APT::FTPArchive::Release::Date="`date -R`" \
- -o APT::FTPArchive::Release::Architectures="${LIVE_ARCHITECTURE}" \
- -o APT::FTPArchive::Release::Components="main" \
- -o APT::FTPArchive::Release::Description="Last updated: `date -R`" \
-release binary/dists/${LIVE_DISTRIBUTION} > binary/dists/${LIVE_DISTRIBUTION}/Release
-
-# Creating dist symlinks
-for DISTRIBUTION in frozen stable testing unstable
-do
- ln -s ${LIVE_DISTRIBUTION} binary/dists/${DISTRIBUTION}
-done
-
-ln -s . binary/debian
-
-# Creating disk info
-mkdir binary/.disk
-echo "main" > binary/.disk/base_components
-touch binary/.disk/base_installable
-echo "not_complete" > binary/.disk/cd_type
-echo "Debian GNU/Linux ${LIVE_DISTRIBUTION} - Unofficial ${LIVE_ARCHITECTURE} LIVE Binary `date +%Y%m%d-%H:%M`" > binary/.disk/info
-touch binary/.disk/mkisofs
-cat > binary/.disk/udeb_include << EOF
-netcfg
-ethdetect
-pcmcia-cs-udeb
-pcmciautils-udeb
-wireless-tools-udeb
-live-installer
-EOF
-
-# Creating stage file
-Create_stagefile .stage/binary_debian-installer