Installation method for multiple binary CDs ------------------------------------------- This directory contains a method to be used within dselect in order to access Debian binary packages stored across multiple binary CD-ROMs. Acquiring package data --------------------- It is possible to access up to four binary directories within «dists/stable»: . main . contrib . non-free . local The selected method will try to read the «Packages.cd» file from each of these directories if it is available. Identifying the CD-ROM ---------------------- A unique name is associated to each CD. This name should correspond with the label on the front of the CD. The name is also available on the CD, so the system can find out which CD is in the drive at any time. Installing the files -------------------- At the beginning of the installation the “multicd” method will sort the list of to-be-installed packages and install them CD by CD. If a different CD-ROM is required the user will be prompted to exchange the CD-ROM. Preparing multiple binary CD-ROMs --------------------------------- Since the “multicd” method needs to know which packages are on which CD-ROMs one cannot use regular «Packages» files. An additional data field «X-Medium:» is required. The first CD-ROM from the set should contain all «Packages.cd» files. To be more convenient you should include the «Packages.cd» files on all CD-ROMs. This ensures that you do not have to start with the first CD-ROM all the time. Additionally the package needs to gain information which CD-ROM is currently used. Thus each CD-ROM contains the file «.disk/info» which contains the symbolic name for the CD-ROM as specified by «X-Medium:». In order to be able to create the modified «Packages.cd» files, you have to use the «-M medium» option of dpkg-scanpackages (supported in dpkg-dev since 1.15.5). To split the “main” distribution into two CD-ROMs you will need to create a «Packages.cd» file for each «binary-$arch» directory. Afterwards you simply append the second one to the first one and put the resulting «Packages.cd» file into both «binary-$arch» directories. Sample Layout ------------- CD1 .disk/info = "Debian GNU/Linux binary-amd64" dists/stable/main/binary-all/ binary-amd64/Packages.cd.gz binary-amd64/net/foo.deb contrib/binary-amd64/Packages.cd.gz non-free/binary-amd64/Packages.cd.gz CD2 .disk/info = "Debian GNU/Linux contrib-amd64" dists/stable/main/binary-amd64/Packages.cd.gz contrib/binary-all/ binary-amd64/Packages.cd.gz binary-amd64/net/foo.deb non-free/binary-amd64/Packages.cd.gz CD3 .disk/info = "Debian GNU/Linux non-free-amd64" dists/stable/main/binary-amd64/Packages.cd.gz contrib/binary-amd64/Packages.cd.gz non-free/binary-all/ binary-amd64/Packages.cd.gz binary-amd64/net/foo.deb To re-generate the Packages file you have to change directory into «dists/stable/$part» and issue «dpkg-scanpackages» as follows. It is assumed that you use regular compressed overrides files in «/pub/debian/indices». CD1: dpkg-scanpackages -M "Debian GNU/Linux binary-amd64" \ binary-amd64 /pub/debian/indices/override.buster.gz \ dists/stable/ > binary-amd64/Packages CD2: dpkg-scanpackages -M "Debian GNU/Linux contrib-amd64" \ binary-amd64 /pub/debian/indices/override.buster.contrib.gz \ dists/stable/ > binary-amd64/Packages CD3: dpkg-scanpackages -M "Debian GNU/Linux non-free-amd64" \ binary-amd64 /pub/debian/indices/override.buster.non-free.gz \ dists/stable/ > binary-amd64/Packages