-
-
Notifications
You must be signed in to change notification settings - Fork 396
[WIP]: Nix env support for the wrapper #490
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
I have several comments.
|
Essentially, I read above as a clearly put a statement with the aim of blockage of any further work, without any room given for any consideration or discussion. But the points put are easily debatable. This is marked WIP for a reason, I invited here for the discussion and ideas. So I am probably outta here then. |
@Anton-Latukha I am sorry. I definitely did not want to block your effort. And I am not in the position to. I am not a haskell-language-server developer, so this is totally not my decision. (That being said, in my experience they care a lot about separation of concerns.) If they decide that automatically loading nix environments is a feature that belongs in the wrapper. By all means, please do that. I hope with commenting on a WIP PR I have not hurt any etiquette. My intention was to have a discussion about this before you invest more work into it. If the decision is to add this feature there are a few use cases to consider:
Of course we don‘t need answers to this questions to have this feature, but I wanted to mention them. |
Loading of Nix-shell actually straight-forward (pseudocode description):
|
Well, too many people came out and convinced me that It was good to at least discuss it thou. |
For use in haskell-language-server
WIP to solving #493
IDEs are currently required to provide their own custom Nix env loading mechanism and wrapper for the
haskell-language-server-wrapper
.Nix env load from first and second look seems pretty trivial to do.
What essentially needs to be done - is:
a)
--nix <args>
option to load Nix env and then load--lsp <args>
b)
--nix <args> <all_other_keys>
option to load Nix env with args and therelanguage-server-wrapper <all_other_keys>
.Since
wrapper
exe is properly decoupled (doescallProcess
for main HLS exe) - so when--nix
wrapper runs itselt inside Nix env:nix-shell . --command '<path_to>/haskell-language-server-wrapper <args>'
as always.