Skip to content

chore: manage dev environment with devenv - #24

Merged
waveFrontSet merged 1 commit into
mainfrom
chore/devenv-dev-setup
Sep 5, 2026
Merged

chore: manage dev environment with devenv#24
waveFrontSet merged 1 commit into
mainfrom
chore/devenv-dev-setup

Conversation

@waveFrontSet

Copy link
Copy Markdown
Owner

What

Replace the manual GHC/Cabal + prek setup with a reproducible devenv environment.

  • devenv.yaml / devenv.lock / devenv.nix: GHC, Cabal, Haskell Language Server, hpack, hlint
  • Git hooks migrated from .pre-commit-config.yaml to git-hooks.nix (hpack, fourmolu, hlint, yamllint); the config file is now autogenerated and gitignored
  • Tasks: cert-prep:build, cert-prep:test (uses cabal.fast.project), cert-prep:lint
  • GEMINI_API_KEY provided through secretspec (dotenv provider) instead of a manual export
  • README development section updated

Test plan

  • devenv shell starts and ghc, cabal, hpack, hlint are on PATH
  • devenv tasks run cert-prep:test passes
  • commit triggers the four hooks and blocks on a lint error

- add devenv.yaml/lock/nix with GHC, Cabal, HLS, hpack and hlint
- migrate pre-commit hooks from .pre-commit-config.yaml to git-hooks.nix
  (config file is now autogenerated and gitignored)
- add cert-prep build/test/lint tasks
- pull GEMINI_API_KEY in via secretspec instead of a manual export
- update README development section
@waveFrontSet
waveFrontSet merged commit 9e6b5ac into main Sep 5, 2026
2 checks passed
@waveFrontSet
waveFrontSet deleted the chore/devenv-dev-setup branch September 5, 2026 16:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant