{ pkgs ? import { overlays = [ (import ./pkgs) ]; } }: let haskellPackages = pkgs.haskellPackages.override { overrides = self: super: { anissue = (super.callCabal2nix "anissue" ./. { }).overrideAttrs (oldAttrs: { nativeBuildInputs = [ pkgs.installShellFiles ]; postInstall = '' exe=${oldAttrs.pname} installShellCompletion --cmd $exe \ --bash <($out/bin/$exe --bash-completion-script $exe) \ --fish <($out/bin/$exe --fish-completion-script $exe) \ --zsh <($out/bin/$exe --zsh-completion-script $exe) ''; }); }; }; in rec { inherit (haskellPackages) anissue; shell = haskellPackages.shellFor { packages = _: [ anissue ]; buildInputs = [ haskellPackages.cabal-install haskellPackages.ormolu pkgs.tree-grepper pkgs.ghcid pkgs.git pkgs.haskell-language-server ]; withHoogle = true; shellHook = '' HISTFILE=${pkgs.lib.escapeShellArg ./.}/.history; export HISTFILE ''; }; }