Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

KDE WALLET #104319

Open
bksubhuti opened this issue Aug 9, 2020 · 44 comments
Open

KDE WALLET #104319

bksubhuti opened this issue Aug 9, 2020 · 44 comments
Assignees
Labels
authentication Authentication issues feature-request Request for new features or functionality
Milestone

Comments

@bksubhuti
Copy link

bksubhuti commented Aug 9, 2020

  • VSCode Version:1.47.3
  • OS Version:kubuntu 20.04

Steps to Reproduce:

  1. linux kubuntu 20.04 set kwallet to password ""
  2. Open vscode keyring message comes up.. but it is not keyring on KDE.
    It wants the sudo password. it also locks up the whole system. I am wondering if this is a security breach because my keyring is managed by kwallet so it does not exist as keyring. The password is "" for kwallet not the sudo password. It locks up the system until you type the sudo password. SOMETHING IS VERY FISHY!!!!
    I want it to stop asking me.. and I don't need to type the password unless I push. I want to manually do this now.. it is more trouble than worth what you save me.. and there is no option not to abort the so called "keyring." as you call it.

Does this issue occur when all extensions are disabled?: Yes/No
YES

@Tyriar
Copy link
Member

Tyriar commented Aug 10, 2020

Think this is related to auth?

@Tyriar Tyriar assigned RMacfarlane and unassigned Tyriar Aug 10, 2020
@RMacfarlane
Copy link
Contributor

RMacfarlane commented Aug 10, 2020

@bksubhuti What is the keyring message that comes up in step 2?

@RMacfarlane RMacfarlane added the info-needed Issue requires more information from poster label Aug 10, 2020
@bksubhuti
Copy link
Author

bksubhuti commented Aug 10, 2020

I'll have to get back to you. It does not do this "every time" but almost every time. I cannot take a screen shot because my whole system is locked until I type the sudo password. It says something like... please type your password to unlock the keyring. However, it does not say kwallet, and I have deleted my kwallets and created a new one with "" password. It still asks for the keyring password and only stops on the sudo pwd.

@bksubhuti
Copy link
Author

bksubhuti commented Aug 13, 2020

Here is the situation.. my wallet was deleted and then created with "" as password which should negate every request.
It does not do this all the time either.. In any case.. while you are working on this.. how do I disable this and type in my password manually like before. The amount of pushes I do are very low.
20200812_210010

@rmunn
Copy link
Contributor

rmunn commented Aug 13, 2020

@bksubhuti - I haven't used kwallet but I have used gnome-keyring, and that looks to me like the gnome-keyring dialog that I'm used to seing. Perhaps gnome-keyring is installed on your system and therefore VS Code is trying to use it to look up your SSH key passphrase, rather than kwallet. If gnome-keyring is installed, you can run the "seahorse" program to change its keyring password. Change the keyring password for gnome-keyring to be the same as your login password and that should make it automatically unlock on login. Or if you're using automatic logins, which are NOT a good idea security-wide but some people use them anyway, then you might have to set the gnome-keyring password to '' (empty) to disable it. But that is INSECURE, just as setting your kwallet password to '' is insecure, so use that option at your own risk.

Here's a link to read more about the "seahorse" command:

https://wiki.archlinux.org/index.php/GNOME/Keyring#Troubleshooting

@bksubhuti
Copy link
Author

bksubhuti commented Aug 13, 2020

I did notice that gnome keyring was installed but seahorse was not installed using synaptic. It could have been that originally when I first had this problem, I installed seahorse to set the user pwd to "" as a possible fix that didn't work. I guess I should have done that wit kwallet. But now that i did that with kwallet, gnome keyring was still installed. Just a guess.. Perhaps when I uninstalled seahorse g keyring remained.

I took a chance and removed gnome keyring hoping it would not mess up the current wallet.. seems okay for now.
I'll update if this problem persists.. I think it will be fixed. I guess it would be impossible for keyring to come up if it does not exist.

@bksubhuti
Copy link
Author

bksubhuti commented Aug 15, 2020

have not had any problems now.. closed.

@bksubhuti
Copy link
Author

bksubhuti commented Aug 16, 2020

Now that I "actually" want to check in something it won't let me. This is really a big problem. Why can't I just do this manually like before.. ? Please just make this an option for those who have trouble . I saw this
#92972 (comment)
and it is full circle.
Does not work with KDE .

@bksubhuti bksubhuti reopened this Aug 16, 2020
@bksubhuti
Copy link
Author

