#!/bin/bash
# cdpkglist.sh - Generate a list of packages per CD of Debian $RELEASE
# Copyright (C) 2005 Guilherme de S. Pastore

# Change as appropriate
# Default: 3.1_r0a (First non-buggy Sarge version)
RELEASE=3.1_r0a

INITIALDIR=`pwd`
TARGET=$INITIALDIR/list_$RELEASE.txt
TMPDIR=`mktemp -d /tmp/cdpkglist.XXXXXXXX` || exit 1

cd $TMPDIR
wget ftp://cdimage.debian.org/debian-cd/$RELEASE/i386/jigdo-cd/*.jigdo

for file in *.jigdo; do
    mv $file $file.gz
done

gunzip -f *.jigdo.gz

echo -e "Per CD package list\nDebian Release: $RELEASE\ncdpkglist.sh" \
    > $TARGET

touch sort-helper.tmp
for file in *.jigdo; do
    cdnumber=`echo $file | cut -d. -f1 | cut -d- -f5`
    echo $cdnumber:$file >> sort-helper.tmp
done

for cdnumber in `cat sort-helper.tmp | cut -d: -f1 | sort -n`; do
    filename=`grep "^$cdnumber:" sort-helper.tmp | cut -d: -f2`
    echo -e "\n\nCD #$cdnumber\n------\n" >> $TARGET
    grep [.]deb$ $filename | cut -d/ -f5 | cut -d_ -f1 | sort >> $TARGET
done

cd $INITIALDIR
rm -rf $TMPDIR