[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#59866] [PATCH v5.1] services: mpd: Refactor MPD service.
From: |
mirai |
Subject: |
[bug#59866] [PATCH v5.1] services: mpd: Refactor MPD service. |
Date: |
Sat, 24 Dec 2022 19:17:29 +0000 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.6.0 |
On 2022-12-24 17:20, Liliana Marie Prikler wrote:
>> -(define %mpd-accounts
>> - ;; Default account and group for MPD.
>> - (list (user-group (name "mpd") (system? #t))
>> - (user-account
>> - (name "mpd")
>> - (group "mpd")
>> - (system? #t)
>> - (comment "Music Player Daemon (MPD) user")
>>
>> - ;; Note: /var/run/mpd hosts one sub-directory per user, of
>> which
>> - ;; /var/run/mpd/mpd corresponds to the "mpd" user.
>> - (home-directory "/var/run/mpd/mpd")
>> + ;; TODO: remove me, migrates from the old location at
>> /var/run/mpd
>> + ;; to the new one at /var/lib/mpd.
>> + (let* ((user (getpw #$user))
>> + (deprecated-directory (string-append "/var/run/mpd/"
>> + #$user "/.mpd"))
>> + (new-directory (string-append (passwd:dir user)
>> + "/.config/mpd")))
>> + (when (and (file-exists? deprecated-directory)
>> + (not (file-exists? new-directory)))
>> + (rename-file deprecated-directory new-directory)
>> + (chown new-directory (passwd:uid user) (passwd:gid
>> user))))
>> + (mkdir-p (dirname #$log-file)))))
> I'm not sure whether we should migrate the logs here. I do think the
> logs should be stored in /var/log rather than /var/run, but other than
> that I'm not even sure there's much value in changing the /var/run/mpd
> structure. What's your use case for doing so?
I agree with you that they belong to /var/log, though I prefer leaving this to
MPDs default behavior when the directives are not explicitly set.
IIRC MPD will store them under $XDG_CONFIG_HOME/log if the "log_file" directive
is absent.
They were previously stored under /var/run because it was set by default to
store
under ~/.mpd and the user account had its $HOME set as "/var/run/mpd/mpd".
(Looking closer to the old behavior, this also meant that the user field was
actually
ignored as the user-group/user-account was hardcoded).
Since /var/run/mpd(/mpd) is the $HOME directory in the old style configuration,
it
also contains other files of interest, as most of the fields default values are
directives relative to $HOME.
Personally I've no use to this migration part and I'd prefer an outright
breaking
change to the new style, most of the MPD generated files can be regenerated
without much hardship
and this is introducing complexity and soon™ to be obsolete code.
Cheers
- [bug#54986] [PATCH 0/2] services: mpd: Refactor MPD service, (continued)
[bug#59866] [PATCH v2] services: mpd: Refactor MPD service., mirai, 2022/12/07
[bug#59866] [PATCH v3] services: mpd: Refactor MPD service., mirai, 2022/12/16
[bug#59866] [PATCH v4 1/2] services: mpd: use 'define-configuration'., mirai, 2022/12/21
[bug#59866] [PATCH v5 1/2] services: mpd: rewrite using 'define-configuration'., mirai, 2022/12/24
[bug#59866] [PATCH v5.1] services: mpd: Refactor MPD service., mirai, 2022/12/24
[bug#59866] [PATCH v5.2] services: mpd: Refactor MPD service., mirai, 2022/12/24