{ inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; flake-utils.url = "github:numtide/flake-utils"; }; outputs = { self, nixpkgs, ... }@inputs: inputs.flake-utils.lib.eachDefaultSystem (system: let pkgs = import nixpkgs { inherit system; }; hlib = pkgs.haskell.lib.compose; hpkgs = pkgs.haskell.packages.ghc98.extend (final: prev: { __PROJECT-NAME__ = hlib.dontCheck (final.callCabal2nix "__PROJECT-NAME__" ./. {}); }); in { packages = rec { __PROJECT-NAME__ = hpkgs.__PROJECT-NAME__; default = __PROJECT-NAME__; }; devShells.default = hpkgs.shellFor { packages = p: [ p.__PROJECT-NAME__ ]; nativeBuildInputs = [ hpkgs.cabal-fmt hpkgs.fourmolu hpkgs.haskell-language-server hpkgs.cabal-install ]; withHoogle = true; }; }); }