Incremental development:

nix-shell --run "cabal v2-repl"

Run the tests:

nix-shell --run "cabal v2-test"

Run a type checker in the background for quicker type checking feedback:

nix-shell --run "ghcid"

Run a type checker for the app code:

nix-shell --run 'ghcid -c "cabal v2-repl exe:nixpkgs-update"'

Run a type checker for the test code:

nix-shell --run 'ghcid -c "cabal v2-repl tests"'

Updating the Cabal file when adding new dependencies or options:

nix run nixpkgs#haskellPackages.hpack

Source files are formatted with Ormolu.

There is also a Cachix cache available for the dependencies of this program.