On Fri, 24 Jun 2016 at 23:01:21 -0700, Josh Triplett wrote: > Some packages, if installed on any architecture, must be installed for > every enabled architecture. Most notably, an NSS or PAM module package, > if enabled in /etc/nsswitch.conf or /etc/pam.d respectively, must exist > for every enabled architecture to avoid breaking programs for that > architecture.
This might well be true for PAM. For NSS, it used to be true, but based on work I did on nss-mdns a while ago, I'm reasonably sure that was a glibc bug that was later fixed. (See <https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=479144>.) > As one possible solution for this problem (but not an ideal one, just a > thought experiment), dpkg could support a new value for "Multi-Arch", > "Multi-Arch: every". A flag to indicate "keep this in sync across architectures" seems a good idea, but I think this is perhaps a job for apt rather than dpkg (and apt will need to understand it anyway). Using a separate field would avoid the need to add the field to dpkg, wait for a new stable, and only then start adding it to packages. Perhaps something more like this? (I don't really like the field name, but it's the best I could think of right now.) Package: libpam-whatever Multi-arch: same Follow-architectures-of: libpam0g which would mean: if you install libpam-whatever:amd64, you have amd64, i386 and armhf architectures enabled in dpkg, and you have libpam0g:amd64 and libpam0g:i386 but not libpam0g:armhf, then libpam-whatever:i386 (only) is also automatically selected for installation; and if you subsequently enable arm64 and install libpam0g:arm64, then libpam-whatever:arm64 is also automatically selected? S