Open Konglomneshued opened 1 year ago
mann why do none of those work for me.. what pkg do you have for vs code on arch guys?
I use code
code-features
and code-marketplace
mann why do none of those work for me.. what pkg do you have for vs code on arch guys? I use
code
code-features
andcode-marketplace
I am using visual-studio-code-bin 1.81.0-1
from AUR and setting:
"password-store": "gnome"
in argv.json
works. Of course, for this to work, you need to install and setup gnome-keyring-daemon. The guide I used.
Of course, for this to work, you need to install and setup gnome-keyring-daemon. The guide I used.
Alright I will check this out thanks ! I didnt instal gnome-keyring manually since it was a dependency of code-features
on AUR but that might be part of the problem
Why does VSCode even attempt to initialize the keyring integration when one doesn't attempt to use the settings sync feature?
Why does VSCode even attempt to initialize the keyring integration when one doesn't attempt to use the settings sync feature?
It is not only used for the settings sync feature. It also handle secrets (such as auth against Github for example)
For those with NixOS, I spotted that there's now a fix in master
while investigating this (Thanks @BlankParticle):
https://github.com/NixOS/nixpkgs/commit/ed2f5f18292f238762fde3a2076ee727c029e917
(Also, hint for others can be to check your LD_LIBRARY_PATH
, turned out mine was messed up so I had to fix that too)
check your
LD_LIBRARY_PATH
, turned out mine was messed up so I had to fix that too
How exactly did you fix that and how is it messed up? mine is just empty
check your
LD_LIBRARY_PATH
, turned out mine was messed up so I had to fix that tooHow exactly did you fix that and how is it messed up? mine is just empty
I had a module that was badly written;
environment.sessionVariables.LD_LIBRARY_PATH = lib.mkIf config.gpu.nvidia.enableVulkan "${pkgs.vulkan-loader}/lib:${pkgs.wayland}/lib:$LD_LIBRARY_PATH";
Which ended up being LD_LIBRARY_PATH='/some-correct-paths:$LD_LIBRARY_PATH'
(literally $LD_LIBRARY_PATH
as path instead of expanded, so a bunch of library paths was missing instead of being appended, including libsecret
). I just removed it since I don't need it and restarted
I noticed it was incorrect when I manually wanted to start VSCode with libsecret my known existing path (LD_LIBRARY_PATH=/nix/store/2iann9zk6bkm3cdi7vx4wa3hmc49zfmx-libsecret-0.20.5/lib code-insiders)
Oh yeah, some other stuff I investigated while troubleshooting (maybe useful info for some):
libgnome-keyring
, but that was a dead end (producing OSCrypt tried Libsecret but couldn't initialise.
), so probably no point in trying thatI ensured my gnome-keyring-daemon
was started with secrets
(the --components=pkcs11,secrets,ssh
argument). That wasn't the issue since that was already my case, but might worth checking.
# If using nixos home-manager
services.gnome-keyring.components = ["pkcs11" "secrets" "ssh"];
Same on Sway WM. Launching with
$ code --password-store="gnome"
does not work, but adding"password-store":"gnome"
toargv.json
works.
For me it's the exact opposite: $ code --password-store="gnome"
works, but adding "password-store":"gnome"
to argv.json
has no effect.
I am using i3wm under Debian 12 with code 1.81.1. Gnome Keyring is set up, unlocked, and works both in terminal and if using the --pasword-store="gnome"
argument when starting gnome.
Turns out, for VS code to detect the keyring properly, I need two things:
password-store
must be set to gnome
or gnome-libsecret
SSH_AUTH_SOCK
must be set to /run/user/1000/keyring/ssh
Since the latter isn't possible in the argv.json
file, it explains why it didn't work properly for me.
Conclusion: VS code is not detecting the SSH auth socket properly under i3.
Same issue here.
OS: Debian 11.7 DM: LXDE gnome-keyring: installed vscode version:
Version: 1.81.1
Commit: 6c3e3dba23e8fadc360aed75ce363ba185c49794
Date: 2023-08-09T22:18:39.991Z
Electron: 22.3.18
ElectronBuildId: 22689846
Chromium: 108.0.5359.215
Node.js: 16.17.1
V8: 10.8.168.25-electron.0
OS: Linux x64 5.10.0-25-amd64
code --verbose --vmodule="*/components/os_crypt/*=1"
[12327:0822/100731.239240:VERBOSE1:key_storage_util_linux.cc(54)] Password storage detected desktop environment: (unknown)
[12327:0822/100731.293536:WARNING:bluez_dbus_manager.cc(247)] Floss manager not present, cannot set Floss enable/disable.
[main 2023-08-22T08:07:31.373Z] [File Watcher (node.js)] Request to start watching: /home/username/.config/Code/User (excludes: <none>, includes: <all>),/home/username/.config/Code/User/settings.json (excludes: <none>, includes: <all>)
[main 2023-08-22T08:07:31.384Z] Sending env to running instance...
[main 2023-08-22T08:07:31.385Z] [File Watcher (node.js)] Started watching: '/home/username/.config/Code/User'
[main 2023-08-22T08:07:31.387Z] [File Watcher (node.js)] Started watching: '/home/username/.config/Code/User/settings.json'
[main 2023-08-22T08:07:31.498Z] Sent env to running instance. Terminating...
[main 2023-08-22T08:07:31.498Z] Lifecycle#kill()
[main 2023-08-22T08:07:31.498Z] Lifecycle#onWillShutdown.fire()
running code --password-store="gnome"
works fine:
[...]
[13427:0822/102309.688473:VERBOSE1:key_storage_linux.cc(122)] Selected backend for OSCrypt: GNOME_ANY
[13427:0822/102309.718354:VERBOSE1:key_storage_linux.cc(174)] OSCrypt using Libsecret as backend.
[13427:0822/102309.735978:VERBOSE1:key_storage_libsecret.cc(53)] Libsecret key created: 2023-08-22 07:46:33.000 UTC
[13427:0822/102309.736039:VERBOSE1:key_storage_libsecret.cc(54)] Libsecret key last modified: 2023-08-22 07:46:33.000 UTC
[...]
adding "password-store": "gnome"
to ~/.vscode/argv.json also works without errors
This is working in version 1.79.2.23166 and seems to have been broken in version 1.80 The workaround is to install an older version.
I had This Issue for a while on the Linux Mint . This worked: you can make the flag permanent by editing the code-flags.conf file in your .config directory. To do this, open your terminal type nano ~/.config/code-flags.conf, and press enter. This will open the file in a text editor. In the file, add a new line with the flag --password-store=“gnome” and save the file by pressing Ctrl+O and then Ctrl+X.
I had This Issue for a while on the Linux Mint . This worked: you can make the flag permanent by editing the code-flags.conf file in your .config directory. To do this, open your terminal type nano ~/.config/code-flags.conf, and press enter. This will open the file in a text editor. In the file, add a new line with the flag --password-store=“gnome” and save the file by pressing Ctrl+O and then Ctrl+X.
That didn't work for me, as well as many people in this thread, if the solution was that simple, I wouldn't have gone through the trouble of trying 20 previous versions until I found a working one.
As a follow up update, I started to use https://github.com/nullobsi/pass-secrets which is a org.freedesktop.secrets
compatible implementation using pass
as its backend, which is powered by gpg keys. Needless to say, VSCode will still not work. I'm not sure what's changed between its attempts to use SecretService
, but it needs to be changed because these things worked before and don't anymore.
EDIT: To prove I have a compatible and compliant api, I print out all active DBus services in my session, and you can see org.freedesktop.secrets
is part of them.
$ dbus-send --print-reply --dest=org.freedesktop.DBus /org/freedesktop/DBus org.freedesktop.DBus.ListNames
method return time=1693453065.236544 sender=org.freedesktop.DBus -> destination=:1.409 serial=3 reply_serial=2
array [
string "org.freedesktop.DBus"
string "org.freedesktop.impl.portal.desktop.gtk"
string "org.freedesktop.Notifications"
string "org.freedesktop.ReserveDevice1.Audio0"
string ":1.8"
string "com.github.Aylur.ags"
string "org.freedesktop.portal.Desktop"
string ":1.9"
string ":1.307"
string ":1.407"
string ":1.308"
string "org.a11y.Bus"
string "org.freedesktop.systemd1"
string ":1.409"
string "org.freedesktop.impl.portal.PermissionStore"
string ":1.10"
string ":1.22"
string ":1.0"
string "org.pulseaudio.Server"
string ":1.25"
string ":1.1"
string ":1.398"
string ":1.26"
string ":1.15"
string "org.freedesktop.secrets"
string ":1.399"
string ":1.16"
string ":1.312"
string ":1.17"
string ":1.324"
string ":1.313"
string "org.freedesktop.portal.Documents"
string "org.razer"
string ":1.325"
string ":1.19"
string ":1.6"
]
Here are the detailed steps that I used to fix this on my raspberry pi:
If it is still not working, check your VSCode logs by opening the latest main.log file in home/pi/.config/Code/logs/ If you see an error like the one below then you have made a mistake with the syntax when editing VSCode's settings. In my case, I had missed out a comma but you could also have missed out a quotation mark.
Hope this helps someone :)
I closed the window and apparently that took the same action as clicking "Use weaker encryption" (popup doesn't show anymore). I'm not sure where it stored that setting. Anyone has an idea how to revert that? (I would like that the popup keeps showing if this breaks again)
I closed the window and apparently that took the same action as clicking "Use weaker encryption" (popup doesn't show anymore). I'm not sure where it stored that setting. Anyone has an idea how to revert that? (I would like that the popup keeps showing if this breaks again)
@Ten0
press Ctrl + Shift + P --> search configure runtime argument --> then you will see the file
@pavanbhat1999
Thanks. However I didn't see any extra line in there following the closing of that window. Are you sure this is where configuring to insecure from the pop-up writes?
Having the same issue with keepassXC secret service integration turned on. I just curious when do you planing to fixing this issue it sucks to be on 1.79.2 version tbh
same issue: "Property password-store is not allowed." keyring: gnome wm: Awesomewm OS: Archlinux
Anyone able to make it work on NixOS?
Anyone able to make it work on NixOS?
home.file.".vscode/argv.json" = {
force = true;
text = ''
{
// "disable-hardware-acceleration": true,
"enable-crash-reporter": true,
// Unique id used for correlating crash reports sent from this instance.
// Do not edit this value.
"crash-reporter-id": "YOUR_CRASH_ID_HERE",
"password-store": "gnome"
}
'';
};
I just write the argv.json and call it a day
Does this work on .vscode-oss
? I think the arch linux package of vscode is the oss version, so I edit .vscode-oss/argv.json
with "password-store": "gnome"
and still no luck. I think my problem has to do with gnome-keyring not being initialized in login via PAM
edit: seems to be fixed by setting pam as said above: https://github.com/microsoft/vscode/issues/187338#issuecomment-1629789365
Ask 10 Persons, and you get 15 answers...here we go:
export DESKTOP_SESSION=xfce
code
on i3 will also do the job. Just checked on my Arch Linux i3 Desktop.
"password-store": "gnome"
Worked fine on hyprland after installing gnome-keyring. On nixos I had an snippet for gdm to unlock the keyring on start!!
On VS Code 1.83.1 under Mint 21.2 (Victoria), when I try to set "password-store": "basic" in argv.json, VS Code says "Property password-store is not allowed".
On VS Code 1.83.1 under Mint 21.2 (Victoria), when I try to set "password-store": "basic" in argv.json, VS Code says "Property password-store is not allowed".
Same, it seems still to work?
Does anyone have this problem on Windows? First time seeing this on Windows 10 Pro
I get this issue on Mac when logging into Github - either the Github Actions or Copilot extensions - has anyone run into this on Mac?
@sashap8 can you open a separate issue? It's probably not related to Linux.
When you open it, please follow the troubleshooting steps to make sure that you include the necessary information.
@sashap8 can you open a separate issue? It's probably not related to Linux.
When you open it, please follow the troubleshooting steps to make sure that you include the necessary information.
Thanks @TylerLeonhardt, I submitted an issue with system details and reproduction steps. I looked through common troubleshooting cases, but didn't find any that seemed relevant. Feel free to let me know if there's any more context I should be providing though! Thanks again.
Solution if you're using a non-popular window manager
gnome-keyring libsecret
. On arch you can run sudo pacman -S gnome-keyring libsecret
code --password-store="gnome"
Solution if you're using a non-popular window manager
1. install `gnome-keyring libsecret`. On arch you can run `sudo pacman -S gnome-keyring libsecret` 2. open vscode by terminal `code --password-store="gnome"` 3. If this solution works for you, you can persist the value of password-store by opening the Command Palette (Ctrl+Shift+P) and running the Preferences: Configure Runtime Arguments command. This will open the argv.json file where you can add the setting "password-store":"gnome" (this step is from https://code.visualstudio.com/docs/editor/settings-sync#_troubleshooting-keychain-issues).
This is no longer working for me.
My config:
{
// Use software rendering instead of hardware accelerated rendering.
// This can help in cases where you see rendering issues in VS Code.
// "disable-hardware-acceleration": true,
"password-store": "gnome",
// Allows to disable crash reporting.
// Should restart the app if the value is changed.
"enable-crash-reporter": false,
// Unique id used for correlating crash reports sent from this instance.
// Do not edit this value.
...
}
What I see:
Same happening for me on Sway after upgrade to 1.86.0 I have "password-store": "gnome" in argv.json which no longer works.
I've just tried setting "gnome-libsecret" instead of "gnome" and everything works again! @Android789515 can you try it too?
Hey @pavelxdd, your suggestion worked for me. Thank you!
However, I find it strange that the VS Code docs say this:
gnome
: This option will first try thegnome-libsecret
option implementation and then if that fails, it will fallback to thegnome-keyring
option implementation.
This implies that the default behavior should work, but it doesn’t seem to.
Same happening for me just after upgrading to 1.86.0
. Fixed by setting gnome-libsecret
instead of gnome
!
Fixed by setting password-store
to gnome-libsecret
instead of gnome
here as well on 1.86.0
. Thank you!
I've just tried setting "gnome-libsecret" instead of "gnome" and everything works again! @Android789515 can you try it too?
This does not work for me.
I've just tried setting "gnome-libsecret" instead of "gnome" and everything works again! @Android789515 can you try it too?
It worked for me on Arch, thanks!
gnome-libsecret
worked for me too
Still the same problem (on Manjaro).
Switching from gnome
to gnome-libsecret
seems to fix it for me, too:
Version: 1.86.0 Commit: 05047486b6df5eb8d44b2ecd70ea3bdf775fd937 Date: 2024-01-31T10:27:46.147Z Electron: 27.2.3 ElectronBuildId: 26495564 Chromium: 118.0.5993.159 Node.js: 18.17.1 V8: 11.8.172.18-electron.0 OS: Linux x64 6.1.60-08594-g03a802b9a072
If you are in a situation where "password-store": "gnome"
in argv.json no longer works, sorry for the breakage there was a behavior change in the runtime that got missed in the runtime update. Both gnome
and gnome-keyring
values are removed in favor of gnome-libsecret
. We will prepare a candidate fix for 1.86.1
release.
On ChromeOS, I get that error too
Which is weird, because gnome-keyring
is installed and "password-store": "gnome"
is set in ~/.vscode/argv.json
.
Is it due to the behavior change you're talking about @deepak1556?
Update: yes (see https://github.com/microsoft/vscode/issues/187338#issuecomment-1927336923)
~/.vscode/argv.json
// This configuration file allows you to pass permanent command line arguments to VS Code.
// Only a subset of arguments is currently supported to reduce the likelihood of breaking
// the installation.
//
// PLEASE DO NOT CHANGE WITHOUT UNDERSTANDING THE IMPACT
//
// NOTE: Changing this file requires a restart of VS Code.
{
// Use software rendering instead of hardware accelerated rendering.
// This can help in cases where you see rendering issues in VS Code.
// "disable-hardware-acceleration": true,
// Allows to disable crash reporting.
// Should restart the app if the value is changed.
"enable-crash-reporter": true,
// Unique id used for correlating crash reports sent from this instance.
// Do not edit this value.
"crash-reporter-id": "d3649379-71f0-49b8-8896-22d26592c978",
"password-store": "gnome",
}
malix@penguin:~$ sudo apt install gnome-keyring
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
gnome-keyring is already the newest version (42.1-1+b2).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
malix@penguin:~$ code --verbose --vmodule="*/components/os_crypt/*=1"
[0205/162123.944602:ERROR:file_io_posix.cc(152)] open /home/malix/.config/Code/Crashpad/pending/c863bb7a-4d1c-4761-ac18-81dba03f53a8.lock: File exists (17)
[3708:0205/162124.111662:VERBOSE1:key_storage_util_linux.cc(52)] Password storage detected desktop environment: (unknown)
[3708:0205/162124.161114:WARNING:bluez_dbus_manager.cc(247)] Floss manager not present, cannot set Floss enable/disable.
[main 2024-02-05T15:21:24.331Z] [File Watcher (node.js)] Request to start watching: /home/malix/.config/Code/User (excludes: <none>, includes: <all>, correlationId: <none>),/home/malix/.config/Code/User/settings.json (excludes: <none>, includes: <all>, correlationId: <none>)
[main 2024-02-05T15:21:24.365Z] Sending env to running instance...
[main 2024-02-05T15:21:24.367Z] [File Watcher (node.js)] Started watching: '/home/malix/.config/Code/User'
[main 2024-02-05T15:21:24.370Z] [File Watcher (node.js)] Started watching: '/home/malix/.config/Code/User/settings.json'
[3742:0205/162124.388037:WARNING:sandbox_linux.cc(393)] InitializeSandbox() called with multiple threads in process gpu-process.
[main 2024-02-05T15:21:24.505Z] Sent env to running instance. Terminating...
[main 2024-02-05T15:21:24.505Z] Lifecycle#kill()
[main 2024-02-05T15:21:24.505Z] Lifecycle#onWillShutdown.fire()
malix@penguin:~$ cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux 12 (bookworm)"
NAME="Debian GNU/Linux"
VERSION_ID="12"
VERSION="12 (bookworm)"
VERSION_CODENAME=bookworm
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"
VS Code Version: 1.86.0 - 05047486b6df5eb8d44b2ecd70ea3bdf775fd937 - x64 OS Version: ChromeOS Flex - Version 121.0.6167.155 (Official Build) beta (64-bit)
vscode = 1.86.0
Set "password-store": "gnome-libsecret"
in ~/.vscode/argv.json
Are there any resources on what other OS keyrings could be used other than gnome-keyring?
EDIT: That would be here: https://code.visualstudio.com/docs/editor/settings-sync#_recommended-configure-the-keyring-to-use-with-vs-code
Breaking Fix
vscode >= 1.86.0 Set
"password-store": "gnome-libsecret"
in~/.vscode/argv.json
gnome-libsecret is not a package I could find. Do you mean libsecret
?
Does this issue occur when all extensions are disabled?: Yes
I referred to https://code.visualstudio.com/docs/editor/settings-sync#_troubleshooting-keychain-issues
This is the error part of my log after running
code-insiders --verbose --vmodule="*/components/os_crypt/*=1"
:Version: 1.81.0-insider Commit: ad791ef3d26b99963da31636af697afd86575435 Date: 2023-07-07T19:47:36.821Z Electron: 22.3.14 ElectronBuildId: 21893604 Chromium: 108.0.5359.215 Node.js: 16.17.1 V8: 10.8.168.25-electron.0 OS: Linux x64 6.4.1-arch2-1
I have gnome-keyring installed and it's not using it for some reason. Must be the update to 1.80.
Manually configuring the keyring to use results in this:
It seems to work.
I figured this is a bug since I had gnome-keyring installed, it wasn't being used, and I had to manually configure it.