Bug#264952: apt-ftparchive: optionally merge in architecture-independent packages
On Tue, 10 Aug 2004, Russ Allbery wrote:
> Unless I'm missing something in the documentation, currently apt-ftparchive
> doesn't support adding all of the packages in binary-all to the individual
> package files for each architecture. Looking at the Debian archive, this
> is the expected behavior, and apt-get doesn't download the binary-all
> Package file and therefore will miss any architecture-independent packages
> in an archive indexed by apt-ftparchive.
The expected operation is that whatever is invoking apt-ftparchive
arranges for things to be structured so that it sees binary-all files
while running. This is done in one of two ways:
1) New style pools way - the script that extracts the files lists unions
all and each arch together and produces a file list file compatible
with the FileList argument
2) Old style debian way - Even though there was a binary-all directory
the archive scripts were expected to maintain symlinks from binary-*
to binary-all.
Both allow apt-ftparchive to see the all files when processing a per-arch
package file and it will produce the expected output.
If you really want to maintain an old-style archive without the symlinks
then I suggest you invoke apt-ftparchive using the FileList mechanism and
have an external script produce a unioned file listing (ie find
binary-all -type f && find binary-i386 -type f > flist.i386).
The flist mechanism is how apt-ftparchive supports all configurations
besides the old style debian archive with symlinks.
What are you trying to do anyhow? I can't think of any good reason to
split things up by binary-* unless you are maintaining a really big
archive.. For smaller archives it is OK to produce a mixed architecture
package file, apt/etc handle it just fine.
Jason
Reply to: