Public bug reported:

## Summary

gnome-keyring-daemon consistently aborts while Poetry performs package
installation with the default parallel installer enabled.

The daemon exits with SIGABRT, systemd restarts it, and all applications
temporarily lose access to the Secret Service. Poetry then fails with:

    org.freedesktop.DBus.Error.NoReply

Disabling Poetry's parallel installer completely avoids the crash.

This appears to be an issue in gnome-keyring rather than Poetry itself,
since the daemon crashes before Poetry reports the D-Bus error.

## Environment

Ubuntu 26.04 (Resolute)
gnome-keyring 50.0-1
libsecret-1-0 0.21.7-2build1
Python 3.14
Poetry 2.x
Python keyring 25.7.0
Secret Service backend:
    keyring.backends.SecretService.Keyring

## Reproduction

1. Start a fresh GNOME session.

2. Verify that Secret Service is working normally.

3. Verify that Python keyring operations succeed:

```python
import keyring

keyring.set_password("test", "user", "value")
assert keyring.get_password("test", "user") == "value"
keyring.delete_password("test", "user")
```

All operations succeed.

4. Ensure Poetry is using its default configuration:

    poetry config keyring.enabled true
    poetry config installer.parallel true

5. Run:

    poetry install

against a project that causes Poetry to access credentials stored in the
Secret Service.

6. During installation, gnome-keyring-daemon aborts.

Poetry reports:

    org.freedesktop.DBus.Error.NoReply

because the Secret Service disappears while processing the request.

## Workaround

Disabling the parallel installer completely avoids the issue:

    poetry config installer.parallel false

After disabling parallel installation, the same project installs
successfully and gnome-keyring-daemon no longer crashes.

## Expected result

Secret Service should continue serving requests regardless of concurrent
client access.

The daemon should never abort due to client requests.

## Actual result

gnome-keyring-daemon aborts with SIGABRT and is restarted by systemd.

Relevant journal output:

gkd_secret_service_get_pkcs11_session: assertion 'client' failed

GLib-GIO:ERROR:
../../../gio/gdbusconnection.c:4771:
invoke_get_property_in_idle_cb:
assertion failed: (error != NULL)

secret_objects_lookup_gck_object_for_path:
assertion 'session' failed

systemd:
gnome-keyring-daemon.service:
Main process exited, code=dumped, status=6/ABRT

## Additional observations

- D-Bus session is healthy.
- org.freedesktop.secrets is correctly registered.
- Poetry correctly detects the Secret Service backend.
- Standalone Python keyring operations succeed.
- The crash only occurs during Poetry installation.
- The issue is reproducible after a fresh login.
- Setting `poetry config installer.parallel false` consistently avoids the 
crash.

## Additional testing

I attempted to reproduce the issue on Ubuntu 24.04 running in a
VirtualBox virtual machine using the same Poetry version and
configuration (including `installer.parallel = true`).

Under the same conditions, the installation completed successfully and
`gnome-keyring-daemon` did not crash.

At the moment, I have only been able to reproduce the issue consistently
on Ubuntu 26.04 with `gnome-keyring 50.0-1`.

** Affects: gnome-keyring (Ubuntu)
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2162595

Title:
  gnome-keyring-daemon 50.0 crashes during concurrent Secret Service
  access from Poetry (installer.parallel=true)

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/gnome-keyring/+bug/2162595/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to