No description
Find a file
Sridhar Ratnakumar b21f59e123
Update flake.lock (#74)
* flake.lock: Update

Flake lock file updates:

• Updated input 'flake-parts':
    'github:hercules-ci/flake-parts/d591857e9d7dd9ddbfba0ea02b43b927c3c0f1fa' (2022-11-14)
  → 'github:hercules-ci/flake-parts/3f7172646953bf86dad5953bc45f0edae62ac445' (2022-12-18)
• Updated input 'haskell-flake':
    'github:srid/haskell-flake/4fc511d93a55fedf815c1647ad146c26d7a2054e' (2022-11-11)
  → 'github:srid/haskell-flake/54334cfae9bbb73732bbb1437260017044f68d0b' (2022-12-19)
• Updated input 'nixpkgs':
    'github:nixos/nixpkgs/a2d2f70b82ada0eadbcb1df2bca32d841a3c1bf1' (2022-12-04)
  → 'github:nixos/nixpkgs/bb31220cca6d044baa6dc2715b07497a2a7c4bc7' (2022-12-19)

* Fix flake-parts warning

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2022-12-19 11:16:12 -05:00
.github/workflows github: Reintroduce update-flake-lock.yaml 2022-10-29 12:00:00 -04:00
.vscode Nixify scripts using mission-control (#72) 2022-12-17 12:29:11 -05:00
src Nixify scripts using mission-control (#72) 2022-12-17 12:29:11 -05:00
.envrc Add .envrc 2022-03-17 10:19:17 -04:00
.gitattributes Mark flake.lock as auto generated 2022-01-29 13:56:03 -05:00
.gitignore Simplify .gitignore 2022-09-03 10:33:32 -04:00
.hlint.yaml hlint: add a custom rule as illustration 2022-09-03 10:27:38 -04:00
flake.lock Update flake.lock (#74) 2022-12-19 11:16:12 -05:00
flake.nix Update flake.lock (#74) 2022-12-19 11:16:12 -05:00
fourmolu.yaml Switch to fourmolu 2022-03-23 13:46:51 -04:00
garnix.yaml Nixify scripts using mission-control (#72) 2022-12-17 12:29:11 -05:00
haskell-template.cabal Update flake.lock & reintroduce garnix CI (#66) 2022-10-30 19:22:49 -04:00
hie.yaml Remove tests; just document how to add it (#50) 2022-09-01 20:04:57 -04:00
LICENSE Change year 2022-10-10 21:56:38 -04:00
README.md treefmt need not be in shell PATH 2022-12-19 08:58:06 -05:00
shell.nix Simplify shell.nix using builtins.getFlake 2022-06-17 18:08:17 -04:00
treefmt.toml treefmt: add cabal-fmt 2022-05-08 18:39:45 -04:00

haskell-template

Get a Haskell development environment up and running quickly. Thanks to Nix, this template is optimized for a fully reproducible and friendly development environment. It is based on:

If you have an existing Haskell project, you should probably use https://github.com/srid/haskell-flake instead.

Getting Started

tldr: Install Nix, enable Flakes, open in VSCode and run , run.

For details, see: https://srid.ca/haskell-template/start

Tips

  • Run nix flake update to update all flake inputs.
  • Run nix --option sandbox false build .#check -L to run the flake checks.
  • Run , fmt in nix shell to autoformat the project. This uses treefmt, which uses ./treefmt.toml (where fourmolu and nixpkgs-fmt are specified).
  • Run , docs to start Hoogle with packages in your cabal file.
  • Run the application without installing: nix run github:srid/haskell-template (or nix run . from checkout)
  • Common workflows

Discussions

Questions? Ideas? Suggestions? You may post them here: https://github.com/srid/haskell-template/discussions