On Thu, Aug 06, 2020 at 10:13:46AM +0200, Ricardo Wurmus wrote: > Number 4 is by far the ugliest change of them all. In order to > statically link packages we need to add all the “static” outputs of all > Haskell inputs *and* the “static” outputs of *their* Haskell inputs. > This is not easily accomplished, so I ended up using “package-closure” > on all direct inputs, and then filtered the result to packages with > names starting with “ghc-”. If there was a more appropriate tool I’d > use it, but I don’t think it exists. Perhaps we should work on making propagated-inputs per-output? That way, :static could propagate the :static output of the dependencies. This would also be useful in other situations. For example, a package might contain both a binary and a library, and the library must propagate its dependencies to make the header files work. I don't know what a good syntax for this would be. Thoughts? Regards, Jakub Kądziołka