Hi -- I'm new to stack, haskell, etc and I am confused about how to reason about build repeatability when consuming packages that rely on "native, non-haskell libraries" (e.g. libcairo).
* Is it the case that some of the packages in LTS depend on non-haskell libraries? (I think the answer is yes)
* Is there a way to list the packages in an LTS snapshot that are non-haskell free?
* I imagine cabal is flexible enough to allow for any arbitrary method of consuming native libraries. I also image in practice there are only a few common ways -- what are they? Is there some way to understand exactly how a package might fail when native libraries are not present (build time? runtime?) and other useful information e.g. this package will only utilize static libraries.
There really are many variations of these questions, and I'm not really expecting any sort of miracle to the issues that are endemic to all ffi, but it might be cool to have some sort of "stack doctor" subcommand that would audit your choices and advise you of any repeatability/deployment problems you might face (not just related to native libraries, but maybe also issues with your deafult stack config, etc)
thanks! nehal