Package: cdimage.debian.org
Severity: important

So, we currently have support for signed overviews of everything
in a distribution, by way of the dists/woody/Release and
dists/woody/Release.gpg files.

This'd do us more good if as well as being on the archives, it were on
the CDs we'll eventually distribute.

For this to work, the Release and Release.gpg files should be verbatim
from the archive. For that to work, the Packages and Sources files also
must be verbatim from the archive. For that to work, the .debs have to
be in the same locations they are in the archive.

That is, the CD's for woody when it's released should look like:

        /cdrom/
                README
                README.htm
                ...
                debian/
                        dists/woody/
                                Release
                                Release.gpg
                                main/binary-i386/
                                        Packages.gz
                        pool/main/
                                a/
                                        aalib/
                                                ...

The Release file will list more Packages files than are actually on
the CD (it'll include other architectures and contrib and non-free),
and the Packages files will list more .debs than are actually on the CD
(since it'll list all .debs in the entire component, not just the ones
that fit on a single CD).

So, all in all, something like:

        MIRROR=/org/ftp.debian.org/ftp
        DEST=/org/scratch/ajt/woody-i386-cd
        SUITE=woody
        ARCH=i386
        VERSION=2.3

        mkdir -p $DEST/dists/$SUITE
        ln -s $SUITE $DEST/dists/stable
        ln -s $SUITE $DEST/dists/unstable
        ln -s $SUITE $DEST/dists/testing
        ln -s $SUITE $DEST/dists/frozen
        ln -s $SUITE $DEST/dists/Debian$VERSION

        mkdir -p $DEST/dists/$SUITE/main/binary-$ARCH
        mkdir -p $DEST/dists/$SUITE/main/source

        cp $MIRROR/dists/$SUITE/Release{,.gpg} $DEST/dists/$SUITE/
        cp $MIRROR/dists/$SUITE/main/binary-$ARCH/Packages* \
                $DEST/dists/$SUITE/main/binary-$ARCH/
        cp $MIRROR/dists/$SUITE/main/binary-$ARCH/Sources* \
                $DEST/dists/$SUITE/main/source/

        zcat $MIRROR/dists/$SUITE/main/binary-$ARCH/Packages.gz |
          awk '/^Package: / { P = $2 } /^Filename:/ { F = $2 } /^Size:/ { S = $2 } 
/^$/ { print P, S, F }' | 
          (
            # install the first 650MB of packages
            totsize=0
            while read pkg size locn; do
                totsize=$(($totsize + $size/1000 + 1))
                if [ $totsize -gt 650000 ]; then continue; fi
                echo adding $pkg
                mkdir -p $DEST/$(dirname $locn)
                cp $MIRROR/$locn $DEST/$locn
            done
          )

...should be the sort of thing to do. That means not running
dpkg-scanpackages or dpkg-scansources (which should be a win). It might
trigger a bunch of apt-cdrom warnings still when people try to install
from it, but those are things that need to be fixed in apt-cdrom...

It should make it easier to calculate how much space you can use
for .debs; since you shouldn't need to add X MB packages files after
installing them.

Cheers,
aj

-- 
Anthony Towns <[EMAIL PROTECTED]> <http://azure.humbug.org.au/~aj/>
I don't speak for anyone save myself. GPG signed mail preferred.

``_Any_ increase in interface difficulty, in exchange for a benefit you
  do not understand, cannot perceive, or don't care about, is too much.''
                      -- John S. Novak, III (The Humblest Man on the Net)


--  
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to