Package Details: visual-studio-code-oss 1.11.2-2

Git Clone URL: (read-only)
Package Base: visual-studio-code-oss
Description: Visual Studio Code for Linux, Open Source version
Upstream URL:
Keywords: IDE Microsoft vscode
Licenses: MIT
Conflicts: vscode-oss
Provides: vscode-oss
Submitter: Zrax
Maintainer: Zrax
Last Packager: Zrax
Votes: 48
Popularity: 6.218292
First Submitted: 2015-12-02 18:11
Last Updated: 2017-04-29 22:01

Latest Comments

Zrax commented on 2017-04-29 22:02

Sorry, should be fixed now.

opotonil commented on 2017-04-29 21:48

Can you update sha256sum of visual-studio-code-oss.desktop (

==> Validating source files with sha256sums...
vscode ... Skipped
startup_script.patch ... Passed
visual-studio-code-oss.desktop ... FAILED
==> ERROR: One or more files did not pass the validity check!

Zrax commented on 2017-04-28 22:15

Patching product.json does not make it "literally the exact same package". Even the patched product.json is not identical to the version in the binary download, regardless of the state of the rest of the files. It does enable the use of the telemetry and the extension gallery, which are otherwise features only available in the proprietary version, but enabling features doesn't make it identical. Whatever, the point is probably splitting hairs anyway.

Your point about enabling the proprietary features in a package (misleadingly) named "-oss" is valid however. Since I never had a strong opinion about whether it's on or off by default anyway, I've disabled it by default.

Fafa123 commented on 2017-04-27 21:54

1. Just because you build the binary yourself does not make it a different package. It literally is the exact same package if you keep the product_json.patch (at least that is what Microsoft is saying and why should they lie it is obvious that the extension gallery is the telemetry source).

2. The patch is optional yes. Though it is illogical to call this package oss if you enable the patch by default.

3. What is stopping you from doing it the other way around? Disable the patch and inform the user to enable it (which enables telemetry and the extension gallery). Then keeping the name OSS is perfectly valid. Currently this is not unfortunate. This is just terribly misleading. I don't want to blame you or anything, neither is this Debian repo I get that. But we all should strive for clear and obvious namings especially in such a simple case. There is no reason at all to keep the product_json.patch be applied by default just because some idiots don't understand what OSS means.

As for the name in the AUR: The package you build from this (if OSS) is not called visual-studio-code anyway (refer to the product_json.patch). The OSS version is called "Code" not "Visual Studio Code". What you are doing here is mixing up the OSS "Code" with the propertiary "Visual Studio Code". According to your explanation BOTH visual-studio-code* AND *code-oss are invalid names for this package.

Zrax commented on 2017-04-27 04:16

@Fafa123: This package is not identical to visual-studio-code:
1) This package is built from source, whereas the other downloads a pre-built binary tarball. Regardless of patches applied, this is a key difference for some people who prefer packages built from soruce. Also, the closed-source build contains other differences than just the manifest (the most obvious being the name and icon used by the built application).
2) The patch is optional. During install, it is clearly stated that a non-free patch is applied, and gives instructions on how to disable it if desired. I considered putting this in the build step interactively, but doing so would break some AUR tools that don't provide any way to interact with a PKGBUILD.
3) The patch was added as an option because people complain either way -- if I remove the patch, they complain that some features don't work (as intended), and if I keep it, people complain that it's no longer open source (as in your case). Hence, I made it optional. I'm afraid I can't please everyone.

Side note: The package name is unfortunate. Technically speaking according to AUR policies, the other one should be named -bin and this one should not have a suffix, but the other had already existed and the maintainer didn't want to rename it since it already had many users by the time I created this version.

chicomag commented on 2017-04-24 13:45

For me, this package is useful, since the other one is only available for x86, and I can compile this one for ARM.

Fafa123 commented on 2017-04-20 18:53


As soon as you apply the product_json.patch patch (specifically bc it is enabled by default) you are compiling this (COMMERCIAL) package just with some different metadata.

