標籤:

應該選 VSCode 還是 VSCodium?

vscode發布的二進位包並不是MIT許可證的,並且包含了遙測和跟蹤,這對於一部分自由軟體信仰者來說難以接受。

vscodium主頁寫到:「These binaries are licensed under the MIT license. Telemetry is enabled by a build flag which we do not pass.」

這樣看來,vscodium似乎是一個更好的選擇。

但是,按照vscodium的說法,如果按照官方編譯指南build,弄出來的也是MIT許可證的,那這就是說一些發行版官方源里的vscode包和一些第三方軟體倉庫里的vscode的git包也是MIT許可證的了?

拿arch來舉例,我的問題是:官方源里的code、aur里的code-git、aur里的vscodium、vscode release page的包、vscodium release page的包,它們都有什麼區別?應該選哪個?

相關鏈接:

Microsoft/vscode

VSCodium/vscodium

You Think the Visual Studio Code binary you use is a Free Software? Think again.


Chromium 足夠開源吧?許可也沒問題啊?但有些人還是不能接受 Chromium 和 Google 服務之間的捆綁,於是創建了一個叫做 ungoogled-chromium 的項目。

大概類似的,VS Code 默認會跟蹤用戶的部分行為,官方二進位也是微軟定製出來的。所以……

世界上總有想更加自由並為之付出的人,我從來不會評判這些項目。某種程度上,我支持這些人的存在。


哦對了,回到問題,該怎麼選擇。前提:我更偏向於用更自由的東西,我是純 Linux 用戶。

但我不用 ungoogled-chromium,因為我使用 Google 的頻率極高,Chromium 綁定了 Google 服務對我而言利遠遠大於弊。更何況我是中國人,它是 Google,隱私收集的危害性相比海外用戶低得多得多。所以我能接受捆綁了大量 Google 服務的 Chromium。

VS Codium 不是很了解。微軟收集用戶行為可以用配置文件關掉。解綁微軟服務是不可能的(不然你擴展商店怎麼使用),況且好像也沒解綁微軟的服務。VS Codium 我剛裝了一下,和 VS Code 的區別很小,但是我還是沒選擇它,因為它更新有點慢。。。


vscodium 項目頁引用的一句話說的很明白了

When we [Microsoft] build Visual Studio Code, we do exactly this. We clone the vscode repository, we lay down a customized product.json that has Microsoft specific functionality (telemetry, gallery, logo, etc.), and then produce a build that we release under our license.

When you clone and build from the vscode repo, none of these endpoints are configured in the default product.json. Therefore, you generate a "clean" build, without the Microsoft customizations, which is by default licensed under the MIT license

微軟打包release二進位,是在倉庫的基礎上定製的product.json,定製的東西主要是作為產品的品牌。而如果你自行構建二進位,倉庫里的 product.json 默認是不包含這些定製的。

vscodium 項目定製了自己的 product.json :

https://github.com/VSCodium/vscodium/blob/1b421c701cb739c2983c5de89dbcb108978a18e3/build.sh#L13?

github.com

並且沒有打開 Telemetry 的 build flag:

Telemetry is enabled by a build flag which we do not pass.

微軟倉庫:MIT

微軟的二進位:License - Visual Studio Code

vscodium 倉庫和二進位:MIT

至於arch幾個源里的東西,你需要去詢問包的維護者。我覺得作為品牌的圖標等東西,因為許可的原因,是不能放到arch官方源的。(所以我試了一下,還真是,官方源里的code圖標等東西都是另外的定製,或沒有額外定製,但是與微軟作為品牌的圖標不同)

arch源里的二進位包是MIT

而非官方的二進位release你就要詢問打包的人是否直接使用了微軟的二進位,如果沒有,就需要詢問怎麼處理品牌圖標,和構建參數的了,特別是由於是 MIT 許可,後續的二進位release是可以選取其他許可的。

archlinuxcn里的是直接使用了微軟的二進位:


你可以用azure devops代替github保存代碼,這樣你就可以在瀏覽器里運行vsonline,就跟vscode一模一樣,也能編譯和調試一些固定類型的程序。不用下載任何binary。


你既然開始選了,想必已經有答案了,

很多人根本不知道這個項目的存在,也就不用選。


如果你不介意使用chrome,那麼你也應該不介意使用vscode


如果糾結的話從GitHub的release界面下載就行,微軟對這個有說明的,在FAQ里。


從插件角度看,不少插件(例如CMake)在VSCodium是找不到的,影響使用體驗。應當選擇VSCode。


頭一次知道這個項目,感謝提問。我看沒什麼要緊的,不是自由軟體信仰者不必糾結。


vscodium和吸血驢是一樣的,只付出,不回饋

vscode會收集錯誤數據,目的是為了讓後續版本更好。vscodium享受這些改進,卻不願提交自己的數據。


推薦閱讀:

vs code寫markdown,預覽窗口能和編輯窗口同步滾動嗎?
vscode寫python的自動提示功能太慢,如何改善?
為啥VS安裝opencv要手動配置那麼多庫,pycharm安裝opencv就不用?
用vscode替代vim可行嗎?

TAG:VisualStudioCode |