- Add my exclude_udebs lists, for general and i386, and modify

generate_di_list to not include udebs from those lists onto the
      cdrom, to save space on the netinst cds.
This commit is contained in:
Joey Hess 2003-12-24 17:19:14 +00:00
parent b579229191
commit a594a25066
4 changed files with 154 additions and 21 deletions

77
data/sarge/exclude-udebs Normal file
View File

@ -0,0 +1,77 @@
# These udebs build the d-i cdrom initrd. As such, there is no reason
# to keep another copy of them on the CD in udeb form.
#
# This duplicates data found in the file build/pkg-lists/kernel, in d-i cvs
kernel-image-*
# build/pkg-lists/base in d-i cvs
rootskel
main-menu
cdebconf-udeb
udpkg
anna
di-utils-shell
di-utils-reboot
# build/pkg-lists/cdrom/common, in d-i cvs
busybox-cvs-udeb
rootskel-locale
languagechooser
hw-detect
cdrom-detect
cdrom-retriever
load-installer
cdrom-checker
bogl-bterm-udeb
di-utils-terminfo
cdebconf-priority
cdebconf-newt-udeb
usb-discover
nano-udeb
floppy-retriever
# Already on the initrd, thanks to library reduction.
libdebconfclient0-udeb
# A reduced version is on the initrd. Nothing currently needs the full
# version.
slang1a-utf8-udeb
# These udebs are only useful in building the boot floppy image.
busybox-cvs-floppy-udeb
di-utils-bootfloppy
rootskel-bootfloppy
# Until someone gets the gtk cdebconf frontend going, all this is not worth
# including.
cdebconf-gtk-udeb
fontconfig-udeb
libatk1.0-udeb
libdirectfb-0.9-19-udeb
libexpat1-udeb
libfreetype6-udeb
libglib2.0-udeb
libgtk+2.0-directfb0-udeb
libpango1.0-udeb
libpng12-0-udeb
ttf-freefont-udeb
zlib1g-udeb
# This udeb is not in good shape and is largely supersceded by
# cdebconf-newt-udeb
cdebconf-slang-udeb
# We're currently using busybox's own shell, and do not need this one.
dash-udeb
# These dhcp clients are not the currently preferred one.
dhcp3-client-udeb
pump-udeb
# This package is only useful in the d-i-demo.
di-utils-exit-installer
# These loader udebs are not currently used on this CDs. That may change,
# but for now load-installer is used.
download-installer
load-cdrom
load-floppy
# Only useful in the hd-media initrd.
iso-scan
load-iso
# We're using busybox's modutils these days.
modutils-basic
modutils-full
# Nothing currently depends on this, and it seems not useful on its own.
raidtools2
reiserfsprogs-udeb

View File

@ -0,0 +1,29 @@
# These udebs build the d-i cdrom initrd. As such, there is no reason
# to keep another copy of them on the CD in udeb form.
#
# This duplicates data found in the file build/pkg-lists/cdrom/i386,
# in d-i cvs.
isa-pnp-modules-*
socket-modules-*
console-keymaps-at
console-keymaps-usb
discover-data-udeb
discover-udeb
floppy-modules-*
fat-modules-*
cdrom-core-modules-*
cdrom-modules-*
ide-modules-*
ide-core-modules-*
input-modules-*
fb-modules-*
kbd-chooser
usb-modules-*
firewire-core-modules-*
usb-storage-modules-*
scsi-core-modules-*
# Not needed with the 2.4 kernel on i386.
userdevfs
# The speakup kernel modules are not useful unless the access images are
# provided.
*-speakup-di

3
debian/changelog vendored
View File

@ -22,6 +22,9 @@ debian-cd (2.2.17) UNRELEASED; urgency=low
- Update the yaboot boot.msg to match the one in d-i cvs, including
details about setting debconf priority.
- Link the d-i INSTALLATION-HOWTO into doc/, if it exists.
- Add my exclude_udebs lists, for general and i386, and modify
generate_di_list to not include udebs from those lists onto the
cdrom, to save space on the netinst cds.
-- Raphael Hertzog <hertzog@debian.org> Wed, 20 Aug 2003 20:17:06 +0200

View File

@ -1,34 +1,58 @@
#!/bin/sh
#!/usr/bin/perl -w
# Generate a list of packages required for debian-installer
# This script makes use of the following variables that need to be preset:
# MIRROR, CODENAME
ARCHS="alpha arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc sh"
DATE=`date`
cat > debian-installer << EOF
/* List of udebs to be included so that debian-installer works fine
# MIRROR, CODENAME, BASEDIR
my @ARCHES=qw{alpha arm hppa hurd-i386 i386 ia64 m68k mips mipsel
powerpc s390 sparc sh};
my $DATE=`date`;
chomp $DATE;
open(OUT, ">debian-installer") || die "write: $!";
print OUT << "EOF";
/* List of udebs to be included so that debian-installer works fine
*
* This list can be generated with the command:
* ../tools/generate_di_list
*
* Last update: $DATE
*/
EOF
for arch in $ARCHS ; do
cat >> debian-installer << EOF
#ifdef ARCH_$arch
EOF
my @common_excludes = read_exclude("exclude-udebs");
grep-dctrl -n -s Package '' \
$MIRROR/dists/$CODENAME/main/debian-installer/binary-$arch/Packages \
>> debian-installer
foreach my $arch (@ARCHES) {
print OUT "#ifdef ARCH_$arch\n";
my @exclude = @common_excludes;
push @exclude, read_exclude("exclude-udebs-$arch")
if -e exclude_path("exclude-udebs-$arch");
my $packagefile="$ENV{MIRROR}/dists/$ENV{CODENAME}/main/debian-installer/binary-$arch/Packages";
UDEB: foreach my $udeb (map { chomp; $_ } `grep-dctrl -n -s Package '' $packagefile`) {
foreach my $pattern (@exclude) {
if ($udeb =~ /^$pattern$/) {
next UDEB;
}
}
print OUT "$udeb\n";
}
print OUT "#endif\n";
}
cat >> debian-installer << EOF
#endif
sub read_exclude {
my $file=exclude_path(shift);
open (IN, "<$file") || warn "failed to read exclude file $file";
my @ret;
while (<IN>) {
chomp;
s/^#.*//;
next unless length;
$_=quotemeta($_);
$_=~s/\\\*/.*/g;
push @ret, $_;
}
close IN;
return @ret;
}
EOF
done
sub exclude_path {
my $file=shift;
return "$ENV{BASEDIR}/data/$ENV{CODENAME}/$file";
}