On 10/8/2018 4:04 PM, Achim Gratz wrote: > Ken Brown writes: >> I created a test repo with packages A, B, and C. I made A require foo (not a >> package), and I made B and C provide foo. The attached script does all this >> [**]. I then ran setup and selected A for installation. > > That really only makes sense if several packages provide the same > feature(s).
Right. I gave a potential example elsewhere in this thread, in which the feature emacs-bin is provided by the packages emacs, emacs-X11, emacs-lucid, and emacs-w32. Fedora does something like this, except that it calls the feature emacs(bin). >> So we'd need to bolt on a feature space in setup as well. I'm not sure what you mean by this. setup doesn't need to know whether a requirement is a feature or a package. It simply passes the dependencies (and the provides) to libsolv, which handles them just fine. The only thing that I thought wasn't working right is libsolv's behavior when more than one package provides a certain feature and libsolv has to choose one for installation. But I realize now that libsolv just doesn't do what I expected, and some non-trivial work on setup would be required in order to get the behavior I was expecting. See my other messages in this thread. Ken