Running Visual Studio Code on Linux (2023)


See the Download Visual Studio Code page for a complete list of available installation options.

By downloading and using Visual Studio Code, you agree to the license terms and privacy statement.

Debian and Ubuntu based distributions

The easiest way to install Visual Studio Code for Debian/Ubuntu based distributions is to download and install the .deb package (64-bit), either through the graphical software center if it's available, or through the command line with:

sudo apt install ./<file>.deb# If you're on an older Linux distribution, you will need to run this instead:# sudo dpkg -i <file>.deb# sudo apt-get install -f # Install dependencies

Note that other binaries are also available on the VS Code download page.

Installing the .deb package will automatically install the apt repository and signing key to enable auto-updating using the system's package manager. Alternatively, the repository and key can also be installed manually with the following script:

sudo apt-get install wget gpgwget -qO- | gpg --dearmor > install -D -o root -g root -m 644 /etc/apt/keyrings/ sh -c 'echo "deb [arch=amd64,arm64,armhf signed-by=/etc/apt/keyrings/] stable main" > /etc/apt/sources.list.d/vscode.list'rm -f

Then update the package cache and install the package using:

sudo apt install apt-transport-httpssudo apt updatesudo apt install code # or code-insiders

RHEL, Fedora, and CentOS based distributions

We currently ship the stable 64-bit VS Code in a yum repository, the following script will install the key and repository:

sudo rpm --import sh -c 'echo -e "[code]\nname=Visual Studio Code\nbaseurl=\nenabled=1\ngpgcheck=1\ngpgkey=" > /etc/yum.repos.d/vscode.repo'

Then update the package cache and install the package using dnf (Fedora 22 and above):

dnf check-updatesudo dnf install code

Or on older versions using yum:

yum check-updatesudo yum install code

Due to the manual signing process and the system we use to publish, the yum repo may lag behind and not get the latest version of VS Code immediately.

(Video) How install visual studio code on Ubuntu 22.04 LTS


Visual Studio Code is officially distributed as a Snap package in the Snap Store:

Running Visual Studio Code on Linux (1)

You can install it by running:

sudo snap install --classic code # or code-insiders

Once installed, the Snap daemon will take care of automatically updating VS Code in the background. You will get an in-product update notification whenever a new update is available.

Note: If snap isn't available in your Linux distribution, please check the following Installing snapd guide, which can help you get that set up.

Learn more about snaps from the official Snap Documentation.

openSUSE and SLE-based distributions

The yum repository above also works for openSUSE and SLE-based systems, the following script will install the key and repository:

sudo rpm --import sh -c 'echo -e "[code]\nname=Visual Studio Code\nbaseurl=\nenabled=1\ntype=rpm-md\ngpgcheck=1\ngpgkey=" > /etc/zypp/repos.d/vscode.repo'

Then update the package cache and install the package using:

sudo zypper refreshsudo zypper install code

AUR package for Arch Linux

There is a community-maintained Arch User Repository package for VS Code.

To get more information about the installation from the AUR, please consult the following wiki entry:Install AUR Packages.

Nix package for NixOS (or any Linux distribution using Nix package manager)

There is a community maintained VS Code Nix package in the nixpkgs repository. In order to install it using Nix, set allowUnfree option to true in your config.nix and execute:

nix-env -i vscode

Installing .rpm package manually

The VS Code .rpm package (64-bit) can also be manually downloaded and installed, however, auto-updating won't work unless the repository above is installed. Once downloaded it can be installed using your package manager, for example with dnf:

(Video) How to Setup Visual Studio Code for C/C++ in Ubuntu | Linux | C | C++ | GCC | G++ | CLANG | VSCODE

sudo dnf install <file>.rpm

Note that other binaries are also available on the VS Code download page.


VS Code ships monthly and you can see when a new release is available by checking the release notes. If the VS Code repository was installed correctly, then your system package manager should handle auto-updating in the same way as other packages on the system.

Note: Updates are automatic and run in the background for the Snap package.


Node.js is a popular platform and runtime for easily building and running JavaScript applications. It also includes npm, a Package Manager for Node.js modules. You'll see Node.js and npm mentioned frequently in our documentation and some optional VS Code tooling requires Node.js (for example, the VS Code extension generator).

