Closed chaserhkj closed 4 months ago
Thanks for the contribution!
Would be great if this could be tested by a GitHub workflow (CI), so that it does not bit-rot. Do you think you can add such a workflow? I have seen it e.g. at https://github.com/haskell/hackage-server/blob/8a8d7391b819921f67aa446c134a2bf83da1b9b4/.github/workflows/nix-flake.yml
Workflow is added, should be working now for both os x and linux builds using nix. A few notes:
nix flake check
to pass I need to do some workarounds in flake.nix
to deal with hydraJobs
and doctests
, see comments there.Excellent, I'll merge this now!
I cannot promise to maintain this, unfortunately, as I lack the nix
skills. So further involvement would be appreciated.
This PR adds nix packaging for BNFC using haskell.nix, allowing it to be integrated directly with the nix ecosystem, producing more reproducible builds as well.
Note that this does not invalidate the current stack-based build system, this is just additional nix build scripts that can be used by nix systems, quite like the
Dockerfile
we are already providing. This does not create multiple sources of truth for building as well since haskell.nix reads stack yaml configurations and generate build instructions on the fly.