Visual Studio Code or VSCode is a text editor developed by Microsoft that supports many popular programming languages such as Go, Java, JavaScript, Node.js, Python, C and C++. It is a directory based, language agnostic source code editor which focuses on directories rather than projects and has many extensions available for it. VSCode’s feature set includes bracket matching, syntax highlighting, code folding, linting, debugging, and built in version control via Git, Subversion or Perforce. Ever since the initial release of VSCode in 2015, it has become an increasingly popular programming tool amongst users of all desktop operating systems including GNU/Linux.

One of the many benefits of using Linux over Windows is the fact that the user doesn’t have to send telemetry to Microsoft. Because VSCode is built on open source and the source code is released under the MIT license, it is seen by many in the open software community as a welcome addition. In fact, many in the community who never would have considered installing any other software from Microsoft may be tempted to try out VSCode. Microsoft wants the Linux community to use VSCode. Microsoft even provides easily installed .deb and .rpm packages in addition to a distribution independent snap package. In fact, we previously covered how to install Visual Studio Code on Ubuntu 20.04 desktop using snap. These official binary versions of VSCode have proprietary elements and built in Microsoft telemetry which is enabled by default. According to Microsoft’s privacy statement, this telemetry is also shared with their affiliates and subsidiaries. Although it is possible to disable the telemetry, simply opening the application to do so may send telemetry to Microsoft because it is activated by default. Additionally, the possibility remains that a future update could reactivate the telemetry.

Is there any way to use VSCode without Microsoft’s proprietary elements and telemetry? As it turns out, there are two options. The first option is to build VSCode from the open source MIT licensed source code hosted on GitHub. Historically, when you build VSCode from source the telemetry and proprietary elements that Microsoft adds to the binaries are not included. The second option is to install a pre-built binary provided by the VSCodium project, who essentially build a telemetry free MIT licensed version of VSCode for you. We will explore both options in this article.

In this tutorial you will learn:

  • How to download and build an open source version of VSCode from GitHub and ensure that telemetry is disabled.
  • How to add a VSCodium repository and install an open source telemetry free version of VSCode with your package manager
  • How to directly download, and verify, the latest release of VSCodium.
gpg-logo

Software requirements and conventions used

Software Requirements and Linux Command Line Conventions
Category Requirements, Conventions or Software Version Used
System Distribution independent, but the example where we build from source uses Debian 10
Software VSCode, VSCodium
Other Privileged access to your Linux system as root or via the sudo command.
Conventions # - requires given linux commands to be executed with root privileges either directly as a root user or by use of sudo command
$ - requires given linux commands to be executed as a regular non-privileged user

Build VSCode from source


SUBSCRIBE TO NEWSLETTER
Subscribe to our NEWSLETTER and receive latest Linux news, jobs, career advice and tutorials.


For this tutorial we will build from source on Debian 10. For specifics on how to build from source on other distributions refer to the directions on the official GitHib repository.

Install prerequisites

Before attempting to build VSCode from source, ensure that the prerequisites are installed with the following command.

$ sudo apt-get install build-essential g++ libx11-dev libxkbfile-dev libsecret-1-dev python3 npm

Build the project

Now that the prerequisites are installed, go ahead and use the following commands to clone the repository and build the project.

$ git clone https://github.com/microsoft/vscode.git
$ cd vscode
$ npm install yarn
$ ./node_modules/yarn/bin/yarn
$ ./node_modules/yarn/bin/yarn run gulp vscode-linux-x64
$ ./node_modules/yarn/bin/yarn run gulp vscode-linux-x64-build-deb

Next, you should ensure that telemetry is disabled. In our testing, building the latest open source version of VSCode may have left out the proprietary elements, but it still left the telemetry enabled by default. To ensure that the telemetry is disabled before opening the app, you should enter the following commands for each user that will use VSCode.

$ mkdir -p ~/.config/Code\ -\ OSS/User
$ echo -e "{\n   \"telemetry.enableCrashReporter\": false,\n    \"telemetry.enableTelemetry\": false\n}" > ~/.config/Code\ -\ OSS/User/settings.json

Now VSCode is installed in the directory above the current working directory (..)and your current user will be able to launch it with the following command.

$ ../VSCode-linux-x64/bin/code-oss

If you would like to install VSCode system wide so that any user can launch it then enter the following commands.

$ sudo mv ../VSCode-linux-x64 /opt/
$ sudo chown -R root:root /opt/VSCode-linux-x64
$ sudo ln -s /opt/VSCode-linux-x64/bin/code-oss /usr/local/bin/vscode

Now you can launch VSCode as any user simply by entering the following.

$ vscode

Alternatively, you can install the .deb file that was also built during the above process with the following command.

$ sudo dpkg -i .build/linux/deb/amd64/deb/code-oss_1.56.0-1620037945_amd64.deb

VSCode can then be launched by any user on the system via the code-oss command.

If you choose to use this method to install VSCode then you will need to periodically update the program at an interval that you decide. To do so cd to the vscode directory where you initially cloned and built the project. You should stash away any changes that the build process may have made to any tracked files and then pull the updated code from the GitHub repo. To do so, enter the following commands.

$ git stash
$ git pull


Next, you will need to repeat the steps listed above to rebuild an updated program from the project.

Install VSCodium

If building from source and manually updating the application periodically seems like a like of work to have a telemetry free open source version of VSCode installed on your system then this is where the VSCodium project comes in. VSCodium does all of this work for you so that you don’t have to.

