flake-template-hell/templates/haskell/flake.nix
2024-12-04 17:35:06 +00:00

29 lines
863 B
Nix

{
description = "Haskell Project Template";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
treefmt.url = "github:numtide/treefmt-nix";
};
outputs = inputs @ {nixpkgs, ...}: let
inherit (nixpkgs) lib;
systems = ["x86_64-linux"];
forAllSystems = f:
lib.genAttrs systems (
system:
f {
pkgs = import nixpkgs {
inherit system;
};
}
);
treefmtEval = forAllSystems ({pkgs}: inputs.treefmt.lib.evalModule pkgs ./flake/treefmt.nix);
in {
packages = forAllSystems ({pkgs}: {
default = pkgs.callPackage ./flake/package.nix {};
});
devShells = forAllSystems ({pkgs}: {
default = pkgs.callPackage ./flake/shell.nix {};
});
formatter = forAllSystems ({pkgs}: treefmtEval.${pkgs.system}.config.build.wrapper);
};
}