Can't update to hls-2.7.0.0 due to new plugin component structure
I think there's a couple of issues here in different moving parts but putting it here to begin with.
hls 2.7.0.0 has moved all its plugins, from being cabal libraries in the same repo, to being library components of the main haskell-language-server package causing a number of issues.
- horizon-gen-nix brings in all the dependencies of all components of the library, regardless of flags, there doesn't seem to be anyway to specify a component.
- Even if you manually remove them from the derivation, cabal still tries to find all dependencies of all components (this probably isn't a bug because it does try and configure all the libraries in the package, and they do still have the dependencies).
- If you add an extra configure flag to specify a build target (e.g. exe:haskell-language-server), then cabal can't find internal components. (This is either a bug or Cabal needs to support multiple components to deal with this properly, which it explicitly doesn't support at the moment).