Conflicting unversioned providers
Currently 2 packages providing the same name without specifying a version do not conflict. (I know that this is intentional.)
The problem is that some packages providing the same name should conflict but adding a version doesn't makes sense.
An example from alpine is busybox-binsh
and dash-binsh
(and other *-binsh
packages). They fail to install together since they include the same file. The packages should already conflict in the resolving phase.
This would improve the error message and would allow correct simulation (-s
).
My proposal is to allow specifying a conflict with a name provided by a package itself:
depends="!/bin/sh"
provides="/bin/sh"
Changing the resolver to ignore a conflict with a package itself should be enough to get this working. (To be tested)