ayn2op / discordo

A lightweight, secure, and feature-rich Discord terminal client.
MIT License
2.07k stars 66 forks source link

Can't retrieve password from KeePassXC secrets integration. #281

Closed cronyakatsuki closed 1 year ago

cronyakatsuki commented 1 year ago

I'm having an issue of discordo not being able to retrieve the password from keepassxc secret integration and a database from it.

Steps to reproduce:

  1. Enable secrets integration in keepassxc and create a database for it.
  2. Launch discordo, keepassxc will prompt you for password for the databse, enter it and the keepassxc popup will close
  3. discordo will just frozen then and won't do anything until killed with ctrl+c
  4. After running discordo again it will prompt you to login, you can then login normally and everything will work
  5. Exit out of discordo and run it again, it will prompt you to login once again even thought in keepassxc you can see in the database that it saved the needed data saved under Password for 'token' on 'discordo'

I don't know if this is a discordo specific issue or a KeePassXC issue but i would love for it to be fixed since keepassxc has a really minimal secrets implementation.

cronyakatsuki commented 1 year ago

After testing out with KeePassXC settings I found that after disabling a specific setting in KeePassXC discordo will load the necesarry data to remember logins.

The setting is located in Settins -> Secret Service ... -> Confirm when passwords are retrieved by clients.

Bug there is still the bug of that if the database in KeePassXC is locked, discordo will just remain frozen till killed after unlocking the database from the KeePassXC prompt.

But after than first launch, or any launch that the database is unlocked discordo will just load normally logged in.

ayn2op commented 1 year ago

Can you provide reproducible steps and details about your operating system and environment?

cronyakatsuki commented 1 year ago
  1. Open KeePassXC and enable secrets integration
  2. Create a separate database for the secrets integration
  3. Test that the integration is working
  4. Open discordo and make it rememmber login, KeePassXC popup will show to save discordo login info
  5. Close discordo and try to open again
  6. It either won't do anything and go straight to login screen or it will ask for confirmation to allow access to the entry but still go to the login screen
  7. If disabled the popup for confirming retrieving passwords it will work then, but will just freeze if the secrets database is closed

EDIT: my operating system is arch linux, my environment is a window manager called dk,

ayn2op commented 1 year ago
  1. Open KeePassXC and enable secrets integration
  2. Create a separate database for the secrets integration
  3. Test that the integration is working
  4. Open discordo and make it rememmber login, KeePassXC popup will show to save discordo login info
  5. Close discordo and try to open again
  6. It either won't do anything and go straight to login screen or it will ask for confirmation to allow access to the entry but still go to the login screen
  7. If disabled the popup for confirming retrieving passwords it will work then, but will just freeze if the secrets database is closed

EDIT

Does the issue still persist?

cronyakatsuki commented 1 year ago
  1. Open KeePassXC and enable secrets integration
  2. Create a separate database for the secrets integration
  3. Test that the integration is working
  4. Open discordo and make it rememmber login, KeePassXC popup will show to save discordo login info
  5. Close discordo and try to open again
  6. It either won't do anything and go straight to login screen or it will ask for confirmation to allow access to the entry but still go to the login screen
  7. If disabled the popup for confirming retrieving passwords it will work then, but will just freeze if the secrets database is closed

EDIT

Does the issue still persists?

No the issue doesn't persist anymore.