Skip to content

Commit 400cf64

Browse files
authored
Merge pull request #1247 from sepastian/master
Explain that credentials from keyring can't be accessed in system service
2 parents 5565f24 + 32b9906 commit 400cf64

File tree

2 files changed

+5
-0
lines changed

2 files changed

+5
-0
lines changed

docs/src/config/File.md

+2
Original file line numberDiff line numberDiff line change
@@ -146,6 +146,8 @@ device_type = "speaker"
146146

147147
- **`use_keyring`** config entry / **`--use-keyring`** CLI flag <!-- omit in toc -->
148148

149+
> __Note:__ If choosing the user's keyring to store login credentials, running spotifyd as a systemd _system service_ is no longer possible. A system wide service cannot access a specific user's keyring. In this case, make sure to run spotifyd as a systemd _user service_. See [systemd configuration][services/Systemd.md].
150+
149151
This features leverages [Linux's DBus Secret Service API][secret-storage-specification] or native macOS keychain in order to forgo the need to store your password directly in the config file. To use it, compile with the `dbus_keyring` feature and set the `use-keyring` config entry to `true` or pass the `--use-keyring` CLI flag during start to the daemon. Remove the `password` and/or `password_cmd` config entries.
150152

151153
Your keyring entry needs to have the following attributes set:

docs/src/config/services/Systemd.md

+3
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,9 @@ systemctl --user enable spotifyd.service --now
1919

2020
## As a system wide service
2121

22+
> [!IMPORTANT]
23+
> When running spotifyd as a system wide service, it is not possible to access a user's keyring to obtain login credentials. Do not set `use_keyring = true` and do not specify `--use-keyring`, when running as a system wide service. To be able to access login credentials stored in the user's keyring, run spotifyd as a user service, as decribed above.
24+
2225
A `systemd.service` unit file is provided to help run spotifyd as a service on systemd-based systems. The file `contrib/spotifyd.service` should be copied to:
2326

2427
```bash

0 commit comments

Comments
 (0)