There are two ways to install VSCodium. You may download the latest release directly from the official GitHub or you can add their repository and install it through your distribution’s package manager. I recommend the latter because you will be able to update VSCodium whenever you update the rest of the packages on your system.

Install Through your Package Manager

Repositories host VSCodium for a variety of popular distributions. Follow the directions below for the distro of your choice.

On Debian, Ubuntu, and Mint

Enter the following into your terminal to add the GPG key of the repo, add the repo, and then update and install VSCodium.

$ wget -qO - https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/-/raw/master/pub.gpg | gpg --dearmor | sudo dd of=/etc/apt/trusted.gpg.d/vscodium.gpg
$ echo 'deb https://paulcarroty.gitlab.io/vscodium-deb-rpm-repo/debs/ vscodium main' | sudo tee --append /etc/apt/sources.list.d/vscodium.list
$ sudo apt update && sudo apt install codium

On RHEL, Fedora, CentOS, AlmaLinux

Enter the following into your terminal to add the GPG key of the repo, add the repo, and then update and install VSCodium.

$ sudo rpm --import https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/-/raw/master/pub.gpg
$ printf "[gitlab.com_paulcarroty_vscodium_repo]\nname=gitlab.com_paulcarroty_vscodium_repo\nbaseurl=https://paulcarroty.gitlab.io/vscodium-deb-rpm-repo/rpms/\nenabled=1\ngpgcheck=1\nrepo_gpgcheck=1\ngpgkey=https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/-/raw/master/pub.gpg" |sudo tee -a /etc/yum.repos.d/vscodium.repo
$ sudo dnf install codium

On OpenSUSE

Enter the following into your terminal to add the GPG key of the repo, add the repo, and then update and install VSCodium.

$ sudo rpm --import https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/-/raw/master/pub.gpg
$ printf "[gitlab.com_paulcarroty_vscodium_repo]\nname=gitlab.com_paulcarroty_vscodium_repo\nbaseurl=https://paulcarroty.gitlab.io/vscodium-deb-rpm-repo/rpms/\nenabled=1\ngpgcheck=1\nrepo_gpgcheck=1\ngpgkey=https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/-/raw/master/pub.gpg" |sudo tee -a /etc/zypp/repos.d/vscodium.repo
$ sudo zypper in codium


On Arch Linux and Manjaro

The package is available on the Arch User Repository (AUR). After installing yay by following our instructions to install a package from AUR via command line, the package can be easily installed with the following command.

$ yay -S vscodium-bin

Download the Latest Release Directly from VSCodium

If you don’t want to add a repo to install VSCodium then you can just download and install the latest binary release from the VSCodium GitHub. Here, they provide .deb packages for Debian and it’s derivatives, .rpm packages for RHEL based distros, and a distro independent AppImage version. In the following example we will download and run the current release(as of the time that this article was written) of the AppImage version.

The project provides sha256 checksums that can be used to verify the hosted files. It is recommended that you download this in addition to the application in order to verify the integrity of the AppImage download. To do so, enter the following commands into your terminal. When you enter the sha256sum command, the sum of the AppImage file is correct if you receive the following output

2b66d4a09a15da304595a4f0f7b15ba324bdcf1546b5831c9260e25f3df97115  VSCodium-1.55.2-1618361301.glibc2.16-x86_64.AppImage
and incorrect if you receive no output.

$ wget https://github.com/VSCodium/vscodium/releases/download/1.55.2/VSCodium-1.55.2-1618361301.glibc2.16-x86_64.AppImage
$ wget https://github.com/VSCodium/vscodium/releases/download/1.55.2/VSCodium-1.55.2-1618361301.glibc2.16-x86_64.AppImage.sha256
$ sha256sum VSCodium-1.55.2-1618361301.glibc2.16-x86_64.AppImage | grep $(awk '{print }' VSCodium-1.55.2-1618361301.glibc2.16-x86_64.AppImage.sha256)

Now that the application has been downloaded and verified, all you need to do is make it executable and launch it. To do so enter the following commands.

$ chmod +x VSCodium-1.55.2-1618361301.glibc2.16-x86_64.AppImage
$ ./VSCodium-1.55.2-1618361301.glibc2.16-x86_64.AppImage

Conclusion

In this article we discussed Microsoft’s VSCode text editor. We brought up the point that VSCode is open source, but the binaries available through official sources have telemetry and proprietary elements built into them. We discussed two different methods for installing actual open source versions of VSCode without the telemetry and proprietary elements. The first was to build the project from source, and the second was to install pre-built binaries from the VSCodium project. The main benefits of building the project from source is that you are not dependent on a third party and you may make your own modifications to the code if you desire.

The main benefits of installing the pre-built binaries from VSCodium is that it is fast, easy, you have a second pair of eyes verifying that the telemetry and proprietary elements are disabled, and you can keep the program up to date along with the rest of your system through your package manager without any extra steps. Whichever method you decide is best for you, you may now use VSCode without having to agree to a proprietary license and send your data to Microsoft.

FIND LATEST LINUX JOBS on LinuxCareers.com
Submit your RESUME, create a JOB ALERT.
LINUX CAREER NEWSLETTER
Subscribe to NEWSLETTER and receive latest news, jobs, career advice and tutorials.
DO YOU NEED ADDITIONAL HELP?
Get extra help by visiting our LINUX FORUM or simply use comments below.