IDE configuration (HLS)

By default, DevShell of haskell-flake projects includes haskell-language-server and a few other tools by default.

Disabling haskell-language-server

Default options

Alternatively, disabling the default options (i.e., haskellProjects.<proj-name>.defaults.enable = false;) automatically removes HLS.

HLS is included as part of the default value of devShell.tools options. You can override this default by overriding it, for e.g.:

{
  haskellProjects.<proj-name> = {
    # NOTE: This is 'defaults.devShell.tools', not 'devShell.tools'
    defaults.devShell.tools = hp: with hp; {
      inherit
        cabal-install
        ghcid;
    };
  };
}

Alternatively, you can set it to null at a project-level:

{
  haskellProjects.<proj-name> = {
    # NOTE: This is 'devShell.tools', not 'defaults.devShell.tools'
    devShell.tools = {
      haskell-language-server = null;
    };
  };
}

Disabling HLS plugins

TODO