Hi, Quoting Felipe Sateler (2016-01-15 13:33:37) > You are trying to create implications. a => b is the same as !a || b, which > is how I expressed the dependencies above. This is easy to do for versioned > dependencies, but not so easy for non-versioned ones (you cannot have > !package in the Depends field, there is the Conflicts field but that is > another grouping). You could work around that limitation by imposing a (<< > 0~) restriction to packages that should not be installed in any version.
Implications like a=>b can be expressed via a third package c which conflicts with a. You'd then have: Package: xyz Depends: c | b Package: c Conflicts: a Whenever discussions about new dependency syntax come up I like to remind people of all the time (about six years now) and effort it took to get the build profile syntax [1] accepted by the archive, supported by all tools and to sufficiently discuss this with everybody involved to get general agreement that this is necessary and we're doing it the right way. And this is not even over yet as that syntax has to be documented in policy as well! Plus, we are only talking about Build-Depends syntax here. I'd assume that there are even more tools that handle binary package Depends syntax that the 19 that handle source package dependency syntax. In this case, the desired effect can be achieved using existing elements of the dependency syntax and without any unreadable version quirks. A new syntax would *only* be acceptable if there were hundreds if not thousands of packages that would benefit from an easier way to express such a conditional and in which case having all these meta-packages I proposed as a solution above would become infeasible. Thanks! cheers, josch [1] https://wiki.debian.org/BuildProfileSpec
signature.asc
Description: signature