Description
Description of the proposal
flake-parts
are a new, really nice framework for defining nix flakes. They allow for easy composability, nice error messages, usage of types and easy, automated documentation.
Especially the latter three is what haskell.nix
lacks a bit, imho. I think exporting a flake part would simplify documentation and make configuration of a Haskell project with haskell.nix
very easy.
In my opinion flake-parts are the first framework that really feels somewhat "polished" and not adhoc. haskell.nix
itself uses the module system, however, I think a more complete documentation, reuse of the tools provided by flake-parts
(this would also reduce maintenance overhead) could really increase adoption.
Describe the solution you'd like
I would like haskell.nix
to export a flakeModule
similarly to how e.g. cachix/pre-commit-hooks.nix or hercules-ci/hercules-ci-effects does it and to ultimately integrated within the documentation in https://flake.parts
Describe alternatives you've considered / Additional context
Providing wrappers is the biggest alternatives but it mainly causes duplicated work for consuming parties, it would be nice to just have the support for this upstreamed here.
Note
I would like to volunteer in an effort if this was going to be happening.