Haskell-language-server: ghc version could not be determined

Thanks for your help. I got it to work in the way that you described.

  • I checked out haskell-language-server locally.
  • Within my obelisk project: nix-shell -A shells.ghc (I don’t know the difference to ob shell btw)
  • cd into the haskell-language-server directory
  • cabal install
  • configured emacs/lsp-haskell to find the hls server executable at $HOME/.cabal/bin/haskell-language-server (the wrapper doesn’t work, weird)
  • enjoying now haskell-language-server 1.9.1.0 in all its glory in my obelisk project

Some notes:

I had to switch to the develop branch to obelisk and activate useGHC8107 = true.

Also, my obelisk setup is simplified really:

-- default.nix
  with pkgs.haskell.lib;
  obelisk.project ./. ({ ... }: {
    shellToolOverrides = self: super: {
      inherit (pkgs) cabal-install;
    };
    -- ...
  })

There is no need to specify a path to obelisk’s ghc. The one obelisk is using is the only one I have available when inside nix-shell -A shells.ghc or ob shell.

Note: I had to run cabal update before cabal install. But that was it. Thanks again. There are some stan findings that I have to check now. Oh boy! :stuck_out_tongue:

3 Likes