If you'd like to install Node.js on Linux, see Installing Node.js via package manager to find the Node.js package and installation instructions tailored to your Linux distribution. You can also install and support multiple versions of Node.js by using the Node Version Manager.

To learn more about JavaScript and Node.js, see our Node.js tutorial, where you'll learn about running and debugging Node.js applications with VS Code.

Setting VS Code as the default text editor


You can set the default text editor for text files (text/plain) that is used by xdg-open with the following command:

xdg-mime default code.desktop text/plain

Debian alternatives system

Debian-based distributions allow setting a default editor using the Debian alternatives system, without concern for the MIME type. You can set this by running the following and selecting code:

sudo update-alternatives --set editor /usr/bin/code

If Visual Studio Code doesn't show up as an alternative to editor, you need to register it:

sudo update-alternatives --install /usr/bin/editor editor $(which code) 10

Windows as a Linux developer machine

Another option for Linux development with VS Code is to use a Windows machine with the Windows Subsystem for Linux (WSL).

Windows Subsystem for Linux

With WSL, you can install and run Linux distributions on Windows. This enables you to develop and test your source code on Linux while still working locally on a Windows machine. WSL supports Linux distributions such as Ubuntu, Debian, SUSE, and Alpine available from the Microsoft Store.

When coupled with the WSL extension, you get full VS Code editing and debugging support while running in the context of a Linux distro on WSL.

(Video) Install and Run C++ in Visual Studio Code (Linux)

See the Developing in WSL documentation to learn more or try the Working in WSL introductory tutorial.

Next steps

Once you have installed VS Code, these topics will help you learn more about it:

  • Additional Components - Learn how to install Git, Node.js, TypeScript, and tools like Yeoman.
  • User Interface - A quick orientation to VS Code.
  • User/Workspace Settings - Learn how to configure VS Code to your preferences through settings.

Common questions

Azure VM Issues

I'm getting a "Running without the SUID sandbox" error?

You can safely ignore this error.

Debian and moving files to trash

If you see an error when deleting files from the VS Code Explorer on the Debian operating system, it might be because the trash implementation that VS Code is using is not there.

Run these commands to solve this issue:

sudo apt-get install gvfs-bin

Conflicts with VS Code packages from other repositories

Some distributions, for example Pop!_OS provide their own code package. To ensure the official VS Code repository is used, create a file named /etc/apt/preferences.d/code with the following content:

Package: codePin: origin ""Pin-Priority: 9999

"Visual Studio Code is unable to watch for file changes in this large workspace" (error ENOSPC)

When you see this notification, it indicates that the VS Code file watcher is running out of handles because the workspace is large and contains many files. Before adjusting platform limits, make sure that potentially large folders, such as Python .venv, are added to the files.watcherExclude setting (more details below). The current limit can be viewed by running:

cat /proc/sys/fs/inotify/max_user_watches

The limit can be increased to its maximum by editing /etc/sysctl.conf (except on Arch Linux, read below) and adding this line to the end of the file:


The new value can then be loaded in by running sudo sysctl -p.

While 524,288 is the maximum number of files that can be watched, if you're in an environment that is particularly memory constrained, you may want to lower the number. Each file watch takes up 1080 bytes, so assuming that all 524,288 watches are consumed, that results in an upper bound of around 540 MiB.

Arch-based distros (including Manjaro) require you to change a different file; follow these steps instead.

(Video) How to Install and Use Visual Studio Code on Ubuntu 20.04 LTS Linux (VS Code)

Another option is to exclude specific workspace directories from the VS Code file watcher with the files.watcherExclude setting. The default for files.watcherExclude excludes node_modules and some folders under .git, but you can add other directories that you don't want VS Code to track.

"files.watcherExclude": { "**/.git/objects/**": true, "**/.git/subtree-cache/**": true, "**/node_modules/*/**": true }

I can't see Chinese characters in Ubuntu

