test: Generate the pkg-old.deb from controlled parts
[dpkg.git] / dselect / methods / media / README.media
blob42be9418eef8139d2ec5ec6e037f3076cb6c0e8d
1 Installation method for multiple binary media
2 ---------------------------------------------
4  This directory contains a method to be used within dselect in order to
5  access Debian binary packages stored across multiple binary media
6  (CDs, DVDs, BDs, or USBs).
8 Acquiring package data
9 ---------------------
11  It is possible to access the following binary directories within
12  «dists/stable»:
14   . main
15   . contrib
16   . non-free-firmware
17   . non-free
18   . local
20  The selected method will try to read the «Packages.cd» file from each
21  of these directories if it is available.
23 Identifying the media
24 ----------------------
26  A unique name is associated to each media disc. This name should correspond
27  with the label on the front of the media disc. The name is also available on
28  the media disc, so the system can find out which media disc is inserted into
29  the computer at any time.
31 Installing the files
32 --------------------
34  At the beginning of the installation the “media” method will sort the list
35  of to-be-installed packages and install them media disc by media disc. If a
36  different media disc is required the user will be prompted to exchange
37  the media disc.
39 Preparing multiple binary media discs
40 -------------------------------------
42  Since the “media” method needs to know which packages are on which
43  media disc one cannot use regular «Packages» files. An additional data
44  field «X-Medium:» is required. The first media disc from the set should
45  contain all «Packages.cd» files. To be more convenient you should
46  include the «Packages.cd» files on all media discs. This ensures that
47  you do not have to start with the first media disc all the time.
49  Additionally the package needs to gain information which media disc is
50  currently used. Thus each media disc contains the file «.disk/info»
51  which contains the symbolic name for the media disc as specified by
52  «X-Medium:».
54  In order to be able to create the modified «Packages.cd» files, you
55  have to use the «-M medium» option of dpkg-scanpackages (supported
56  in dpkg-dev since 1.15.5).
58  To split the “main” distribution into two media discs you will need to
59  create a «Packages.cd» file for each «binary-$arch» directory.
60  Afterwards you simply append the second one to the first one and
61  put the resulting «Packages.cd» file into both «binary-$arch»
62  directories.
64 Sample Layout
65 -------------
67  Media disc 1 .disk/info = "Debian GNU/Linux binary-amd64"
68      dists/stable/main/binary-all/
69                        binary-amd64/Packages.cd.gz
70                        binary-amd64/net/foo.deb
71                   contrib/binary-amd64/Packages.cd.gz
72                   non-free-firmware/binary-amd64/Packages.cd.gz
73                   non-free/binary-amd64/Packages.cd.gz
75  Media disc 2 .disk/info = "Debian GNU/Linux contrib-amd64"
76      dists/stable/main/binary-amd64/Packages.cd.gz
77                   contrib/binary-all/
78                           binary-amd64/Packages.cd.gz
79                           binary-amd64/net/foo.deb
80                   non-free-firmware/binary-amd64/Packages.cd.gz
81                   non-free/binary-amd64/Packages.cd.gz
83  Media disc 3 .disk/info = "Debian GNU/Linux non-free-amd64"
84      dists/stable/main/binary-amd64/Packages.cd.gz
85                   contrib/binary-amd64/Packages.cd.gz
86                   non-free-firmware/binary-amd64/Packages.cd.gz
87                   non-free/binary-all/
88                            binary-amd64/Packages.cd.gz
89                            binary-amd64/net/foo.deb
91  To re-generate the Packages file you have to change directory into
92  «dists/stable/$part» and issue «dpkg-scanpackages» as follows. It is
93  assumed that you use regular compressed overrides files in
94  «/pub/debian/indices».
96  Media disc 1: dpkg-scanpackages -M "Debian GNU/Linux binary-amd64" \
97         binary-amd64 /pub/debian/indices/override.buster.gz \
98         dists/stable/ > binary-amd64/Packages
100  Media disc 2: dpkg-scanpackages -M "Debian GNU/Linux contrib-amd64" \
101         binary-amd64 /pub/debian/indices/override.buster.contrib.gz \
102         dists/stable/ > binary-amd64/Packages
104  Media disc 3: dpkg-scanpackages -M "Debian GNU/Linux non-free-amd64" \
105         binary-amd64 /pub/debian/indices/override.buster.non-free.gz \
106         dists/stable/ > binary-amd64/Packages