Secret Service: Difference between revisions

Describe how to setup KeepassXC as Secret Service declaratively. Also added note about how to disable conflicting Gnome Keyring Daemon.
Souheab (talk | contribs)
Troubleshooting: Add a solution to fix an error where GNOME keyring daemon fails to spawn the SystemPrompter process
 
(2 intermediate revisions by one other user not shown)
Line 58: Line 58:
</nowiki>|name=home.nix|lang=nix}}
</nowiki>|name=home.nix|lang=nix}}


Databases needs to be configured for Secret Service integration by opening their settings '''Database > Database Settings...''', opening the ''Secret Service Integration'' tab and selecting a group for Secret Service entries.
If not using the {{Nixos:option|2=settings.FdoSecrets.Enabled = true}} one needs to configure for Secret Service integration by opening their settings '''Database > Database Settings...''', opening the ''Secret Service Integration'' tab and selecting a group for Secret Service entries.


{{Warning|"Another secret service is running (...). Please stop/remove it before re-enabling the Secret Service Integration."}}
{{Warning|"Another secret service is running (...). Please stop/remove it before re-enabling the Secret Service Integration."}}
Line 111: Line 111:


This error happens when the PAM module can't find the daemon's control socket. Very likely it will start a daemon and retry the action which requires a daemon, and stop the daemon when the PAM session closes.
This error happens when the PAM module can't find the daemon's control socket. Very likely it will start a daemon and retry the action which requires a daemon, and stop the daemon when the PAM session closes.
=== <code>gnome-keyring-daemon: couldn't create system prompt: GDBus.Error:org.freedesktop.DBus.Error.Spawn.ChildExited: Process org.gnome.keyring.SystemPrompter exited with status 1</code> ===
This error occurs when the GNOME Keyring daemon fails to spawn the SystemPrompter process (provided by the gcr package). This usually occurs due to D-Bus not having knowledge of the user's display environment. To fix this we must update the D-Bus environment once display is available.
On X11 this can be fixed by setting the following option:
{{File|3=services.xserver.updateDbusEnvironment = true;|name=/etc/nixos/configuration.nix|lang=nix}}
OR
Alternatively the following command can be run on display startup:
{{Commands|$ dbus-update-activation-environment --systemd --all}}


=== <code>discover_other_daemon: 0</code> with <code>--start</code> ===
=== <code>discover_other_daemon: 0</code> with <code>--start</code> ===