Anthony DeRobertis wrote:
The only thing I've seen is Recommends: cpu-microcode-all | cpu-microcode and having a cpu-microcode-all package that Depends on both, and having the two real package Provides cpu-microcode. If I remember correctly, Xorg did this at one point for video drivers (maybe still does).
It does (xserver-xorg-video-all, xserver-xorg-input-all); there's also va-driver-all, vdpau-driver-all (two video-acceleration interfaces) and printer-driver-all. We are considering introducing opencl-icd-all.
However, those involve Depends relationships (where an -all package is needed to allow the option of only installing one) and/or multiple depending/recommending packages and a changing set of providers (making it desirable to be able to make such changes in one central place). Hence, I agree that it wouldn't be worth it for *-microcode.
There's also the AppStream modalias mechanism, which can actually pick the right one for the current hardware, but the tools that process it aren't always installed:
https://lists.debian.org/debian-devel-announce/2016/11/msg00008.html https://lists.debian.org/debian-devel/2017/03/msg00165.html