We're working on a fix. In the meantime, open the application menu, then choose File > Preferences > Settings. In the Text Editor > Font section, set "Font Family" to Droid Sans Mono, Droid Sans Fallback. If you'd rather edit the settings.json file directly, set editor.fontFamily as shown:

 "editor.fontFamily": "Droid Sans Mono, Droid Sans Fallback"

Package git is not installed

This error can appear during installation and is typically caused by the package manager's lists being out of date. Try updating them and installing again:

# For .debsudo apt-get update# For .rpm (Fedora 21 and below)sudo yum check-update# For .rpm (Fedora 22 and above)sudo dnf check-update

The code bin command does not bring the window to the foreground on Ubuntu

Running code . on Ubuntu when VS Code is already open in the current directory will not bring VS Code into the foreground. This is a feature of the OS which can be disabled using ccsm.

# Installsudo apt-get updatesudo apt-get install compizconfig-settings-manager# Runccsm

Under General > General Options > Focus & Raise Behaviour, set "Focus Prevention Level" to "Off". Remember this is an OS-level setting that will apply to all applications, not just VS Code.

Cannot install .deb package due to "/etc/apt/sources.list.d/vscode.list: No such file or directory"

This can happen when sources.list.d doesn't exist or you don't have access to create the file. To fix this, try manually creating the folder and an empty vscode.list file:

sudo mkdir /etc/apt/sources.list.dsudo touch /etc/apt/sources.list.d/vscode.list

Cannot move or resize the window while X forwarding a remote window

If you are using X forwarding to use VS Code remotely, you will need to use the native title bar to ensure you can properly manipulate the window. You can switch to using it by setting window.titleBarStyle to native.

Using the custom title bar

The custom title bar and menus were enabled by default on Linux for several months. The custom title bar has been a success on Windows, but the customer response on Linux suggests otherwise. Based on feedback, we have decided to make this setting opt-in on Linux and leave the native title bar as the default.

The custom title bar provides many benefits including great theming support and better accessibility through keyboard navigation and screen readers. Unfortunately, these benefits do not translate as well to the Linux platform. Linux has a variety of desktop environments and window managers that can make the VS Code theming look foreign to users. For users needing the accessibility improvements, we recommend enabling the custom title bar when running in accessibility mode using a screen reader. You can still manually set the title bar with the Window: Title Bar Style (window.titleBarStyle) setting.

Broken cursor in editor with display scaling enabled

Due to an upstream issue #14787 with Electron, the mouse cursor may render incorrectly with scaling enabled. If you notice that the usual text cursor is not being rendered inside the editor as you would expect, try falling back to the native menu bar by configuring the setting window.titleBarStyle to native.

Repository changed its origin value

If you receive an error similar to the following:

E: Repository '...' changed its 'Origin' value from '...' to '...'N: This must be accepted explicitly before updates for this repository can be applied. See apt-secure(8) manpage for details.

Use apt instead of apt-get and you will be prompted to accept the origin change:

(Video) Install VSCode on Kali Linux - Quick & Easy

sudo apt update



How do I run Visual Studio Code on Linux? ›

You can use the store app, or search for a Linux distro in the Windows search bar. Choose the Linux distribution you want to install (for example Ubuntu) and follow the prompts. Select Install. And when done, select Launch to get started.

Can you run Visual Studio on Linux? ›

Visual Studio Code

A standalone source code editor that runs on Windows, macOS, and Linux.

Can I use visual code on Linux? ›

VS Code is supported on the following platforms: OS X El Capitan (10.11+) Windows 8.0, 8.1 and 10, 11 (32-bit and 64-bit) Linux (Debian): Ubuntu Desktop 16.04, Debian 9.

Can you install Visual Studio Code on Linux? ›

Microsoft's Visual Studio Code (vscode) is a source-code editor developed for Windows, Linux, and macOS.

How do I run a Visual Studio Code from terminal? ›

Once your terminal is open, you can open VS Code from it by typing $ code . Then hit enter . Once you hit enter , VS Code will now open.

How do I run a visual code in terminal? ›

Launching from the command line

You can also run VS Code from the terminal by typing 'code' after adding it to the path: Launch VS Code. Open the Command Palette (Cmd+Shift+P) and type 'shell command' to find the Shell Command: Install 'code' command in PATH command.

