$ 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/gotests@v1.6.0
(goenv) $ go install -v github.com/haya14busa/goplay/cmd/goplay@v1.0.0
(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.
Issue with VSCode unable to detect Go even when launched from a conda activated environment
settings.json
The core issue is the env variables (including PATH) set by conda at environment activation in the command prompt session is not correctly inherited by the VSCode process, even though launched from the same terminal. Cursor does not have the issue however.