[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#807517: apt-ftparchive: multiarch pool results in identical Packages for main/contrib/non-free



Package: apt-utils
Version: 1.0.9.8.1
Severity: normal

I have a personal repository with the following structure:

8X-----
$ tree public_html/debian/
public_html/debian/
├── dists
│   └── testing
│       ├── contrib
│       │   ├── binary-amd64
│       │   │   ├── Packages
│       │   │   └── Packages.gz
│       │   ├── binary-i386
│       │   │   ├── Packages
│       │   │   └── Packages.gz
│       │   ├── Contents-amd64
│       │   ├── Contents-amd64.gz
│       │   ├── Contents-i386
│       │   ├── Contents-i386.gz
│       │   └── source
│       │       ├── Sources
│       │       └── Sources.gz
│       ├── InRelease
│       ├── main
│       │   ├── binary-amd64
│       │   │   ├── Packages
│       │   │   └── Packages.gz
│       │   ├── binary-i386
│       │   │   ├── Packages
│       │   │   └── Packages.gz
│       │   ├── Contents-amd64
│       │   ├── Contents-amd64.gz
│       │   ├── Contents-i386
│       │   ├── Contents-i386.gz
│       │   └── source
│       │       ├── Sources
│       │       └── Sources.gz
│       ├── non-free
│       │   ├── binary-amd64
│       │   │   ├── Packages
│       │   │   └── Packages.gz
│       │   ├── binary-i386
│       │   │   ├── Packages
│       │   │   └── Packages.gz
│       │   ├── Contents-amd64
│       │   ├── Contents-amd64.gz
│       │   ├── Contents-i386
│       │   ├── Contents-i386.gz
│       │   └── source
│       │       ├── Sources
│       │       └── Sources.gz
│       ├── Release
│       └── Release.gpg
└── pool
    ├── contrib
    │   └── f
    │       └── funkyware-meta
    │           ├── funkyware-common_801_all.deb
    │           ├── funkyware-desktop_801_all.deb
    │           ├── funkyware-meta_801.dsc
    │           ├── funkyware-meta_801.tar.xz
    │           └── funkyware-office_801_all.deb
    ├── main
    │   ├── c
    │   │   └── cups-pdf
    │   │       ├── cups-pdf_2.6.1-20.debian.tar.xz
    │   │       ├── cups-pdf_2.6.1-20.dsc
    │   │       └── cups-pdf_2.6.1.orig.tar.gz
    │   ├── u
    │   │   └── upgrade-system
    │   │       ├── upgrade-system_1.7.3.0_all.deb
    │   │       ├── upgrade-system_1.7.3.0.dsc
    │   │       └── upgrade-system_1.7.3.0.tar.xz
    │   └── x
    │       └── xserver-xorg-video-geode
    │           ├── xserver-xorg-video-geode_2.11.17-5.debian.tar.xz
    │           ├── xserver-xorg-video-geode_2.11.17-5.dsc
    │           ├── xserver-xorg-video-geode_2.11.17-5_i386.deb
    │           ├── xserver-xorg-video-geode_2.11.17.orig.tar.gz
    │           └── xserver-xorg-video-geode-dbg_2.11.17-5_i386.deb
    └── non-free
        └── s
            └── spotify-client
                └── spotify-client_1:0.9.4.183.g644e24e.428-2_i386.deb

28 directories, 51 files
8X-----

The distribution files are generated with this:

8X-----
// Release variables taken from /etc/apt/apt.conf.d/99funkyware:
//
// FTPArchive {
// 	Release {
//		Description "Development packages by Martin-Eric Racine";
//		Origin "Funkyware";
//		Label "Funkyware-Security";
//		Architectures "amd64 i386 source";
//		Suite "testing";
//		Components "contrib main non-free";
// 	};
// };
//
// RELEASE HOWTO (Bourne shell script in ~/bin/):
//
// apt-ftparchive -q=2    clean $HTMLDIR/apt-ftparchive.conf
// apt-ftparchive -q=2 generate $HTMLDIR/apt-ftparchive.conf
// apt-ftparchive -q=2  release $HTMLDIR/debian/dists/testing > $HTMLDIR/debian/dists/testing/Release
// gpg -a -s --detach-sign -o $HTMLDIR/debian/dists/testing/Release.gpg $HTMLDIR/debian/dists/testing/Release
// gpg -a -s --clearsign   -o $HTMLDIR/debian/dists/testing/InRelease   $HTMLDIR/debian/dists/testing/Release
//
//  Input: {ArchiveDir}/pool/{contrib|main|non-free}/{letter}/{package}/{bin|src}
// Output: {ArchiveDir}/dists/testing/{contrib|main|non-free}/{binary-{arch}|source}/{Packages|Sources}
//
Dir {
	ArchiveDir "/home/perkelix/public_html/debian";
	CacheDir "/tmp";
};
TreeDefault {
	Directory "pool";
	SrcDirectory "pool";
};
Tree "dists/testing" {
	Sections "main contrib non-free";
	Architectures "amd64 i386 source";
};
8X-----

Yet, for some reason, only architectures are correctly separated (e.g. the above pool only shows the arch:all packages to amd64 hosts, while i386 hosts see everything, as expected). Meanwhile, the Contents/Packages/Sources come out as identical for all of main/contrib/non-free. I would have expected the Contents/Packages/Sources in each component to only show what was found from the correcponding pool sub-section. 

Have I misconfigured something or is this the expected behavior?

-- System Information:
Debian Release: 8.2
  APT prefers stable
  APT policy: (1001, 'stable'), (1001, 'oldstable')
Architecture: i386 (i686)

Kernel: Linux 3.16.0-4-686-pae (SMP w/1 CPU core)
Locale: LANG=fi_FI.utf8, LC_CTYPE=fi_FI.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages apt-utils depends on:
ii  apt             1.0.9.8.1
ii  libapt-inst1.5  1.0.9.8.1
ii  libapt-pkg4.12  1.0.9.8.1
ii  libc6           2.19-18+deb8u1
ii  libdb5.3        5.3.28-9
ii  libgcc1         1:4.9.2-10
ii  libstdc++6      4.9.2-10

apt-utils recommends no packages.

apt-utils suggests no packages.

-- no debconf information


Reply to: