202106211537 - Building a haskell package
See https://input-output-hk.github.io/haskell.nix/tutorials/getting-started/ for binary cache prereq
I recommend:
- Using https://github.com/jonascarpay/declarative-cachix
- https://input-output-hk.github.io/haskell.nix/tutorials/getting-started/#niv (this one is better https://github.com/input-output-hk/haskell.nix/issues/1013#issuecomment-773019315, this one is misleading https://github.com/input-output-hk/haskell.nix/issues/1132)
See https://input-output-hk.github.io/haskell.nix/tutorials/materialization/#how-can-we-materialize-the-nix-files first example for how to build a package, hlint in the example.
See https://input-output-hk.github.io/haskell.nix/tutorials/cross-compilation/#static-executables-with-musl-libc for static binaries
- https://github.com/input-output-hk/haskell.nix/issues/1095
- https://github.com/input-output-hk/haskell.nix/issues/979
- https://github.com/input-output-hk/haskell.nix/issues/780
- https://github.com/input-output-hk/haskell.nix/issues/868 iserv !!
See https://input-output-hk.github.io/haskell.nix/tutorials/cross-compilation/#how-to-cross-compile-your-project for cross package set usage