microsoft / microsoft/multilspy
C#/.NET Parser does not properly download dependencies (Linux)
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 610
- Forks
- 111
- PR merge metrics
- No merged PRs in 30d
Description
Hello,
I've been trying to use the C# parser and been dealing with a heap of issues for the past 2 days, I tried troubleshooting myself at first but have yet to find a solution.
The initial error reported is that dotnet or mono is not found on the system. So I installed .net and mono. After that, the parser just hangs on initialization forever without reporting any errors.
So I tried running omnisharp directly to troubleshoot, and that does return errors (<REPO_NAME>/venv/lib/python3.10/site-packages/multilspy/language_servers/omnisharp/static/OmniSharp/OmniSharp). This now gives me A fatal error occurred. The required library libhostfxr.so could not be found. I first tried the lazy solution of coping all the lib files over from RazorOmnisharp which has them, this gives me You must install or update .NET to run this application.
I've tried updating the DOTNET_ROOT to point to the 6.0 version I have downloaded (/snap/dotnet-runtime-60/current/), which does not change anything -- I tried setting in my bash profile and running source, setting directly from the command line when running omnisharp, neither work as well.
Does anyone have this parser working on Linux, and if so do they have any advice on getting it to run properly?
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the Linux initialization failure and running the OmniSharp executable under multilspy/language_servers/omnisharp/static/OmniSharp directly. Check how the C# parser locates dotnet, mono, libhostfxr.so, and DOTNET_ROOT, using the reported environment paths as reference. Done means the parser initializes on Linux without hanging or reporting missing .NET dependencies.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp, linux, python
- Domain
- devtools, operating-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100