#!/bin/sh # Generate a list of packages required for debian-installer # This script makes use of the following variables that need to be preset: # MIRROR, CODENAME, DI_CODENAME DATE=`date` cat > debian-installer+kernel-$DI_CODENAME << EOF /* These files + the ones needed by debootstrap are the ones needed for * debian-installer to be able to complete the installation of the base * system. * * This list can be generated with the command: * ../tools/generate_di+k_list * * DO NOT EDIT THIS FILE, edit the above script * * Last update: $DATE */ #include eject locales lvm10 libdevmapper1.01 lvm-common lvm2 mdadm aptitude jfbterm unifont hotplug usbutils iso-codes console-cyrillic console-terminus pcmcia-cs wireless-tools xfsprogs jfsutils reiserfsprogs libfribidi0 localization-config #ifdef ARCH_i386 discover discover1 grub lilo EOF /bin/sed -n 's/Package: \(kernel-image-2.4.*-386\)$/\1/p' \ $MIRROR/dists/$CODENAME/main/binary-i386/Packages|/usr/bin/tail -n 1 \ >> debian-installer+kernel-$DI_CODENAME /bin/sed -n 's/Package: \(kernel-pcmcia-modules-2.4.*-386\)$/\1/p' \ $MIRROR/dists/$CODENAME/main/binary-i386/Packages|/usr/bin/tail -n 1 \ >> debian-installer+kernel-$DI_CODENAME /bin/sed -n 's/Package: \(kernel-image-2.6.*-386\)$/\1/p' \ $MIRROR/dists/$CODENAME/main/binary-i386/Packages|/usr/bin/tail -n 1 \ >> debian-installer+kernel-$DI_CODENAME cat >> debian-installer+kernel-$DI_CODENAME << EOF #endif #ifdef ARCH_amd64 discover discover1 grub lilo EOF if [ ! -e $MIRROR/dists/$CODENAME/main/binary-amd64/Packages ]; then echo "Cannot find amd64 packages file, inserting static entry as workaround" >&2 echo kernel-image-2.6.8-11-amd64-generic >> debian-installer+kernel-$DI_CODENAME else /bin/sed -n 's/Package: \(kernel-image-2.6.*-generic\)$/\1/p' \ $MIRROR/dists/$CODENAME/main/binary-amd64/Packages|/usr/bin/tail -n 1 \ >> debian-installer+kernel-$DI_CODENAME /bin/sed -n 's/Package: \(kernel-pcmcia-modules-2.6.*-generic\)$/\1/p' \ $MIRROR/dists/$CODENAME/main/binary-amd64/Packages|/usr/bin/tail -n 1 \ >> debian-installer+kernel-$DI_CODENAME fi cat >> debian-installer+kernel-$DI_CODENAME << EOF #endif #ifdef ARCH_alpha aboot aboot-base discover1 EOF /bin/sed -n 's/Package: \(kernel-image-.*\)$/\1/p' \ $MIRROR/dists/$CODENAME/main/binary-alpha/Packages|grep -v 2.4.21 \ >> debian-installer+kernel-$DI_CODENAME cat >> debian-installer+kernel-$DI_CODENAME << EOF #endif #ifdef ARCH_hppa discover1 EOF /bin/sed -n 's/Package: \(kernel-image-2.6.*\)$/\1/p' \ $MIRROR/dists/$CODENAME/main/binary-hppa/Packages|tail -n4 \ >> debian-installer+kernel-$DI_CODENAME cat >> debian-installer+kernel-$DI_CODENAME << EOF #endif #ifdef ARCH_ia64 discover1 initrd-tools EOF /bin/sed -n 's/Package: \(kernel-image-2\.4\..*\)$/\1/p' \ $MIRROR/dists/$CODENAME/main/binary-ia64/Packages | tail -n 4 \ >> debian-installer+kernel-$DI_CODENAME /bin/sed -n 's/Package: \(kernel-image-2\.4-.*\)$/\1/p' \ $MIRROR/dists/$CODENAME/main/binary-ia64/Packages \ >> debian-installer+kernel-$DI_CODENAME /bin/sed -n 's/Package: \(kernel-image-2\.6\..*\)$/\1/p' \ $MIRROR/dists/$CODENAME/main/binary-ia64/Packages | tail -n 4 \ >> debian-installer+kernel-$DI_CODENAME /bin/sed -n 's/Package: \(kernel-image-2\.6-.*\)$/\1/p' \ $MIRROR/dists/$CODENAME/main/binary-ia64/Packages \ >> debian-installer+kernel-$DI_CODENAME cat >> debian-installer+kernel-$DI_CODENAME << EOF #endif #ifdef ARCH_mips arcboot EOF # Only include mips kernels that d-i base-installer installs. for subarch in r4k-ip22 r5k-ip22; do sed -n 's/Package: \(kernel-image-.*-.*\)$/\1/p' \ $MIRROR/dists/$CODENAME/main/binary-mips/Packages \ | grep -- "-$subarch$" | sort -n | tail -n 1 \ >> debian-installer+kernel-$DI_CODENAME done cat >> debian-installer+kernel-$DI_CODENAME << EOF #endif #ifdef ARCH_mipsel delo EOF # Only include mipsel kernels that d-i base-installer installs. for subarch in r3k-kn02 r4k-kn04; do sed -n 's/Package: \(kernel-image-.*-.*\)$/\1/p' \ $MIRROR/dists/$CODENAME/main/binary-mipsel/Packages \ | grep -- "-$subarch$" | sort -n | tail -n 1 \ >> debian-installer+kernel-$DI_CODENAME done cat >> debian-installer+kernel-$DI_CODENAME << EOF #endif #ifdef ARCH_powerpc discover1 quik yaboot mkvmlinuz module-init-tools initrd-tools EOF # Only include powerpc kernels that d-i base-installer installs. for subarch in powerpc power3 power4 power3-pmac power3-chrp-rs6k \ power4-pmac power4-chrp-rs6k powerpc-pmac \ powerpc-prep powerpc-chrp powerpc-chrp-rs6k apus; do sed -n 's/Package: \(kernel-image-.*-.*\)$/\1/p' \ $MIRROR/dists/$CODENAME/main/binary-powerpc/Packages \ | grep -- "-$subarch$" | sort -n | tail -n 1 \ >> debian-installer+kernel-$DI_CODENAME done cat >> debian-installer+kernel-$DI_CODENAME << EOF #endif #ifdef ARCH_sparc discover1 initrd-tools EOF /bin/sed -n 's/Package: \(kernel-image-.*-sparc.*\)$/\1/p' \ $MIRROR/dists/$CODENAME/main/binary-sparc/Packages \ >> debian-installer+kernel-$DI_CODENAME cat >> debian-installer+kernel-$DI_CODENAME << EOF #endif #ifdef ARCH_m68k fileutils EOF # Get all the latest 2.2 for mac kernel /bin/sed -n 's/Package: \(kernel-image-2.2.*-mac\)$/\1/p' \ $MIRROR/dists/$CODENAME/main/binary-m68k/Packages | tail -n 1 \ >> debian-installer+kernel-$DI_CODENAME # Get the latest 2.4 kernels, except mac /bin/sed -n 's/Package: \(kernel-image-2.4.*\)$/\1/p' \ $MIRROR/dists/$CODENAME/main/binary-m68k/Packages | tail -n 7 | \ grep -v mac >> debian-installer+kernel-$DI_CODENAME cat >> debian-installer+kernel-$DI_CODENAME << EOF #endif #ifdef ARCH_arm discover1 EOF /bin/sed -n 's/Package: \(kernel-image-2.4.*\)$/\1/p' \ $MIRROR/dists/$CODENAME/main/binary-arm/Packages|tail -n5 \ >> debian-installer+kernel-$DI_CODENAME cat >> debian-installer+kernel-$DI_CODENAME << EOF #endif EOF