@@ -67,14 +67,17 @@ ENV PATH="/opt/jdtls/bin:${PATH}"
6767RUN rustup component add rust-analyzer
6868RUN rustup component add rustfmt
6969
70+ # Install coverage tools
71+ RUN cargo install cargo-llvm-cov
72+ RUN rustup component add llvm-tools-preview
73+
7074# Install jedi python language server, ast grep for tree sitter
7175RUN pip install jedi-language-server ast-grep-cli
7276
7377# Install global npm packages
7478RUN npm install -g typescript-language-server typescript
7579
7680# Install go and Gopls
77-
7881ARG TARGETARCH
7982RUN curl -O -L "https://go.dev/dl/go1.23.5.linux-${TARGETARCH}.tar.gz" && \
8083 tar -C /usr/local -xzf go1.23.5.linux-${TARGETARCH}.tar.gz && \
@@ -83,7 +86,7 @@ RUN curl -O -L "https://go.dev/dl/go1.23.5.linux-${TARGETARCH}.tar.gz" && \
8386 cp ~/go/bin/gopls /usr/bin/gopls
8487
8588ENV GOROOT=/usr/local/go
86- ENV GOPATH=/root /go
89+ ENV GOPATH=/home/user /go
8790ENV PATH=$GOPATH/bin:$GOROOT/bin:$PATH
8891
8992# Install ruby and ruby-lsp
@@ -93,9 +96,25 @@ RUN apt update && apt install -y ruby-full \
9396
9497RUN gem install ruby-lsp
9598
96- # Install coverage tools
97- RUN cargo install cargo-llvm-cov
98- RUN rustup component add llvm-tools-preview
99+ ENV HOME=/home/user
100+
101+ # Download and run dotnet install script
102+ RUN curl -fsSL https://builds.dotnet.microsoft.com/dotnet/scripts/v1/dotnet-install.sh -o dotnet-install.sh \
103+ && chmod +x dotnet-install.sh \
104+ && ./dotnet-install.sh --channel 8.0 --install-dir /home/user/.dotnet \
105+ && ./dotnet-install.sh --channel 9.0 --install-dir /home/user/.dotnet \
106+ && rm dotnet-install.sh
107+
108+ # Add .NET to PATH
109+ ENV PATH="${PATH}:/home/user/.dotnet"
110+ ENV DOTNET_ROOT=/home/user/.dotnet
111+
112+ # Install csharp-ls globally
113+ RUN dotnet tool install --global csharp-ls
114+
115+ # Add .NET tools to PATH
116+ ENV PATH="${PATH}:/home/user/.dotnet/tools"
117+
99118
100119COPY Cargo.toml .
101120
0 commit comments