Why there is no Visual Studio for Linux? ›

Visual Studio is Windows IDE and because it uses a lot of win32 and COM and is written in c/c++ too (pretty huge chunks) and relies on WPF which relies on DirectX will (most likely) never run on something other than Windows.

How to install Visual Studio Code in Linux terminal? ›

The most preferred method of installing Visual Code Studio on Debian based systems is by enabling the VS code repository and installing the Visual Studio Code package using the apt package manager. Once updated, proceed and install dependencies required by executing.

How do I run Visual Studio in Ubuntu? ›

Using Visual Studio Code

To open VSCode on Ubuntu just click the 'Applications' icon at the base of the Ubuntu Dock (or hit the super key). In the search bar start to type “Visual Studio Cord” and, when the app icon appears, click on the icon to ope the application. To open the app from the command line just run code .

Can Visual C++ run on Linux? ›

You can use the Visual Studio IDE on Windows to create, edit, and debug C++ projects that execute on a remote Linux system, virtual machine, or the Windows Subsystem for Linux.

How much RAM is needed for Visual Studio Code? ›

Requires 1 GB of RAM (1.5 GB if running on a virtual machine) Requires 1 GB of available hard disk space. Requires 1024 by 768 or higher display resolution. For the best experience, use the most recent update of these diagnostic tools for your version of Visual Studio.

Where is Visual Studio Code installed Linux? ›

it is in snap/bin/code.

How do I run Visual Studio Code in Ubuntu? ›

To install Visual Studio Code, launch the Ubuntu Software app from the applications menu. Search for Code and select the first result. Then, click on Install. Once the installation is complete, you can open Visual Studio Code from the terminal or directly from the applications menu.

How do I run a code in Linux terminal? ›

The keyboard shortcut is Ctrl + Alt + T. You can also click the Terminal icon in your Apps menu. It generally has an icon that resembles a black screen with a white text cursor. Type the name of the program and press ↵ Enter .

Why VS Code is not opening from terminal? ›

If your terminal is set to run as administrator only, and you are not launching VS Code as administrator, the terminal will not be able to open. You can either change the default terminal or edit the properties of the terminal exe to not run as administrator.

How do I run a code in Ubuntu terminal? ›

Using the shortcut Ctrl+Alt+N. Press F1 and then select or type Run Code. Right click the text editor and the click Run code from context menu.

Is C++ better on Windows or Linux? ›

Linux supports almost all of the programming languages such as Clojure, Python, Julia, Ruby, C, and C++ to name a few. The Linux terminal is better than Window's command line.

How do I run Visual Studio on Ubuntu? ›

To open VSCode on Ubuntu just click the 'Applications' icon at the base of the Ubuntu Dock (or hit the super key). In the search bar start to type “Visual Studio Cord” and, when the app icon appears, click on the icon to ope the application. To open the app from the command line just run code .


1. Setup .NET Core and VSCode under Linux Ubuntu
(Template Stack)
2. How to install Visual Studio Code on Linux, Ubuntu, Linux Mint
3. Setup Visual Studio Code On Linux For C - C Programming
(Sonar Systems)
4. Visual Studio Code for C/C++ on Linux (2021)
5. How To Run Linux Code on Windows with WSL 2 & VS Code
(TypeScript TV with Benny)
6. How to Run Visual Code as Root in |Ubuntu|Linux.
Top Articles
Latest Posts
Article information

Author: Barbera Armstrong

Last Updated: 09/29/2022

Views: 5854

Rating: 4.9 / 5 (79 voted)

Reviews: 94% of readers found this page helpful

Author information

Name: Barbera Armstrong

Birthday: 1992-09-12

Address: Suite 993 99852 Daugherty Causeway, Ritchiehaven, VT 49630

Phone: +5026838435397

Job: National Engineer

Hobby: Listening to music, Board games, Photography, Ice skating, LARPing, Kite flying, Rugby

Introduction: My name is Barbera Armstrong, I am a lovely, delightful, cooperative, funny, enchanting, vivacious, tender person who loves writing and wants to share my knowledge and understanding with you.