Le 13 juin 2020 07:01:01 GMT-04:00, zimoun <zimon.touto...@gmail.com> a écrit : >Dear, > >My question is: is it possible to specify 'inputs' only for specific >'outputs'? > >Well, I think that the answer is no because build-time vs install-time >but I could have wrong and/or someone could have a fix for me. :-)
Exactly, no. You cannot separate inputs from outputs, because they are part of the same derivation. When you build an output, you actually build the complete derivation and there's no way to separate that in "this part builds out" and "this part builds doc", etc. For propagated-inputs it would make some sense. A propagated input is just a normal input when building the package (so it contributes to every output). Its propagation behaviour only takes place when you want to install it in a profile though. If foo propagates bar, anl you install foo:out, you will also get bar:out in your profile. Same if you install foo:bin. It would make sense to only propagate for some outputs: suppose at runtime only foo:bin requires the propagation of bar. Since foo and bar are already built, it should be possible to restrict the propagation behaviour to that output. Foo:out would not bring in bar anymore, reducing the closure size. That's not implemented though. > >All the best, >simon