bksubhuti commented Aug 16, 2020

okay.. this solved my problem.. preferences.. git don't use automatic auth

@soredake
Copy link
Contributor

soredake commented Sep 15, 2020

kwallet has no Secret Service implementation, because of this vscode uses GNOME keyring.
https://rtfm.co.ua/en/what-is-linux-keyring-gnome-keyring-secret-service-and-d-bus/

@soredake
Copy link
Contributor

soredake commented Oct 18, 2020

https://bugs.kde.org/show_bug.cgi?id=313216

@ghost
Copy link

ghost commented Dec 18, 2020

Could VSC support KWallet?

@Konard
Copy link

Konard commented Dec 19, 2020

Please support KWallet. I don`t want to be required to install gnome-keyring

@bksubhuti
Copy link
Author

bksubhuti commented Dec 20, 2020

@tsbarnes
Copy link

tsbarnes commented Jan 6, 2021

Any progress on this? I really don't like having to run GNOME Keyring alongside KWallet.

@tuananh
Copy link

tuananh commented Feb 13, 2021

is this a kwallet limitation or vscode lacking integration with kwallet?

@bksubhuti
Copy link
Author

bksubhuti commented Feb 13, 2021

I'm pretty sure it is lack of integration and lack of support for kde.
I checked what is the most popular DE and it seems that Gnome wins while those on the reddit forum discussion said that KDE was their preferred (like myself). Plus I would guess it is preferred among other distros like manjaro and arch. Certainly #2 would be a good guess. https://www.reddit.com/r/linux/comments/9m5i7p/most_popular_linux_desktop_environment/

@tsbarnes
Copy link

tsbarnes commented Feb 13, 2021

is this a kwallet limitation or vscode lacking integration with kwallet?

Unfortunately, the answer is a limitation of KDE Wallet. Namely, KDE Wallet doesn't support the FreeDesktop.org secrets interface, which is what VSCode uses for storing keys. Right now I believe GNOME Keyring is the only existing implementation of that interface, but the "correct" solution to this problem is that KDE Wallet needs to support that interface.

@Asta1986
Copy link

Asta1986 commented Mar 30, 2021

Even after disabling the setting to use automatic git authentication if you sign in manually to use some extension such as Git lens, the window to access or create the "Default" keyring is still shown.

@soredake
Copy link
Contributor

soredake commented Mar 30, 2021

https://invent.kde.org/frameworks/kwallet/-/merge_requests/11

@RMacfarlane RMacfarlane removed the info-needed Issue requires more information from poster label May 13, 2021
@vscode-triage-bot
Copy link

vscode-triage-bot commented May 18, 2021

🙂 This feature request received a sufficient number of community upvotes and we moved it to our backlog. To learn more about how we handle feature requests, please see our documentation.

Happy Coding!

@klarkc
Copy link

klarkc commented Sep 7, 2021

I would to add here that vscode with XFCE on Arch Linux has the same problem, requiring to install gnome things would messy my system. There is not a way to fix this without installing gnome or KDE stuff?

@ckissane
Copy link

ckissane commented Mar 3, 2022

Wonder if this would be of any help in the mean time: https://aur.archlinux.org/packages/kwallet-secrets
(edit (worked for me))

@TylerLeonhardt
Copy link
Member

TylerLeonhardt commented Mar 3, 2022

Hi all 👋 I just wanted to provide a summary on this...

Secrets on Linux in vscode (provided by keytar) are stored using org.freedesktop.secrets which is suppose to be an abstraction layer over keyrings that implement it properly.

With that said, I've never had much success in understanding if KDE has a keyring/wallet that is compatible, even though my reading says that the primary use case was for abstracting over gnome and KDE and others... I can tell you for sure that gnome-keyring works, but I need some help from folks who use KDE to understand if KDE actually has an alternative or not and that status of that.

This link:
https://forum.authpass.app/t/what-is-the-provider-of-org-freedesktop-secrets-for-kde-plasma-5/162

Says:

Here’s a current answer from a KDE developer, so I consider this to the be official answer. He said:

KWallet still doesn’t implement org.freedesktop.secrets, and KSecretService is dead.

That's from August 2021.

I have seen several folks mention that KeePassXC is apparently a solution (although they don't mention it in the context of vscode) so that might be a valid alternative for us.

In short, my recommendation is:

  • provide feedback to KDE to finish their implementation of org.freedesktop.secrets
  • use gnome-keyring or give KeePassXC a try and let me know how it goes!

@matthew-jones-uk
Copy link

matthew-jones-uk commented Mar 3, 2022

  • provide feedback to KDE to finish their implementation of org.freedesktop.secrets

KDE's implementation is now complete, it's just waiting on testing/merging. Any testing (and associated feedback) would be appreciated.

Wonder if this would be of any help in the mean time: https://aur.archlinux.org/packages/kwallet-secrets

I believe this is the merge request I've linked above, just bundled into an AUR package. I can also confirm it works well for me 👍

@TylerLeonhardt
Copy link
Member

TylerLeonhardt commented Mar 3, 2022

Thank you for the update @matthew-jones-uk!

@bksubhuti
Copy link
Author

bksubhuti commented Apr 20, 2022

Can you confirm this is working for the kde that ships with kubuntu 22.04 ? I would very much like to go back to kde. I moved to gnome/ubuntu because of this issue.

@SuperSandro2000
Copy link

SuperSandro2000 commented Apr 21, 2022

IDK, probably not because it first needs to be merged and then released and April is almost over but I can confirm that the basics seem to work if the patch is applied to a recent version.

@bksubhuti
Copy link
Author

bksubhuti commented Apr 21, 2022

Appreciated.
Okay.. looks like I'll stay on Gnone for a while longer. I don't use the rolling KDE Neon (it was a nightmare).

@draeath
Copy link

draeath commented Jun 12, 2022

Writing login information to the keychain failed with error 'GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.secrets was not provided by any .service files'.

@matthew-jones-uk do you know what version of KDE that made it into (or will make it into)? I'm on Opensuse Tumbleweed and I'm still seeing this issue. At the moment I'm running KDE Framework 5.94.0. I haven't seen any activity on that merge request for 4 weeks, and if I'm reading it right it's still up in the air?

@bksubhuti
Copy link
Author

bksubhuti commented Jun 12, 2022

I'm on gnome now and I think I will be for quite a long time now. I'm starting to like pure ubuntu better than kde now as well.
I just want things to work and Ubuntu is better for that. Perhaps I will test to PopOS one day which has a better rep for "just working"..

@cshorler
Copy link

cshorler commented Jun 21, 2022

note another possible workaround:

  1. in User\Extension\Git disable Use Integrated Ask Pass
  2. in bashrc set GIT_ASKPASS:
if [ x"$GIT_ASKPASS" = x ]; then
export GIT_ASKPASS=/usr/lib/ssh/ssh-askpass
fi
  1. restart vscode / session
  2. git push
    assuming ksshpassword is the launched handler
  3. unselect save option for the prompt for Username (better to embed user name in git remote url, you won't be prompted, ever)
  4. select save option for the prompt for Password

no prompt will be displayed for future actions.
one entry is added in the wallet keyed as username@github.com

if you have different PAT for different work, clearly this won't work for you.

@miigotu
Copy link

miigotu commented Jul 6, 2022

Hi all wave I just wanted to provide a summary on this...

Secrets on Linux in vscode (provided by keytar) are stored using org.freedesktop.secrets which is suppose to be an abstraction layer over keyrings that implement it properly.

With that said, I've never had much success in understanding if KDE has a keyring/wallet that is compatible, even though my reading says that the primary use case was for abstracting over gnome and KDE and others... I can tell you for sure that gnome-keyring works, but I need some help from folks who use KDE to understand if KDE actually has an alternative or not and that status of that.

This link: https://forum.authpass.app/t/what-is-the-provider-of-org-freedesktop-secrets-for-kde-plasma-5/162

Says:

Here’s a current answer from a KDE developer, so I consider this to the be official answer. He said:

KWallet still doesn’t implement org.freedesktop.secrets, and KSecretService is dead.

That's from August 2021.

I have seen several folks mention that KeePassXC is apparently a solution (although they don't mention it in the context of vscode) so that might be a valid alternative for us.

In short, my recommendation is:

  • provide feedback to KDE to finish their implementation of org.freedesktop.secrets
  • use gnome-keyring or give KeePassXC a try and let me know how it goes!

This doesnt seem to work exactly on debian bullseye headless (no desktop)p either. I get the same dbus error, even after installing gnome-keyring and manually starting gnome-keyring-daemon.

dbus-monitor of install/uninstall of gnome-keyring and trying several different ways to get the secretservice to work, restarting the keyring daemon, unlocking it and/or logging into it, replacing it, and doing all of these things both with pseudo root and without.

Spam follows, because there are some variations with the sent signals but not many:

dbus-monitor 
signal time=1657117256.852264 sender=org.freedesktop.DBus -> destination=:1.18 serial=2 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameAcquired
   string ":1.18"
signal time=1657117256.852364 sender=org.freedesktop.DBus -> destination=:1.18 serial=4 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameLost
   string ":1.18"
method call time=1657117352.682666 sender=:1.15 -> destination=org.freedesktop.DBus serial=6 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=RemoveMatch
   string "type='signal',interface='org.freedesktop.DBus',member='NameOwnerChanged'"
method return time=1657117352.682687 sender=org.freedesktop.DBus -> destination=:1.15 serial=13 reply_serial=6
signal time=1657117352.683493 sender=org.freedesktop.DBus -> destination=:1.15 serial=5 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameLost
   string ":1.15"
signal time=1657117352.683505 sender=org.freedesktop.DBus -> destination=(null destination) serial=9 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameOwnerChanged
   string ":1.15"
   string ":1.15"
   string ""
method call time=1657117352.887788 sender=:1.19 -> destination=org.freedesktop.DBus serial=1 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=Hello
method return time=1657117352.887829 sender=org.freedesktop.DBus -> destination=:1.19 serial=1 reply_serial=1
   string ":1.19"
signal time=1657117352.887874 sender=org.freedesktop.DBus -> destination=(null destination) serial=10 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameOwnerChanged
   string ":1.19"
   string ""
   string ":1.19"
signal time=1657117352.887936 sender=org.freedesktop.DBus -> destination=:1.19 serial=2 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameAcquired
   string ":1.19"
method call time=1657117352.888342 sender=:1.19 -> destination=org.gnome.keyring serial=2 path=/org/gnome/keyring/daemon; interface=org.gnome.keyring.Daemon; member=GetControlDirectory
method return time=1657117352.888540 sender=:1.4 -> destination=:1.19 serial=57 reply_serial=2
   string "/run/user/1000/keyring"
method call time=1657117352.890140 sender=:1.19 -> destination=org.freedesktop.DBus serial=3 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=RequestName
   string "org.gnome.keyring"
   uint32 0
method return time=1657117352.890156 sender=org.freedesktop.DBus -> destination=:1.19 serial=3 reply_serial=3
   uint32 2
method call time=1657117352.890414 sender=:1.19 -> destination=org.gnome.SessionManager serial=4 path=/org/gnome/SessionManager; interface=org.gnome.SessionManager; member=Setenv
   string "GNOME_KEYRING_CONTROL"
   string "/run/user/1000/keyring"
error time=1657117352.890443 sender=org.freedesktop.DBus -> destination=:1.19 error_name=org.freedesktop.DBus.Error.ServiceUnknown reply_serial=4
   string "The name org.gnome.SessionManager was not provided by any .service files"
method call time=1657117352.890598 sender=:1.19 -> destination=org.gnome.SessionManager serial=5 path=/org/gnome/SessionManager; interface=org.gnome.SessionManager; member=Setenv
   string "SSH_AUTH_SOCK"
   string "/run/user/1000/keyring/ssh"
error time=1657117352.890620 sender=org.freedesktop.DBus -> destination=:1.19 error_name=org.freedesktop.DBus.Error.ServiceUnknown reply_serial=5
   string "The name org.gnome.SessionManager was not provided by any .service files"
method call time=1657117352.891007 sender=:1.19 -> destination=org.freedesktop.DBus serial=6 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=AddMatch
   string "type='signal',interface='org.freedesktop.DBus',member='NameOwnerChanged'"
method return time=1657117352.891032 sender=org.freedesktop.DBus -> destination=:1.19 serial=6 reply_serial=6
method call time=1657117352.891343 sender=:1.19 -> destination=org.freedesktop.DBus serial=7 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=RequestName
   string "org.freedesktop.secrets"
   uint32 0
method return time=1657117352.891374 sender=org.freedesktop.DBus -> destination=:1.19 serial=7 reply_serial=7
   uint32 2
method call time=1657117407.100849 sender=:1.4 -> destination=org.freedesktop.DBus serial=58 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=RemoveMatch
   string "type='signal',interface='org.freedesktop.DBus',member='NameOwnerChanged'"
method return time=1657117407.100875 sender=org.freedesktop.DBus -> destination=:1.4 serial=29 reply_serial=58
method call time=1657117407.100887 sender=:1.14 -> destination=org.freedesktop.DBus serial=8 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=RemoveMatch
   string "type='signal',interface='org.freedesktop.DBus',member='NameOwnerChanged'"
method return time=1657117407.100900 sender=org.freedesktop.DBus -> destination=:1.14 serial=11 reply_serial=8
method call time=1657117407.100906 sender=:1.12 -> destination=org.freedesktop.DBus serial=6 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=RemoveMatch
   string "type='signal',interface='org.freedesktop.DBus',member='NameOwnerChanged'"
method return time=1657117407.100915 sender=org.freedesktop.DBus -> destination=:1.12 serial=10 reply_serial=6
method call time=1657117407.100921 sender=:1.8 -> destination=org.freedesktop.DBus serial=6 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=RemoveMatch
   string "type='signal',interface='org.freedesktop.DBus',member='NameOwnerChanged'"
method return time=1657117407.100932 sender=org.freedesktop.DBus -> destination=:1.8 serial=14 reply_serial=6
method call time=1657117407.102725 sender=:1.19 -> destination=org.freedesktop.DBus serial=8 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=RemoveMatch
   string "type='signal',interface='org.freedesktop.DBus',member='NameOwnerChanged'"
method return time=1657117407.102764 sender=org.freedesktop.DBus -> destination=:1.19 serial=8 reply_serial=8
signal time=1657117407.102776 sender=org.freedesktop.DBus -> destination=:1.8 serial=6 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameLost
   string ":1.8"
signal time=1657117407.102792 sender=org.freedesktop.DBus -> destination=(null destination) serial=7 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameOwnerChanged
   string ":1.8"
   string ":1.8"
   string ""
signal time=1657117407.103004 sender=org.freedesktop.DBus -> destination=:1.12 serial=8 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameLost
   string ":1.12"
signal time=1657117407.103030 sender=org.freedesktop.DBus -> destination=(null destination) serial=9 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameOwnerChanged
   string ":1.12"
   string ":1.12"
   string ""
signal time=1657117407.104798 sender=org.freedesktop.DBus -> destination=:1.4 serial=10 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameLost
   string "org.freedesktop.secrets"
signal time=1657117407.104860 sender=org.freedesktop.DBus -> destination=(null destination) serial=11 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameOwnerChanged
   string "org.freedesktop.secrets"
   string ":1.4"
   string ":1.14"
signal time=1657117407.104923 sender=org.freedesktop.DBus -> destination=:1.14 serial=12 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameAcquired
   string "org.freedesktop.secrets"
signal time=1657117407.104960 sender=org.freedesktop.DBus -> destination=:1.4 serial=12 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameLost
   string "org.gnome.keyring"
signal time=1657117407.104997 sender=org.freedesktop.DBus -> destination=(null destination) serial=13 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameOwnerChanged
   string "org.gnome.keyring"
   string ":1.4"
   string ":1.14"
signal time=1657117407.105028 sender=org.freedesktop.DBus -> destination=:1.14 serial=13 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameAcquired
   string "org.gnome.keyring"
signal time=1657117407.105045 sender=org.freedesktop.DBus -> destination=:1.4 serial=14 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameLost
   string ":1.4"
signal time=1657117407.105063 sender=org.freedesktop.DBus -> destination=(null destination) serial=15 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameOwnerChanged
   string ":1.4"
   string ":1.4"
   string ""
signal time=1657117407.105092 sender=org.freedesktop.DBus -> destination=:1.19 serial=16 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameLost
   string ":1.19"
signal time=1657117407.105115 sender=org.freedesktop.DBus -> destination=(null destination) serial=17 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameOwnerChanged
   string ":1.19"
   string ":1.19"
   string ""
signal time=1657117407.105199 sender=org.freedesktop.DBus -> destination=:1.14 serial=18 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameLost
   string "org.freedesktop.secrets"
signal time=1657117407.105210 sender=org.freedesktop.DBus -> destination=(null destination) serial=19 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameOwnerChanged
   string "org.freedesktop.secrets"
   string ":1.14"
   string ""
signal time=1657117407.105220 sender=org.freedesktop.DBus -> destination=:1.14 serial=20 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameLost
   string "org.gnome.keyring"
signal time=1657117407.105224 sender=org.freedesktop.DBus -> destination=(null destination) serial=21 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameOwnerChanged
   string "org.gnome.keyring"
   string ":1.14"
   string ""
signal time=1657117407.105232 sender=org.freedesktop.DBus -> destination=:1.14 serial=22 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameLost
   string ":1.14"
signal time=1657117407.105240 sender=org.freedesktop.DBus -> destination=(null destination) serial=23 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameOwnerChanged
   string ":1.14"
   string ":1.14"
   string ""

Also, and this might be helpful, notice the difference between secret and Secrets between interface and path:
No such interface “org.freedesktop.Secret.Collection” on object at path /org/freedesktop/secrets/collection/

@draeath
Copy link

draeath commented Jul 6, 2022

@miigotu kwallet support for org.freedesktop.secrets is implemented in a submitted patch but languishing in acceptance in KDE upstream.

It should come eventually but the patch needs to be reviewed and accepted, I believe.

@matthew-jones-uk
Copy link

matthew-jones-uk commented Jul 6, 2022

@draeath I believe it was merged just a few hours ago 😄 https://invent.kde.org/frameworks/kwallet/-/merge_requests/11. Of course it'll only be in the next release, and may take a while to appear in some distro repos.

This issue can probably be closed now, unless the maintainers want to wait for it to appear in a release.

@miigotu
Copy link

miigotu commented Jul 6, 2022

@miigotu kwallet support for org.freedesktop.secrets is implemented in a submitted patch but languishing in acceptance in KDE upstream.

It should come eventually but the patch needs to be reviewed and accepted, I believe.

I don't use any desktop software or frameworks at all, its a headless server.

@draeath
Copy link

draeath commented Jul 6, 2022

@miigotu pardon my confusion, but why does vscode's behavior with respect to secrets matter if you don't have a GUI?

Edit: I see. My GitHub API client was mangling your comment and I missed stuff.

@TylerLeonhardt
Copy link
Member

TylerLeonhardt commented Jul 6, 2022

@miigotu you're running headless you need to make sure your environment has access to secrets... here's a SO link that has good info on getting gnome-keyring working headless:
https://unix.stackexchange.com/a/548005

Your question isn't really related to this issue though, since this issue is about supporting KDE.

@miigotu
Copy link

miigotu commented Jul 6, 2022

@miigotu you're running headless you need to make sure your environment has access to secrets... here's a SO link that has good info on getting gnome-keyring working headless:
https://unix.stackexchange.com/a/548005

Your question isn't really related to this issue though, since this issue is about supporting KDE.

Yeah, just similar enough 🤣 I couldn't find anything close to my error other than this.

@AdelKS
Copy link

AdelKS commented Sep 16, 2022

@matthew-jones-uk the MR you refered to is now out in the wild, how do I enable vscode to use that new feature ?

@SuperSandro2000
Copy link

SuperSandro2000 commented Sep 16, 2022

I think it should just work if you have kwallet enabled and running.

@AdelKS
Copy link

AdelKS commented Sep 16, 2022

Thanks @SuperSandro2000

I do have it enabled

image

But when I do a git pull within code I get prompted for my ssh key password in the terminal itself

± % git pull                                                                                                                                             !9925
Enter passphrase for key '/home/adel/.ssh/id_rsa':

@gmeligio
Copy link

gmeligio commented Sep 17, 2022

I'm waiting for the support of vscode for KDE wallet in Kubuntu 22.04 and got curious about when it will work. Here are some dates that I've found some far.

Short version: It seems the MR that @matthew-jones-uk referred 1 could come out in KDE 5.26 that is now in beta and will be released in October 6th 2. I couldn't find when it will come to Linux distributions though.

Long version:

  1. The MR was merged in July 7th and it's present in the tag v5.97.0 3 of August 7th, where it looks like v5.97.0 corresponds to the tag of KDE Frameworks.
  2. It was announced in KDE Frameworks 5.97 the introduction of the secrets service API 4.
  3. KDE Frameworks 5.98 (KF5) is being included in all KDE Plasma packages like Plasma Workspace 5 so it's likely this change might land in KDE Plasma 5.26.

Footnotes

  1. KWallet Framework MR 11: org.freedesktop.secrets DBus API initial support

  2. KDE Plasma Future releases

  3. KWallet Framework tags

  4. KDE Frameworks 5.97 announcement

    > Introduce Secret Service API

  5. Plasma Workspace: Update kf5 version requirement to 5.98.0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
authentication Authentication issues feature-request Request for new features or functionality
Projects
None yet
Development

No branches or pull requests