I'm running pm-cli as part of an automated email pipeline on a headless Debian server. The server has no desktop environment and no D-Bus secret service running, so GetPassword() fails with "The name org.freedesktop.secrets was not provided by any .service files."
I worked around this by setting up secretsd to provide a minimal secret-service over D-Bus, but it's a fragile dependency for what's really just one stored password. I think a cleaner solution would be to check an environment variable (e.g. PM_CLI_BRIDGE_PASSWORD) before falling back to the system keyring. Interactive users wouldn't notice any difference -- the env var is only used when set.
I have a branch with the change, tests, and a docs update: feat/env-bridge-password. Happy to open a PR if this sounds reasonable.
I'm running pm-cli as part of an automated email pipeline on a headless Debian server. The server has no desktop environment and no D-Bus secret service running, so
GetPassword()fails with "The name org.freedesktop.secrets was not provided by any .service files."I worked around this by setting up
secretsdto provide a minimal secret-service over D-Bus, but it's a fragile dependency for what's really just one stored password. I think a cleaner solution would be to check an environment variable (e.g.PM_CLI_BRIDGE_PASSWORD) before falling back to the system keyring. Interactive users wouldn't notice any difference -- the env var is only used when set.I have a branch with the change, tests, and a docs update:
feat/env-bridge-password. Happy to open a PR if this sounds reasonable.