I am trying to use pass-secret-service as the backend for the libsecret dbus API on my system, and I cannot get this to work. I have this in my /etc/nixos/configuraiton.nix,
services.dbus.packages = with pkgs; [
pass-secret-service
];
And every application I run that tries to call the libsecret API, outputs this error,
The name org.freedesktop.secrets was not provided by any .service files
(Even after a reboot.)
The documentation for the libsecret API seems to be rather sparse, and I cannot find any kind of logging around it to even confirm that the service in the pass-secret-service nixpkg is actually running. Has anyone else had any success with this or a similar setup?
gnome keyring is only one provider of org.freedesktop.secrets. (I think the original implementation, actually.) Some comments on that ticket mention this.
busctl looks useful, though. Thanks for mentioning that!
Ah, yes, that’s the problem: upstream provides no .service file, and expects the user to run it manually. (Issue #22 on the upstream GitHub project seems relevant.)
I wrote a NixOS module for pass_secret_service (which is only one of several provider of org.freedesktop.secrets, and added
services.passSecretService.enable = true;
to my system configuration.
If you want to use a different provider, then I don’t know. Also worth noting that there are some outstanding problems with the spec itself. See xdg-specs/-/issues/75.
That’s looks like a home-manager config, and I never had success with the home-manager module. I think my issue was that dbus units have to be installed at the system level, so I needed to do this in a NixOS module. The configuration option in my previous post should be all you need besides setting up pass itself. pass_secret_service talks to pass, but you need to have it installed and set up already.
Thanks for letting me know!
I personally only needed this to authenticate with Github and I ended up doing it in a different way which circumvents the initial issue with HM:
SSH auth:
Add contents of: ~/.ssh/id_rsa.pub to Github as a SSH key. Generate it with:
$ ssh-keygen -t rsa -C “case@sensitive.email”