π Describe the bug
"sync:download" does not install the extensions you specified when you ran "sync: upload/update".
π΄ Visual Studio Code Version : [ Version 1.27.2 (1.27.2) ]
π΄ Code Settings Sync Version : [ 3.1.2 ]
π΄ Operating System : [ MacOS Sierra 10.12.6 ]
π΄ Occurs On: [ Download ]
π΄ Proxy Enabled: [ NA ]
π΄ Gist Id: [ NA ]
π° To Reproduce
Steps to reproduce the behavior:
πͺ Expected behavior
The extensions we specified when we did the upload should be installed when we "sync: download" on a new machine.
πΊ Console Error Log
No errors, "sync: download" will just ignore any setting you choose in an attempt to get it to download the extensions you have listed.
πΊ Additional context
TO THE DEVELOPER- This Sync extension is really really great... if this "extension ignore bug" can be fixed this will really be a wonderful tool. Thank you for your help getting this solved.
I can confirm this.
Came here to report this as well.
I am confirming this on Solus. I am using the code-oss variant.
Confirming this:
VSCode 1.27.2
Code Sync 3.1.2
OS Linux Mint
Kernel 4.15.0-36-generic
Console output confirm extensions being installed or being already installed, but extensions do not load in VSCode.
Maybe related to this:
UPDATE:
I was able to solve the issue by uninstalling VSCode from the Software Manager and installing it from the .deb file with the Package Installer.
It seems that when installing through Software Manager the settings and extensions locations are different.
Hope this helps anyone else.
I have the same problem
vscode: 1.27.2 (user setup)
code sync: 3.1.2
os: Windows 10
It seems that when installing through Software Manager the settings and extensions locations are different.
Guys try using Package Installer .deb file
If you are using portable VS Code, Settings Sync dont support it.
Same to me.
Same
Upload summary:
CODE SETTINGS SYNC UPLOAD SUMMARY
Version: 3.1.2
--------------------
GitHub Token: ***
GitHub Gist: ***
GitHub Gist Type: Secret
Restarting Visual Studio Code may be required to apply color and file icon theme.
--------------------
Files Uploaded:
extensions.json > extensions.json
bat.json > bat.json
c.json > c.json
cpp.json > cpp.json
ftp-simple.json > ftp-simple.json
keybindings.json > keybindings.json
locale.json > locale.json
material-icon-theme.json > material-icon-theme.json
plaintext.json > plaintext.json
python.json > python.json
settings.json > settings.json
csharp.json > snippets|csharp.json
markdown.json > snippets|markdown.json
vsicons.settings.json > vsicons.settings.json
Extensions Ignored:
No extensions ignored.
Extensions Removed:
No extensions removed.
Extensions Added:
advanced-new-file v1.2.0
amvim v1.30.0
Angular2 v6.2.0
angular2-switcher v0.1.9
auto-rename-tag v0.0.15
battery-indicator v1.0.0
better-comments v2.0.2
Bookmarks v9.1.0
bootstrap4-vscode v4.3.0
bracket-pair-colorizer v1.0.60
code-settings-sync v3.1.2
code-spell-checker v1.6.10
comment v7.0.0
csharp v1.16.2
csharpextensions v1.3.0
csharpfixformat v0.0.75
dark-plus-material v1.4.3
debugger-for-chrome v4.10.2
docomment v0.1.2
docthis v0.7.1
dotnet-core-essentials v0.0.5
dotnet-test-explorer v0.5.4
eclipse-theme v0.0.9
EditorConfig v0.12.4
expand-region v0.1.2
FlatUI v1.4.8
flow-for-vscode v0.8.4
ftp-sync v0.3.3
gitlens v8.5.6
Go v0.6.91
html-css-class-completion v1.17.1
html-tag-wrapper v0.2.3
HTMLHint v0.5.0
java v0.32.0
JavaScriptSnippets v1.7.1
Lisp v0.1.8
MagicPython v1.1.0
markdown-all-in-one v1.6.2
markdown-checkbox v1.3.0
markdown-preview-enhanced v0.3.8
Material-theme v2.17.3
mips v0.0.2
mono-debug v0.15.8
ng-template v0.1.10
node-debug2 v1.28.3
open-in-browser v2.0.0
org-mode v0.5.0
path-intellisense v1.4.2
php-debug v1.12.6
php-formatter v0.2.4
plastic v2.2.0
PowerShell v1.9.0
prettier-vscode v1.6.1
preview-vscode v1.4.4
project-manager v9.0.1
python v2018.9.0
python v0.2.3
quicktype v12.0.46
rainglow v1.5.2
rust v0.4.10
spacemacs v1.1.1
theme-dark-monokai v0.3.0
theme-dracula v2.14.1
theme-karyfoundation-themes v18.2.1
theme-panda v1.3.0
tslint v1.0.40
typescript-javascript-grammar v0.0.45
typings-installer v0.2.0
vscode-angular2-files v1.6.2
vscode-autohotkey v0.2.2
vscode-clock v0.0.1
vscode-color v0.4.5
vscode-docker v0.3.1
vscode-eslint v1.6.0
vscode-firefox-debug v1.7.0
vscode-great-icons v2.1.44
vscode-html-css v0.2.0
vscode-icons v7.27.0
vscode-ipaddress v1.0.0
vscode-java-debug v0.14.0
vscode-language-pack-zh-hans v1.28.2
vscode-markdownlint v0.20.0
vscode-nuget-package-manager v1.1.6
vscode-power-mode v2.2.0
vscode-react-native v0.6.18
vscode-rust v0.4.2
vscode-table-formatter v1.2.1
vscode-versionlens v0.21.2
--------------------
Done.
Download summary:
CODE SETTINGS SYNC DOWNLOAD SUMMARY
Version: 3.1.2
--------------------
GitHub Token: ***
GitHub Gist: ***
GitHub Gist Type: Secret
Restarting Visual Studio Code may be required to apply color and file icon theme.
--------------------
Files Downloaded:
bat.json > bat.json
c.json > c.json
cpp.json > cpp.json
extensions.json > extensions.json
ftp-simple.json > ftp-simple.json
keybindings.json > keybindings.json
locale.json > locale.json
material-icon-theme.json > material-icon-theme.json
plaintext.json > plaintext.json
python.json > python.json
settings.json > settings.json
snippets|csharp.json > snippets|csharp.json
snippets|markdown.json > snippets|markdown.json
vsicons.settings.json > vsicons.settings.json
Extensions Ignored:
No extensions ignored.
Extensions Removed:
No extensions removed.
Extensions Added:
No extensions installed.
--------------------
Done.
I have the same problem
vscode: 1.27.2 (user setup)
code sync: 3.1.2
os: Windows 10
This problem persists if the extension autoupdate is disabled.
@ZhangYue-vhyt
are you using OSS or standard ?
can you show the image the developer console. Clearing the console and hit download and see what is written in developer console.
Same problem, it's because of the OSS version somehow.
I then changed to the closed source verison 1.28.0 and the settings sync is working.
Visual Studio Code Version : [ Version 1.28.1 (system setup)]
π΄ Code Settings Sync Version : [ 3.1.2 ]
π΄ Operating System : [ windows10 1703[x64] ]
π΄ Occurs On: [ Download ]
π΄ Proxy Enabled: [ NA ]
π΄ Gist Id: [ NA ]
Same issue with OSS version (the one bundled in Solus)
Share the developer console log, v3.2 is going to publish in a week. I will try to add this in v3.2
I only have this :
[Extension Host] Sync : Connected with user : 'Wykks' (at GitHubService.github.users.get.then.res (/home/[user]/.vscode/extensions/shan.code-settings-sync-3.1.2/out/src/service/githubService.js:76:25))
[Extension Host] /usr/share/vscode/code-oss (at Function.<anonymous> (/home/[user]/.vscode/extensions/shan.code-settings-sync-3.1.2/out/src/service/pluginService.js:214:21))
My code config is here /home/[user]/.config/Code (but it's a symbolic link to /home/[user]/.config/Code - OSS)
Extensions (as shown in console log) are here : /home/[user]/.vscode
I'm having the same issue:
Visual Studio Code Version : OSS [ Version 1.27.2 (1.27.2) ]
Code Settings Sync Version : [ 3.2.0 ]
Operating System : [ Manjaro Linux ]
I'm having the same issue:
Visual Studio Code Version : OSS [ Version 1.27.2 (1.27.2) ]
Code Settings Sync Version : [ 3.2.0 ]
Operating System : [ Manjaro Linux ]
Update VSCode to 1.28 in AUR can solve this problem.
Can you guys update using latest version of code and settings sync v3.2.2
This is still broken on the latest version. Also is there a way for this extension to stop defaulting to .config/Code on the OSS version on Linux. I have to manually symlink the .config/Code - OSS folder so the extension doesn't crash
I have same problem.
My environment is recent Arch Linux and using package community/code.
Settings Sync version is 3.2.2.
When executing > Sync: Download Settings, I get this error message on OUTPUT view.
"bin/code" --install-extension eamodio.gitlens
Error: Command failed: "bin/code" --install-extension eamodio.gitlens
/bin/sh: no such file or directory: bin/code
Digging around the code, I assumed that problem is here
Arch Linux's /usr/bin/code of community/code is a script something like
ELECTRON_RUN_AS_NODE=1 exec electron /usr/lib/code/out/cli.js /usr/lib/code/code.js "$@"
here's the source
And finally the process is running with something like
/usr/lib/electron/electron (with..lots..of..arguments)
Therefore I think you should not rely that process.argv0 ends with code.
In case of using aur/visual-studio-code-bin package, this problem won't occur since process is running with /opt/visual-studio-code/code, and also /opt/visual-studio-code/bin/code exists.
I have same problem.
My environment is recent Arch Linux and using packagecommunity/code.
Settings Sync version is3.2.2.
When executing> Sync: Download Settings, I get this error message on OUTPUT view."bin/code" --install-extension eamodio.gitlens Error: Command failed: "bin/code" --install-extension eamodio.gitlens /bin/sh: no such file or directory: bin/codeDigging around the code, I assumed that problem is here
Arch Linux's
/usr/bin/codeofcommunity/codeis a script something like
ELECTRON_RUN_AS_NODE=1 exec electron /usr/lib/code/out/cli.js /usr/lib/code/code.js "$@"
here's the sourceAnd finally the process is running with something like
/usr/lib/electron/electron (with..lots..of..arguments)Therefore I think you should not rely that
process.argv0ends withcode.In case of using
aur/visual-studio-code-binpackage, this problem won't occur since process is running with/opt/visual-studio-code/code, and also/opt/visual-studio-code/bin/codeexists.
Don't use the package community/code.
I found the cause, a workaround and PR'd.
The root cause seems to be that the extension tries to run the vscode cli but has the wrong path to it: https://github.com/shanalikhan/code-settings-sync/blob/b6c9f4c887/src/service/pluginService.ts#L312
I'm on Solus Linux, with VS Code from the Software Center, so my cli is in /usr/share/vscode/bin/code-oss while the extension tries to run /usr/share/vscode/bin/code. Creating a symlink between the two fixes the issue for me.
Note that I also symlinked /usr/bin/code-oss and /usr/bin/code, though I don't believe it's related (give it a go without).
Workaround for Arch Linux: change p="bin/code" to p="/bin/code" in extension.js. the problem is that is looking for bin/code that command clearly does not exists. Maybe a solution for extension in add / in they cannot locate where code command is.
For lazy people like me who really wanted to not have to understand anything, here's a step by step:
On Arch, with the community edition:
open ~/.vscode-oss/extensions/shan.code-settings-sync-3.2.4/out/extension.js (of course, when this comment is outdated, maybe change the version of the extension to match yours)
do a search and replace "bin/code by "/bin/code (add a slash), save.
Re-open vscode, ctrl+shift+p, choose: Sync: Reset Extension Settings. Provide your Github token again, your Github id again, and voila. You're set.
Can confirm workaround by @statefull works on arch.
Workaround for Windows 10: change p="bin/code" to p="C:\\Program Files\\VSCodium\\bin\\vscodium" in ~\.vscode-oss\extensions\shan.code-settings-sync-3.2.5\out\extension.js
~@shanalikhan I believe the issue lies with line 310 and 318 shown below. bin/code misses the target executable in the OSS version.~ nevermind, I see #739 is already on it
https://github.com/shanalikhan/code-settings-sync/blob/b6c9f4c8875acf50d8c446407f01e1d671a0af6f/src/service/pluginService.ts#L304-L320
For lazy people like me who really wanted to not have to understand anything, here's a step by step:
On Arch, with the community edition:
open
~/.vscode-oss/extensions/shan.code-settings-sync-3.2.4/out/extension.js(of course, when this comment is outdated, maybe change the version of the extension to match yours)do a search and replace
"bin/codeby"/bin/code(add a slash), save.Re-open vscode, ctrl+shift+p, choose:
Sync: Reset Extension Settings. Provide your Github token again, your Github id again, and voila. You're set.
And for the extra lazy :)
sed -i 's#"bin/code"#"/bin/code"#g' ~/.vscode-oss/extensions/shan.code-settings-sync-*/out/extension.js
I had this issue with VSCodium.
The issue was that the cmd which could be run in the CLI is vscodium and not code.
This could be tested by running vscodium and code in a terminal. Only vscodium actually opens the editor.
Fixed by navigating to C:\Program Files\VSCodium\bin, copying the vscodium.cmd and renaming it to code.cmd.
The setting are saved in the folder
~$HOME/.config/code - OSS
in the OSS version of VScode! The plugin save their setting in the ~$HOME/.config/code
That's why it's not working! Some other pluggins aren't working for the same reason. They probably hardcode the config folder $PATH
I'm on Solus 4
I'll take a look tomorrow if I can make a fix for it
Edit: I looked at it and need to take some time to fix it, if you want a quick fix for now, install the snap of vscode snap install vscode --classic, install sync and sync your things, remove the snap with snap remove vscode and install the OSS version with the Solus package manager. Everything's working now
p.s. The fix will work for all the versions(VsCodium, OSS and Insiders) and all the platforms
Instead of setting the path for extension directory and settings (like in the #739) I would suggest PR that should not expose these path but handle the path itself.
For example, vscode portable which allows Settings Sync to read env variables to setup the User and extension folders path.
We need to see if vscode api provide some identifiers or environment variables to read from while loading up the Settings Sync for code OSS versions.
In case, we cant find such information for OSS version. We need to wait for code team to expose such paths.
Similar issue opened https://github.com/shanalikhan/code-settings-sync/issues/411
Pending for :
https://github.com/Microsoft/vscode/issues/2741
https://github.com/Microsoft/vscode/issues/66029
I will urge you to ask vscode to expose the user-dir and extension-dir (in those tickets) paths to allow authors to read them directly instead of other hard ways.
Meanwhile, for now you can fix this by apply the solution proposed in above posts in this thread.
I think you may be right regarding installing with the cli. But there is the issue of useCliBaseInstallation not doing anything. Fixing that issue will enable OSS users to use the extension as intended.
Replicated on VSCodium 1.33.1 (Windows 10)
For me the settings download works but not extension downloading.
@shanalikhan I would like to propose we bypass this issue entirely and move to using the new VSCode API at https://code.visualstudio.com/updates/v1_33#_install-extension-command
Yes you are right, I noticed this also.
PR is welcome or i will look into this after sometime.
The PR should completely replace the currently command line installation with new VSCode API.
I'll see if I can find some time after school lets out.
@shanalikhan I have some good news regarding finding the code folder. this.context.globalStoragePath results in CodeFolder/User/globalStorage/Shan.code-settings-sync, so we can traverse up 3 directories to get the code folder. I am currently working on implementing this method, along with using the new installExtension command in the plugin service.
Here is the prebuilt version of my PR, #859: https://cdn.discordapp.com/attachments/549007146868539408/574452219064352768/code-settings-sync-3.2.9.vsix. If anyone is willing to test it on their machine, that would be great. Instructions on how to install the VSIX can be found here.
Regarding the new VSCode API, I have opened a new issue on the official repository requesting for a command to uninstall extensions, as that would completely remove the need for the CLI.
Here is the prebuilt version of my PR, #859: https://cdn.discordapp.com/attachments/549007146868539408/574452219064352768/code-settings-sync-3.2.9.vsix. If anyone is willing to test it on their machine, that would be great. Instructions on how to install the VSIX can be found here.
Regarding the new VSCode API, I have opened a new issue on the official repository requesting for a command to uninstall extensions, as that would completely remove the need for the CLI.
I attempted to install using your VSIX @arnohovhannisyan on a fresh Ubuntu 18.04 and am receiving this message for all my extensions:
"/bin/app" --install-extension CoenraadS.bracket-pair-colorizer
Error: Command failed: "/bin/app" --install-extension CoenraadS.bracket-pair-colorizer
/bin/sh: 1: /bin/app: not found
This feature is currently missing hence blocking OSS implementation in Settings Sync.
https://github.com/microsoft/vscode/issues/73309
You guys can upvote it over there and ask vscode team to implement it :)
Added to the May 2019 milestone for VSCode π
this temporary solution work.
https://github.com/shanalikhan/code-settings-sync/issues/866#issuecomment-489223683
As a temporary solution, you can use this version: https://cdn.discordapp.com/attachments/549007146868539408/576214978931982336/code-settings-sync-3.2.9.vsix.
It uses the API instead of CLI to install extensions only, and uninstallation via the CLI will also be implemented when it comes out.
I tried 3.2.9 and manual installation of the VSIX, no luck.
Both Code and Code Insiders installed with snap.
Is it possible to get the sourcemap for out/extension.js ?
Here's the output:
[Extension Host] Sync : Connected with user : 'gaui'
workbench.main.js:238 [Extension Host] TypeError: i.forEach is not a function
at e.module.exports.e.ShowSummaryOutput (/home/gaui/.vscode/extensions/shan.code-settings-sync-3.2.9/out/extension.js:176:111163)
at /home/gaui/.vscode/extensions/shan.code-settings-sync-3.2.9/out/extension.js:176:88632
at /home/gaui/.vscode/extensions/shan.code-settings-sync-3.2.9/out/extension.js:176:78085
at Object.module.exports.i [as next] (/home/gaui/.vscode/extensions/shan.code-settings-sync-3.2.9/out/extension.js:176:78190)
at s (/home/gaui/.vscode/extensions/shan.code-settings-sync-3.2.9/out/extension.js:176:76936)
t.log @ workbench.main.js:238
$logExtensionHostMessage @ workbench.main.js:3178
_doInvokeHandler @ workbench.main.js:3252
_invokeHandler @ workbench.main.js:3252
_receiveRequest @ workbench.main.js:3251
_receiveOneMessage @ workbench.main.js:3249
_protocol.onMessage.e @ workbench.main.js:3248
fire @ workbench.main.js:77
a @ workbench.main.js:321
e @ workbench.main.js:321
fire @ workbench.main.js:77
_receiveMessage @ workbench.main.js:330
S._socketDisposables.push._socketReader.onMessage.e @ workbench.main.js:327
fire @ workbench.main.js:77
acceptChunk @ workbench.main.js:323
_register._socket.onData.e @ workbench.main.js:323
t @ workbench.main.js:332
emit @ events.js:182
addChunk @ _stream_readable.js:279
readableAddChunk @ _stream_readable.js:264
Readable.push @ _stream_readable.js:219
onread @ net.js:636
workbench.main.js:2365 Sync : Error Logged In Console (Help menu > Toggle Developer Tools).
@gaui Here is a version with the source maps: https://cdn.discordapp.com/attachments/549007146868539408/585286719155208193/code-settings-sync-3.2.9.vsix
@arnohovhannisyan Thank you, finally got it working at home. Will report if it doesn't work at my office.
Yes this works very well. Is this different from 3.2.9 in the marketplace?
@gaui This is a build of #859, which will probably be released in v3.3.0.
Settings Sync now officially supports OSS versions.
I have released new version of Settings Sync v3.3.0 fixing this issue. Im closing this ticket let me know if u guys run into some problem.
Settings Sync now officially supports OSS versions.
I have released new version of Settings Sync v3.3.0 fixing this issue. Im closing this ticket let me know if u guys run into some problem.
I'm facing same issue with latest version of settings sync, wherein i'm unable to install extensions though some of the other settings are being synced.
Version: 1.50.1 (user setup)
Commit: d2e414d9e4239a252d1ab117bd7067f125afd80a
Date: 2020-10-13T15:06:15.712Z
Electron: 9.2.1
Chrome: 83.0.4103.122
Node.js: 12.14.1
V8: 8.3.110.13-electron.0
OS: Windows_NT x64 10.0.17134
Settings Sync: v3.4.3
Hi @rjayswal-pythonista, I've faced with the same issue, but it turned out that code-setting-sync worked properly. The problem was that in my config were extensions that is absent in Marketplace that vscodium is bundled with.
same here. Arch Linux. Code OSS not syncing
"sync error. registered at console (menΓΊ help> Activate help > Toggle developer tools"
Fedora not syncing either
Most helpful comment
Workaround for Arch Linux: change p="bin/code" to p="/bin/code" in extension.js. the problem is that is looking for bin/code that command clearly does not exists. Maybe a solution for extension in add / in they cannot locate where code command is.