Control: affects -1 chromium
On Fri, 28 Apr 2023 10:35:16 -0400 Harold Grove <rgr...@rsu20.org>
wrote:
> Package: gnome-keyring
> Version: 42.1-1+b2
> Severity: normal
> X-Debbugs-Cc: rgr...@rsu20.org
>
> Dear Maintainer,
>
> On a new account, gnome-keyring seems to prevent the first run of
both Google
> Chrome and Chromium. Restarting gnome-keyring-daemon.service works
but requires
> another unlock of the keyring. After this, Chrome/Chromium launches
as
> expected.
> Thanks
>
In debugging this, I see the following happening on the dbus session:
1. Chromium asks for (and receives) the owner for
org.freedesktop.secrets
2. Chromium calls Properties.GetAll("org.freedesktop.Secret.Service")
3. gnome-keyring sends back a dict Collections [
"/org/freedesktop/secrets/collection/login",
"/org/freedesktop/secrets/collection/session"]
4. Chromium calls org.freedesktop.SecretService.OpenSession()
5. gnome-keyring sends back a (fingerprint? and) session path
"/org/freedesktop/secrets/session/s19"
6. Chromium calls org.freedesktop.Secret.Collection.CreateItem(),
passing it an Item label, the session path, and some other stuff.
7. Dbus (not gnome-keyring) responds back with a
DBus.Error.UnknownMethod: Object does not exist at path
"/org/freedesktop/secrets/collection/login"
This is pretty easily reproducible on a fresh bookworm install in a VM
(I used the xfce desktop task); however, it only occurs on the first
boot. After rebooting (or restarting gnome-keyring I guess?), dbus
won't report the above error and chromium will start successfully.