$ conda create -n goenv go
$ conda activate goenv
(goenv) $ conda install -c conda-forge gxx_linux-64 # Required for the vscode go extension
Note the current goroot path
(goenv) $ go env GOROOT
/home/ec/miniconda3/envs/go/go
Add the path to vscode settings.json (Workspace or Global)
For workspace: config is saved in .vscode/settings.json
{
"go.goroot": "/home/ec/miniconda3/envs/go/go",
}
Next install the Go plugin for VScode. It will prompt to install a few tools. Click on "Install All". However the installation of some tool will surely fail which needs to be installed manually like.
(goenv) $ go install -v github.com/cweill/gotests/[email protected]
(goenv) $ go install -v github.com/haya14busa/goplay/cmd/[email protected]
(goenv) $ go install -v github.com/go-delve/delve/cmd/dlv@latest
(goenv) $ go install -v honnef.co/go/tools/cmd/staticcheck@latest
(goenv) $ go install -v golang.org/x/tools/gopls@latest
The exact tools which failed and the corresponding command to install them can be found in the Output panel in VScode.
On windows with conda installed from scoop
{ "go.goroot": "C:/Users/Administrator/scoop/apps/miniconda3/current/envs/go1.22", "terminal.integrated.env.windows": { "GOROOT": "C:/Users/Administrator/scoop/apps/miniconda3/current/envs/go1.22" }, }When running vscode from a preactivated conda go environment
{ "go.goroot": "${env:CONDA_PREFIX}/go", "terminal.integrated.env.windows": { "GOROOT": "${env:CONDA_PREFIX}\\go", "PATH": "${env:CONDA_PREFIX}/bin;${env:PATH}" }, }This works as the environment variable is set to the current environment
CONDA_PREFIX=C:\Users\Administrator\scoop\apps\miniconda3\current\envs\go.Otherwise you can hardcode the path to avoid launching vscode from the terminal.Important
If this doesn't work close ALL instances of VScode and try again.
References