Fixing bug 34086
There's a few options:
- A new architecture type
Instead of borrowing "i386" as an arch-all architecture, we could have a "archall" architecture (albeit special-cased) thus allowing us to give arch:all packages their own BPBs (Binary Package Build) and only garbage-collect them when the source is superseded
- Can make better use of the build farm by removing nominatedarchindep and building on all architectures.
- Difficult and time-consuming to implement
- Dominate in binary groupings
Only dominate all a source's binaries in one DAS all at once, or not at all. Effectively, this is preventing the arch:all from being dominated too early when other binaries in the same DAS cannot be dominated yet.
- Easy-ish to implement;
- requires thought about performance degradation
- Another special case;
- doesn't head in the "right" direction as above;
- potentially leaves some binaries hanging around longer than necessary
- Track dependencies in the packages
Reference count dependencies on arch:all binaries and only dominate when the reference count is zero.
- Overcomes the limitation of the previous solution where binaries linger longer than necessary
- Considerably harder to implement
- Delay domination of arch-all binary
Don't dominate the arch-all binary until all the other non-arch-all binaries for the same source are superseded.
- Doesn't leave archive bloat as bad as dominating in groups
- should be quick and easy to implement
- Another special case
- possible performance issues
See also what Debian did: http://ftp-master.debian.org/wiki/projects/arch-all-tracking/