> Maybe you're right.  Just like installation may fail because
> a dependency is missing.  Maybe marking those things as
> uninstallable/incompatible is good, but only if we can explain
> concisely/easily enough to the user why it's uninstallable/incompatible.

Yes, it would be good to add that to the describe package buffer. package--incompatible-p already returns the reason why the package is incompatible, so it's just a matter of formating and printing.