ProtonMail / proton-bridge

Proton Mail Bridge application
GNU General Public License v3.0
1.11k stars 145 forks source link

Failed to launch (could not create keychain: no keychain) #442

Closed foncused closed 7 months ago

foncused commented 7 months ago

Issue tracker is ONLY used for reporting bugs with technical details. "It doesn't work" or new features should be discussed with our customer support. Please use bug report function in Bridge or contact bridge@protonmail.ch.

Expected Behavior

protonmail-bridge should open and detect installed password manager.

Current Behavior

protonmail-bridge fails to launch in Arch Linux x86_64 kernel 6.6.2-arch1-1. gnome-keyring-daemon is running.

2385400  0.0  0.0 386604  9344 ?        SLl  11:35   0:00 /usr/bin/gnome-keyring-daemon --start --foreground --components=secrets

Possible Solution

Steps to Reproduce

  1. Download latest PKGBUILD
  2. makepkg
  3. pacman -U protonmail-bridge-bin-3.6.1-2-x86_64.pkg.tar.zst
  4. protonmail-bridge (or protonmail-bridge -c)

Output:

WARN[0000] Failed to add test credentials to keychain    error="failed to create item: Object does not exist at path “/org/freedesktop/secrets/collection/login”" helper="*keychain.SecretServiceDBusHelper"
WARN[0000] Failed to add test credentials to keychain    error="Object does not exist at path “/org/freedesktop/secrets/collection/login”" helper="*secretservice.Secretservice"
INFO[0000] Migrating keychain helper                    
ERRO[Nov 28 12:19:13.385] Could not load/create vault key               error="could not create keychain: no keychain"
WARN[Nov 28 12:19:13.390] The vault key could not be retrieved; the vault will not be encrypted
...
Proton Mail Bridge is not able to detect a supported password manager
(secret-service or pass). Please install and set up a supported password manager
and restart the application.

Version Information

protonmail-bridge-bin 3.6.1-2 gnome-keyring 1:42.1-3 Qt 6.4.3

Context (Environment)

Detailed Description

Possible Implementation

LBeernaertProton commented 7 months ago

Could you please post the output of:

dbus-send --session --dest=org.freedesktop.DBus --type=method_call --print-reply /org/freedesktop/DBus org.freedesktop.DBus.ListNames | grep secrets
foncused commented 7 months ago
┌▪ [~]
└▪ dbus-send --session --dest=org.freedesktop.DBus --type=method_call --print-reply /org/freedesktop/DBus org.freedesktop.DBus.ListNames | grep secrets
      string "org.freedesktop.secrets"
LBeernaertProton commented 7 months ago

Could you retry with the 3.71 pre-release version and see if the situation improves?

foncused commented 7 months ago

No luck with protonmail-bridge-bin 3.7.1-1, I get the same output.

LBeernaertProton commented 7 months ago

Is it possible the key ring is still locked? :thinking:

foncused commented 7 months ago

I managed to resolve this by looking over the Gnome/Keyring Arch wiki and running the following (meant for e.g. ~/.xinitrc): dbus-update-activation-environment --all

This is because I use i3. With i3, this is better placed in ~/.config/i3/config: exec dbus-update-activation-environment --all

Then when running protonmail-bridge I was prompted to enter a default keychain credential and now Proton Mail Bridge opens as expected.

Thank you for your help.

fmalina commented 6 months ago

I am having the same issue and same error message and I don't use i3 and dbus-update-activation-environment --all does not resolve this for me.

$ dbus-send...
    string "org.freedesktop.secrets"
foncused commented 6 months ago

@fmalina Are you using another window manager environment? I only ask because my solution is not technically i3 specific. If you are, and you can execute commands from its startup configuration:

If you are using sway, i3, or any window manager that does not execute

/etc/xdg/autostart/gnome-keyring-*.desktop
/etc/X11/xinit/xinitrc.d/50-systemd-user.sh
your window manager needs to execute the following commands during window manager startup. The commands do not need to be executed in any specific order.

dbus-update-activation-environment DISPLAY XAUTHORITY WAYLAND_DISPLAY
or

dbus-update-activation-environment --all
fmalina commented 6 months ago

I don’t use a window manager on this box at all, just a terminal. I used to use the bridge for sending password reset and signup welcome emails to my users, now I changed unlimited plan to business and I'll try SMTP instead

okanisis commented 5 months ago

I'm on arch linux using KDE with protonmail bridge 3.8.2.

Here's the output after trying dbus-update-activation-environment --all:

Feb 04 11:55:35 systemd[2034]: Started ProtonMail Bridge - ProtonMail IMAP and SMTP Bridge.
Feb 04 11:55:35 protonmail-bridge-core[93894]: time="2024-02-04T11:55:35-07:00" level=info msg="Migrating keychain helper"
Feb 04 11:55:35 protonmail-bridge-core[93894]: WARN[Feb  4 11:55:35.342] Keychain is not available.                    keychain=SecretService