{ description = "Settle your expenses"; inputs = { nixpkgs = { url = "github:nixos/nixpkgs/nixos-unstable"; }; flake-utils = { url = "github:numtide/flake-utils"; }; }; outputs = { self, nixpkgs, flake-utils }: flake-utils.lib.eachDefaultSystem (system: let pkgs = import nixpkgs { inherit system; }; settlr = pkgs.haskellPackages.developPackage { root = ./.; # modifier = drv: # pkgs.haskell.lib.addBuildTools drv (with pkgs.haskellPackages; [ haskell-language-server ]); }; shell = pkgs.mkShell { name = "settlr"; inputsFrom = [ settlr ]; packages = [ pkgs.cabal-install pkgs.haskell-language-server ]; hardeningDisable = [ "fortify" ]; }; in { packages = { default = settlr; }; devShells = { default = shell; }; }); }