make_disc_trees.pl: merge “local” udebs into “main” explicitly

This might have worked by accident depending on the exact layout under the
LOCALDEBS directory (see previous commit for the big picture).

Let's focus on where input files for d-i should be stored:

    <LOCALDEBS>/dists/<CODENAME>/local/debian-installer/binary-amd64/*.udeb

Those *.udeb end up being stored under the “local” component[1] (making it
clear they're not from usual components on a Debian mirror), but they are
referenced in Packages for the “main” component[2], possibly replacing a
different version found in the archive.

    /dists/<CODENAME>/local/debian-installer/binary-<ARCH>/*.udeb  [1]
    /dists/<CODENAME>/main/debian-installer/binary-<ARCH>/Packages [2]

This makes it possible for d-i to find those *.udeb automatically, as it
uses a single Packages file.
This commit is contained in:
Cyril Brulebois 2023-01-27 05:24:03 +01:00
parent eb6d140f48
commit bfebeded70
1 changed files with 5 additions and 1 deletions

View File

@ -985,9 +985,13 @@ sub Packages_dir {
$pdir = "$dir/dists/$codename-backports/$component";
}
if ($section and $section eq "debian-installer") {
$pdir = "$dir/dists/$codename/$component/debian-installer";
# Don't attempt to put d-i components into backports, as d-i
# won't look for them there.
#
# Also, merge local udebs into main, as d-i uses a single
# Packages file anyway:
my $dstcomponent = $component ne 'local' ? $component : 'main';
$pdir = "$dir/dists/$codename/$dstcomponent/debian-installer";
}
return $pdir;
}