Also providing two licenses saying only one applies depending on how the package is built is very bad practice.
If this is intentional this is a huge scam and the packager should be banned for life time with his keys being invalidated.
If this is just a mistake please correct it for example by removing the product_json.patch. Else there is no reason for this package to stay since there already is a (way more popular) commercial VSCode package in the AUR (see above).

BuZZ-dEE commented on 2017-04-20 13:38

I can not update anymore. I get the following error.:

==> Beginne build()...
npm ERR! git clone --template=/home/username/.electron-gyp/.npm/_git-remotes/_templates --mirror git:// /home/username/.electron-gyp/.npm/_git-remotes/git-github-com-jrieken-v8-profiler-git-bc0803a4d4b2150b8a1bbffa80270769007036c2-277eeebf: Klone in Bare-Repository '/home/username/.electron-gyp/.npm/_git-remotes/git-github-com-jrieken-v8-profiler-git-bc0803a4d4b2150b8a1bbffa80270769007036c2-277eeebf' ...
npm ERR! git clone --template=/home/username/.electron-gyp/.npm/_git-remotes/_templates --mirror git:// /home/username/.electron-gyp/.npm/_git-remotes/git-github-com-jrieken-v8-profiler-git-bc0803a4d4b2150b8a1bbffa80270769007036c2-277eeebf: fatal: unable to connect to
npm ERR! git clone --template=/home/username/.electron-gyp/.npm/_git-remotes/_templates --mirror git:// /home/username/.electron-gyp/.npm/_git-remotes/git-github-com-jrieken-v8-profiler-git-bc0803a4d4b2150b8a1bbffa80270769007036c2-277eeebf:[0:]: errno=Die Wartezeit für die Verbindung ist abgelaufen
npm ERR! git clone --template=/home/username/.electron-gyp/.npm/_git-remotes/_templates --mirror git:// /home/username/.electron-gyp/.npm/_git-remotes/git-github-com-jrieken-v8-profiler-git-bc0803a4d4b2150b8a1bbffa80270769007036c2-277eeebf:[1:]: errno=Die Wartezeit für die Verbindung ist abgelaufen
npm ERR! Linux 4.9.22-1-lts
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" "--arch=x64"
npm ERR! node v7.7.4
npm ERR! npm v4.1.2
npm ERR! code 128

npm ERR! Command failed: git clone --template=/home/username/.electron-gyp/.npm/_git-remotes/_templates --mirror git:// /home/username/.electron-gyp/.npm/_git-remotes/git-github-com-jrieken-v8-profiler-git-bc0803a4d4b2150b8a1bbffa80270769007036c2-277eeebf
npm ERR! Klone in Bare-Repository '/home/username/.electron-gyp/.npm/_git-remotes/git-github-com-jrieken-v8-profiler-git-bc0803a4d4b2150b8a1bbffa80270769007036c2-277eeebf' ...
npm ERR! fatal: unable to connect to
npm ERR![0:]: errno=Die Wartezeit für die Verbindung ist abgelaufen
npm ERR![1:]: errno=Die Wartezeit für die Verbindung ist abgelaufen
npm ERR!
npm ERR!
npm ERR!
npm ERR! If you need help, you may report this error at:
npm ERR! <>

npm ERR! Please include the following file with any support request:
npm ERR! /tmp/yaourt-tmp-username/aur-visual-studio-code-oss/src/vscode/npm-debug.log
==> FEHLER: Ein Fehler geschah in build().
Breche ab...
==> FEHLER:Makepkg konnte visual-studio-code-oss nicht erstellen.
==> Erstellen von visual-studio-code-oss neu starten?[j/N]
==> ------------------------------------------------------

sadmansk commented on 2017-04-15 02:15

The "Icon" field in the .desktop file should be changed from `Icon=/usr/share/code-oss/resources/app/resources/linux/code.png` to `Icon=code.png`. It doesn't work otherwise.

Zrax commented on 2017-04-11 18:04

No particular reason... It likes to be self-contained, but it can do that just as well from /usr/share as from /opt, so I've updated it to install to its preferred path instead.

All comments