gopass icon indicating copy to clipboard operation
gopass copied to clipboard

[FR] libsecret integration?

Open mygithubthrowaway opened this issue 5 years ago • 16 comments

Summary

Hi, there is a plan to support exporting/importing from/to freedesktop-libsecret? (Gnome-keyring and kwallet are based on this specification)

Additional context

More info:

https://wiki.gnome.org/Projects/Libsecret https://specifications.freedesktop.org/secret-service/ https://developer.gnome.org/libsecret/0.18/

mygithubthrowaway avatar Oct 02 '18 14:10 mygithubthrowaway

I have not yet heard nor read anyone talking about this with regards to gopass. But it surely seems interesting. Would you mind elaborating a bit more on how gopass could integrate? :+1:

metalmatze avatar Oct 02 '18 16:10 metalmatze

Sorry for late reply..

Gnome (Gui: sea-horse; passbook) and kde (Gui: kwallet) use libsecret to store all password, some application do the same (pidgin, remmina and more) with a master password.

Screenshot:

sea-horse kwallet

so list of possibly integration:

  • import features: This is the number 1 in my opinion: a way to import from system DE libsecret database to gopass.

  • export features: like import but export from gopass to libsecret

  • sync check if we need to import new entry/export to libsecrete

  • portfolio (gopass collection) Complete integration: if i create a entry on gopass i find the same entry on libsecret database in gopass "collection"

I'm sorry cant provide anything coded but i don't know golang

edit: typo, sorry for my bad english

mygithubthrowaway avatar Oct 09 '18 08:10 mygithubthrowaway

I'd propose creating a gopass D-Bus daemon that works as a libsecret backend.

rossmeier avatar Dec 11 '18 13:12 rossmeier

That sounds very interesting. I have not much experience with D-Bus so far and probably no time to work on this anytime soon, but I'd be happy to review and test any contributions to this idea.

dominikschulz avatar Dec 22 '18 17:12 dominikschulz

Ok, I've looked at it a bit more in detail. We would have to implement this api: https://people.gnome.org/~stefw/secrets/org.freedesktop.Secrets.xml via https://github.com/godbus/dbus. One question: Should the keyrings be stored in a hardcoded manner in a subdir (like currently done for git credentials) or would it slowly be time to add a auto-prompting mapping/linking mechanism that prompts the user to select (or create a new) secret when some kind of backend requests it (ssh, secret-api, git, etc)

rossmeier avatar Jan 12 '19 22:01 rossmeier

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

stale[bot] avatar Apr 12 '19 22:04 stale[bot]

Readable code, but undocumented. Nevertheless, it is on topic, i.e. the API. https://github.com/gsterjov/go-libsecret

greenpau avatar Sep 24 '19 22:09 greenpau

This would be nice.

jraygauthier avatar Mar 27 '20 15:03 jraygauthier

is there a daemon running already in gopass? that would seem like the first requirement for this to work at all, otherwise dbus will not have anyone to talk to.

anarcat avatar Mar 27 '20 20:03 anarcat

gopass jsonapi listen. Nothing prevent one from adding another command that would do just that (expose a dbus interface), or even a completely separate executable. This command or executable would most likely be launched via systemd using the dbus service type on most linux distros. Such an integration is pretty much linux specific anyway unless gnome / kde keyrings can be run on windows too.

jraygauthier avatar Mar 28 '20 00:03 jraygauthier

this feature would make gopass as alternative to gnome-keyring or xkeepass. For small environments like i3 or Qtile it would be the primary choice. It would gain more popularity for gopass

zordsdavini avatar Feb 23 '21 14:02 zordsdavini

Would be definitely an awesome feature! Please consider to work on it. 🙏🏾

weilbith avatar Jun 08 '21 22:06 weilbith

I am considering picking this feature up. Is anybody working on this? I found this repository that already seems to be doing something similar with pypass.

petrmanek avatar Mar 18 '23 11:03 petrmanek

@petrmanek I'm not aware of anyone working on this, yet. Feel free to go ahead :+1:

dominikschulz avatar Mar 21 '23 07:03 dominikschulz

Appreciating this feature as aerc mail client only supports this way of password managing besides hacking them into your plain text config files. See password manager integration | aerc wiki

marcofeltmann avatar Jun 01 '23 22:06 marcofeltmann

@marcofeltmann I've never used aerc, but the wiki page is using a bash script. You can just put gopass in there instead of secret-tool.

dominikschulz avatar Jun 04 '23 07:06 dominikschulz