Re: [Buildroot] [PATCH v2 01/11] package/mpd: install provided sample configuration file as mpd.conf
Andreas Ziegler <[email protected]>
| Newsgroups | net.busybox.buildroot |
|---|---|
| Message-ID | <[email protected]> |
Hi Thomas, Everyone Thank you for the review. On 2026-08-15 17:08, Thomas Petazzoni wrote: > Hello Andreas, > > On Thu, Jul 09, 2026 at 01:08:05PM +0200, Andreas Ziegler wrote: >> The configuration file supplied by Buildroot is only a sample; it will >> not >> start MPD on a default installation. Usually a custom mpd.conf is >> supplied >> in a rootfs overlay. >> >> Drop the Buildroot configuration file and install the sample supplied >> by >> MPD instead, it is more complete, contains useful examples and is >> updated >> regularly. >> >> Signed-off-by: Andreas Ziegler <[email protected]> > > I am not conviced by this change. Indeed, doc/mpdconf.example in the > mpd code base is basically almost entirely commented out. The options > that are set by our package/mpd/mpd.conf are not set by > doc/mpdconf.example (like log_file, music_directory, etc.). Reason for switching was just because the Buildroot configuration does not start mpd, due to a missing output section [1]. Rather than fix it I would like to switch to a more complete example. It is not more than an example, since a working mpd instance needs a custom configuration file supplied via overlay or post-build script, there are too many use cases and possible hard- and software layouts. The default script would normally never be used, unless someone just started to add and configure mpd. A highly complete and commented example would definitely help. It is also kept up-to-date automatically. > So I am not sure to understand why doc/mpdconf.example is better, as > it actually doesn't configure anything. The only not commented lines > are: > > input { > plugin "curl" > } > > which is clearly a lot less than: > > music_directory "/var/lib/mpd/music" > playlist_directory "/var/lib/mpd/playlists" > db_file "/var/lib/mpd/database" > log_file "/var/log/mpd.log" > pid_file "/var/run/mpd.pid" > state_file "/var/lib/mpd/state" > bind_to_address "any" > bind_to_address "/var/lib/mpd/socket" > > in our mpd.conf. The commented-out configuration items are not unusual, many default configurations contain all available parameters with their default values, all of them commented. Unless someone changes anything, the default is used. (one example: /etc/ssh/sshd_config). The single uncommented entry for libsamplerate is probably a typo. The Buildroot mpd.conf is from 2013; at that time it represented the only valid topology for mpd: both database and output on one machine. Since version 0.20, mpd can be configured as server (database, no output), client (remote access to database, output) or standalone. You might also use mpd as a streaming only solution, with input exclusively from the internet. So which is the correct configuration to use for Buildroot? There is one issue that still prevents the mpd supplied sample configuration to run mpd properly: not setting a value for pid_file prevents the file to be used (OK for a systemd install, not OK for sysV), which results in mpd refusing to terminate gracefully. Mitigation: inject pid_file and log_file via POST_BUILD_HOOK for builds without systemd. Thoughts? > So overall I don't understand why it is an "improvement". Could you > clarify? > > Thanks a lot! > > Thomas > -- > Thomas Petazzoni, co-owner and CEO, Bootlin > Embedded Linux and Kernel engineering and training > https://bootlin.com Kind regards, Andreas [1] Actually this changed in the latest version, mpd now auto-detects alsa devices, if present. _______________________________________________ buildroot mailing list [email protected] https://lists.buildroot.org/mailman/listinfo/buildroot