ArchLinux下VSCode无法联网下载扩展
1. 简介
VSCode 作为「宇宙最强编辑器」,在日常生活办公中自然不可或缺。VSCode 目前有好几个版本,分别是 Code-OSS、Visual-Studio-Code 以及 VSCodium,它们的区别是:
- Code-OSS 是通过官方源码编译的开源版本。
- Visual-Studio-Code 是微软官方版本,专有软件。
- VSCodium 是社区驱动的完全开源版本。
至于它们具体的功能区别参见微软官方介绍 Differences between the repository and Visual Studio Code。
2. 问题
Code-OSS 和 VSCodium 作为开源版本,因此微软并没有将扩展商店的 url 提供出来,从而导致这两个版本无法正常联网下载微软源中的扩展(VSCodium 可以下载 open-vsx 源中的扩展)。对于这两个版本,我个人安装的软件包对应为:code、vscodium-bin,如果想要下载微软源中的扩展,它们的解决方案有两种:
2.1 安装 AUR 软件
对于开源版本无法联网下载扩展的问题,已经有大佬在 AUR 上传了对应软件包解决这个问题。
- 对于 code,需要安装 code-marketplace 包:
1 | yay -S code-marketplace |
- 对于 vscodium-bin,需要安装 vscodium-bin-marketplace 包:
1 | yay -S vscodium-bin-marketplace |
2.2 手动修改 product.json
由微软官方介绍 Differences between the repository and Visual Studio Code 可知,开源版本都维护了一个 product.json
文档来进行私有设置,而扩展商店 url 的设置也在其中,因此我们可以修改 product.json
中扩展商店的 url 来解决问题。
- 对于 code,
product.json
在 ArchLinux 上的路径为/usr/lib/code/product.json
。 - 对于 vscodium-bin,
product.json
在 ArchLinux 上的路径为/usr/share/vscodium-bin/resources/app/product.json
。
具体做法是将 product.json
中的以下代码
1 | "extensionsGallery": { |
替换为
1 | "extensionsGallery": { |
【注】其实使用第一种方案本质上主要是修改了 product.json
中的这段代码,大家可以在使用第一种方案后尝试对比安装前后的 product.json
的区别。
附录
参考资料:
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 お前はどこまで見えている!
评论
WalineTwikoo