Talk:Visual Studio Code

From ArchWiki

vsdbg

Has anyone gotten debugging working with code (open-source release)?

The official (AFAIK) debugger vsdbg is not included in the open-source release: https://aka.ms/VSCode-DotNet-DbgLicense

Is it not possible to download vsdbg manually? Eg. https://aka.ms/getvsdbgsh

Aude (talk) 08:27, 8 May 2019 (UTC)

I managed to do it using netcoredbgAUR, though it's not very well documented.
The way I did was by adding this to the default launch configuration for .NET Core:
./.vscode/launch.json
...
"pipeTransport": {
    "pipeCwd": "${workspaceFolder}",
    "pipeProgram": "/usr/bin/bash",
    "pipeArgs": ["-c"],
    "debuggerPath": "/usr/bin/netcoredbg"
}
...
This will trick Code into running netcoredbg instead of vsdbg. From what I understand pipeTransport is used for SSH configurations, but you can use a shell just the same to take advantage of debuggerPath.
Luluco250 (talk) 16:11, 7 September 2019 (UTC)

snap or flatpak installation for Visual Studio Code

snap or flatpak are becoming the preferred method (by Microsoft) for the installation of Visual Studio Code.

There are two versions of Visual Studio Code: open-source OSS has a flatpak, and Microsoft vscode has a snap package.

For VSCode see https://snapcraft.io/code see below on how to install snap.

For OSS see https://flathub.org/apps/details/com.visualstudio.code.oss

Installation of Flatpak: Make sure to follow the setup guide before installing

$ sudo pacman --noconfirm --needed -S flatpak
$ flatpak install flathub com.visualstudio.code.oss

Run:

$ flatpak run com.visualstudio.code.oss

snap is currently only in AUR.

To get it to run using AppArmor

$ sudo systemctl enable --now apparmor.service

To get it to automatically update snap packages

$ sudo systemctl enable --now snapd.apparmor.service
$ sudo snap find vscode
Name               Version   Publisher   Notes    Summary
code               8795a988  vscode✓     classic  Code editing. Redefined.
code-insiders      a747d264  vscode✓     classic  Code editing. Redefined.

To install Visual Studio Code

$ sudo snap install code --classic

or to install Visual Studio Code Insiders

$ sudo snap install code-insiders --classic

Flesh (talk) 18:49, 27 November 2019 (UTC)

Update: AUR flag for Visual Studio Code Insiders is wrong because the package is self updating.
Dcelasun (talk)

No need for manual installation of MSBuild, and adding a troubleshooting entry on ignoring Mono

.NET Core should ship with its own version of MSBuild. Right now, the AUR msbuild-stable package is quite out-of-date and on version 16.0, while the one that comes with .NET Core is version 16.4. I never had to install another version of MSBuild, and when I did it didn't use it. I think there's some way of manually specifying the MSBuild verison, but I couldn't find a good resource detailing how to do that.

For this reason I think it's reasonable to remove the section talking about a missing MSBuild, titled "Error from OmniSharp that MSBuild cannot be located"?

Also, (possibly when Mono is installed as well as .NET Core SDK,) everything in VSCode is unrecognised when debugging C# (and possibly the other .NET languages, Visual Basic and F#) , things like 'System' not found. The solution to this is to tell Omnisharp to ignore Mono, as detailed in this GitHub issue. This would be useful to add on to the troubleshooting section. TheSheepGuy (talk) 08:21, 7 June 2020 (UTC)

Enabling wayland through electron-flags.conf

This doesn't appear to be possible. The only way I've found to get Wayland working on vscode is to use the command code --enable-features=UseOzonePlatform --ozone-platform=wayland CRISPYricePC (talk) 14:15, 9 November 2021 (UTC)

Doesn't work for me either. Pound Hash (talk) 06:07, 26 December 2021 (UTC)
The same, doesn't work for me. I think as vscodium goes with its own electron (not using the system version), the flags file may be read from some other path. Ashark (talk) 22:42, 30 January 2022 (UTC)
Installing VSCode prints a post-install message "Custom flags should be put directly in: ~/.config/code-flags.conf". I can put flags in there (I tested it to work with --enable-features=Vulkan), but trying with the Ozone platform causes it to refuse to start. Note, I use an NVIDIA card. CRISPYricePC (talk) 15:45, 24 March 2022 (UTC)
Same issue, VS Code doesn't start when putting these flags in ~/.config/code-flags.conf, MacBook Pro 11,4 (Intel graphics). Jad042 (talk) 12:13, 3 April 2022 (UTC)

Provides array for flavor packages

Currently, all packages provide inconsistent names for what they provide. Some names are: code, vscode, codium, vscodium, visual-studio-code-git, and one package provides nothing.

Package Provides Notes
code vscode
code-git visual-studio-code-git
visual-studio-code-bin code, vscode Contains /usr/bin/code, which is a script that reads config and executes /opt/visual-studio-code/bin/code.
visual-studio-code-insiders-bin -
vscodium codium
vscodium-bin codium, vscodium Contains /usr/bin/codium and /usr/bin/vscodium. Does not contain /usr/bin/code.
vscodium-git codium

I want to be able to easily determine which of flavor packages are installed with the command pacman -Q vscode. I guess all packages should provide list that vscode in provides array. Is that correct? If yes, I can write to all maintainers to edit their pkgbuilds. Ashark (talk) 16:35, 19 June 2022 (UTC)

Do all of them include the /usr/bin/code excutable? If so, one might indeed argue they provide code. -- Alad (talk) 09:43, 20 June 2022 (UTC)
I mean, should not they all provide a vscode like a virtual package? I can remember another example with DaVinci Resolve. There are several variants: studio, free, beta, stable. And they all provide davinci-resolve (which is convenient), and none of them contains /usr/bin/davinci-resolve binary. And even code package in official repo provides vscode while does not include /usr/bin/vscode Ashark (talk) 13:03, 20 June 2022 (UTC)