{ pkgs ? import {} , inputs ? {} , ghc ? null , withHoogle ? false , ... }: let haskellPackages = if ghc == null then pkgs.haskellPackages else pkgs.haskell.packages.${ghc}; hs = haskellPackages.extend (with pkgs.haskell.lib; hself: hsuper: { symantic-formatter = buildFromSdist (hself.callCabal2nix "symantic-formatter" ./. {}); symantic-base = buildFromSdist (hself.callCabal2nix "symantic-base" inputs.symantic-base {}); }); in hs.symantic-formatter // { shell = hs.shellFor { #doBenchmark = true; packages = p: [ p.symantic-formatter ]; nativeBuildInputs = [ hs.cabal-install hs.ghcid hs.hlint hs.haskell-language-server pkgs.git-chglog pkgs.reuse ]; inherit withHoogle; }; }