# for local builds with dependencies that cannot be enabled in Fedora %bcond freeworld 0 # not built for EPEL 9 %bcond libmpdclient %{defined fedora} # only compatible with new API, EPEL 9 has old API %bcond mpcdec %[%{defined fedora} || 0%{?rhel} >= 10] # not built for EPEL 9 %bcond wildmidi %{defined fedora} %global mpd_user mpd %global mpd_group %{mpd_user} %global mpd_homedir %{_localstatedir}/lib/mpd %global mpd_logdir %{_localstatedir}/log/mpd %global mpd_musicdir %{mpd_homedir}/music %global mpd_playlistsdir %{mpd_homedir}/playlists %global mpd_rundir /run/mpd %global mpd_configfile %{_sysconfdir}/mpd.conf %global mpd_dbfile %{mpd_homedir}/mpd.db %global mpd_logfile %{mpd_logdir}/mpd.log %global mpd_statefile %{mpd_homedir}/mpdstate Name: mpd Epoch: 1 Version: 0.23.15 Release: 7%{?dist} Summary: The Music Player Daemon License: GPLv2+ URL: https://www.musicpd.org Source0: %{url}/download/mpd/0.23/mpd-%{version}.tar.xz Source1: %{url}/download/mpd/0.23/mpd-%{version}.tar.xz.sig Source2: https://pgp.key-server.io/download/0x236E8A58C6DB4512#/gpgkey.asc Source3: mpd.logrotate Source4: mpd.tmpfiles.d Source5: mpd.xml Source6: mpd.sysusers Patch0: mpd-0.23-mpdconf.patch Patch1: mpd-0.20-remove_NoNewPrivileges.patch Patch2: timidity_path.patch # https://github.com/MusicPlayerDaemon/MPD/commit/1402869715e3efca87942d79c3173a6b21a6925d Patch3: fmt11.patch BuildRequires: gcc BuildRequires: gnupg2 BuildRequires: meson # library deps BuildRequires: boost-devel BuildRequires: bzip2-devel %if %{with freeworld} BuildRequires: faad2-devel %endif BuildRequires: lame-devel BuildRequires: libmad-devel %if %{with mpcdec} BuildRequires: libmpcdec-devel %endif BuildRequires: pkgconfig(adplug) BuildRequires: pkgconfig(alsa) BuildRequires: pkgconfig(ao) BuildRequires: pkgconfig(audiofile) BuildRequires: pkgconfig(avahi-client) BuildRequires: pkgconfig(dbus-1) BuildRequires: pkgconfig(expat) BuildRequires: pkgconfig(flac) BuildRequires: pkgconfig(fluidsynth) BuildRequires: pkgconfig(fmt) BuildRequires: pkgconfig(icu-i18n) BuildRequires: pkgconfig(id3tag) BuildRequires: pkgconfig(jack) BuildRequires: pkgconfig(libavcodec) BuildRequires: pkgconfig(libavfilter) BuildRequires: pkgconfig(libavformat) BuildRequires: pkgconfig(libavutil) BuildRequires: pkgconfig(libcdio_paranoia) BuildRequires: pkgconfig(libchromaprint) BuildRequires: pkgconfig(libcurl) BuildRequires: pkgconfig(libgcrypt) BuildRequires: pkgconfig(libgme) BuildRequires: pkgconfig(libiso9660) BuildRequires: pkgconfig(libmikmod) BuildRequires: pkgconfig(libmms) BuildRequires: pkgconfig(libmodplug) %if %{with libmpdclient} BuildRequires: pkgconfig(libmpdclient) %endif BuildRequires: pkgconfig(libmpg123) BuildRequires: pkgconfig(libnfs) BuildRequires: pkgconfig(libopenmpt) BuildRequires: pkgconfig(libpcre2-8) BuildRequires: pkgconfig(libpipewire-0.3) BuildRequires: pkgconfig(libpulse) BuildRequires: pkgconfig(libsidplayfp) BuildRequires: pkgconfig(libsystemd) BuildRequires: pkgconfig(libupnp) BuildRequires: pkgconfig(liburing) BuildRequires: pkgconfig(ogg) BuildRequires: pkgconfig(openal) BuildRequires: pkgconfig(opus) BuildRequires: pkgconfig(samplerate) BuildRequires: pkgconfig(shout) BuildRequires: pkgconfig(smbclient) BuildRequires: pkgconfig(sndfile) BuildRequires: pkgconfig(soxr) BuildRequires: pkgconfig(sqlite3) BuildRequires: pkgconfig(systemd) BuildRequires: pkgconfig(twolame) BuildRequires: pkgconfig(vorbis) BuildRequires: pkgconfig(wavpack) %if %{with wildmidi} BuildRequires: pkgconfig(wildmidi) %endif BuildRequires: pkgconfig(zlib) BuildRequires: pkgconfig(zziplib) # docs BuildRequires: python3dist(sphinx) # tests BuildRequires: pkgconfig(gtest) %{?systemd_requires} %{?sysusers_requires_compat} Requires: (mpd-firewalld = %{?epoch}:%{version}-%{release} if firewalld) %description Music Player Daemon (MPD) is a flexible, powerful, server-side application for playing music. Through plugins and libraries it can play a variety of sound files (e.g., OGG, MP3, FLAC, AAC, WAV) and can be controlled remotely via its network protocol. It can be used as a desktop music player, but is also great for streaming music to a stereo system over a local network. There are many GUI and command-line applications to choose from that act as a front-end for browsing and playing your MPD music collection. %package firewalld Summary: FirewallD metadata file for MPD BuildRequires: firewalld-filesystem Requires: firewalld-filesystem Requires(post): firewalld-filesystem %description firewalld This package contains FirewallD file for MPD. %prep %{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}' --data='%{SOURCE0}' %autosetup -p1 %build %meson \ -Dsystemd_system_unit_dir=%{_unitdir} \ -Dsystemd_user_unit_dir=%{_userunitdir} \ -Dipv6=enabled \ -Dpipe=true \ %if %{without freeworld} -Dfaad=disabled \ %endif %if %{without libmpdclient} -Dlibmpdclient=disabled \ %endif %if %{without mpcdec} -Dmpcdec=disabled \ %endif %if %{without wildmidi} -Dwildmidi=disabled \ %endif -Ddocumentation=auto \ -Dsolaris_output=disabled \ -Dsndio=disabled \ -Dshine=disabled \ -Dtremor=disabled \ -Dqobuz=disabled \ -Dsoundcloud=disabled %meson_build %install %meson_install install -p -D -m 0644 %{SOURCE3} %{buildroot}%{_sysconfdir}/logrotate.d/mpd install -p -D -m 0644 %{SOURCE4} %{buildroot}%{_prefix}/lib/tmpfiles.d/mpd.conf install -p -D -m 0644 %{SOURCE5} %{buildroot}%{_prefix}/lib/firewalld/services/mpd.xml install -p -D -m 0644 %{SOURCE6} %{buildroot}%{_sysusersdir}/mpd.conf mkdir -p %{buildroot}%{mpd_homedir} mkdir -p %{buildroot}%{mpd_logdir} mkdir -p %{buildroot}%{mpd_musicdir} mkdir -p %{buildroot}%{mpd_playlistsdir} mkdir -p %{buildroot}%{mpd_rundir} touch %{buildroot}%{mpd_dbfile} touch %{buildroot}%{mpd_logfile} touch %{buildroot}%{mpd_statefile} install -D -p -m644 doc/mpdconf.example %{buildroot}%{mpd_configfile} rm -rf %{buildroot}%{_docdir}/mpd/ %pre %sysusers_create_compat %{SOURCE6} %post %systemd_post mpd.service %preun %systemd_preun mpd.service %postun %systemd_postun_with_restart mpd.service %post firewalld %firewalld_reload %files %doc AUTHORS NEWS README.md %{_vpath_builddir}/doc/html %license COPYING %{_bindir}/mpd %{_mandir}/man1/mpd.1* %{_mandir}/man5/mpd.conf.5* %{_unitdir}/mpd.service %{_unitdir}/mpd.socket %{_userunitdir}/mpd.service %{_userunitdir}/mpd.socket %{_sysusersdir}/mpd.conf %config(noreplace) %{mpd_configfile} %config(noreplace) %{_sysconfdir}/logrotate.d/mpd %{_prefix}/lib/tmpfiles.d/mpd.conf %{_datadir}/icons/hicolor/scalable/apps/mpd.svg %defattr(-,%{mpd_user},%{mpd_group}) %dir %{mpd_homedir} %dir %{mpd_logdir} %dir %{mpd_musicdir} %dir %{mpd_playlistsdir} %ghost %dir %{mpd_rundir} %ghost %{mpd_dbfile} %ghost %{mpd_logfile} %ghost %{mpd_statefile} %files firewalld %{_prefix}/lib/firewalld/services/mpd.xml %changelog * Thu Oct 10 2024 Yaakov Selkowitz - 1:0.23.15-7 - Modified for inclusion in Fedora * Tue Oct 08 2024 Nicolas Chauvet - 1:0.23.15-6 - Rebuilt * Fri Aug 02 2024 RPM Fusion Release Engineering - 1:0.23.15-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild * Sat Jul 20 2024 Leigh Scott - 1:0.23.15-4 - Rebuild for new fmt version * Sun Feb 04 2024 RPM Fusion Release Engineering - 1:0.23.15-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild * Sat Jan 13 2024 Leigh Scott - 1:0.23.15-2 - Install html docs * Wed Dec 20 2023 Leigh Scott - 1:0.23.15-1 - Update to 0.23.15 * Wed Nov 08 2023 Leigh Scott - 1:0.23.14-2 - Rebuild for new faad2 version * Sun Oct 08 2023 Leigh Scott - 1:0.23.14-1 - Update to 0.23.14 * Wed Aug 02 2023 RPM Fusion Release Engineering - 1:0.23.13-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild * Sun Jul 02 2023 Leigh Scott - 1:0.23.13-2 - rebuilt * Mon May 22 2023 Leigh Scott - 1:0.23.13-1 - Update to 0.23.13 * Sat Mar 25 2023 Leigh Scott - 1:0.23.12-3 - Use systemd sysusers config to create user and group * Tue Feb 28 2023 Leigh Scott - 1:0.23.12-2 - Rebuild for new ffmpeg * Tue Jan 17 2023 Leigh Scott - 1:0.23.12-1 - Update to 0.23.12 * Mon Nov 28 2022 Leigh Scott - 1:0.23.11-1 - Update to 0.23.11 * Fri Oct 14 2022 Leigh Scott - 1:0.23.10-1 - Update to 0.23.10 * Fri Aug 19 2022 Leigh Scott - 1:0.23.9-1 - Update to 0.23.9 * Fri Jul 22 2022 Leigh Scott - 1:0.23.8-2 - Rebuild for new ffmpeg * Sat Jul 09 2022 Leigh Scott - 1:0.23.8-1 - Update to 0.23.8 * Tue May 10 2022 Leigh Scott - 1:0.23.7-1 - Update to 0.23.7 * Mon Mar 14 2022 Leigh Scott - 1:0.23.6-1 - Update to 0.23.6 * Sat Feb 05 2022 Leigh Scott - 1:0.23.5-2 - Rebuilt for ffmpeg * Thu Dec 09 2021 Leigh Scott - 1:0.23.5-1 - Update to 0.23.5 * Tue Nov 16 2021 Leigh Scott - 1:0.23.4-1 - Update to 0.23.4 * Tue Nov 09 2021 Leigh Scott - 1:0.23.3-2 - Rebuilt for new ffmpeg snapshot * Sun Oct 31 2021 Leigh Scott - 1:0.23.3-1 - Update to 0.23.3 * Fri Oct 22 2021 Leigh Scott - 1:0.23.2-1 - Update to 0.23.2 * Tue Oct 19 2021 Leigh Scott - 1:0.23.1-1 - Update to 0.23.1 * Mon Oct 18 2021 Leigh Scott - 1:0.23-2 - Fix pipewire samplerate * Thu Oct 14 2021 Leigh Scott - 1:0.23-1 - Update to 0.23 * Fri Aug 27 2021 Leigh Scott - 1:0.22.11-1 - Update to 0.22.11 * Sat Aug 07 2021 Leigh Scott - 1:0.22.10-1 - Update to 0.22.10 * Tue Aug 03 2021 RPM Fusion Release Engineering - 1:0.22.9-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild * Wed Jun 23 2021 Leigh Scott - 1:0.22.9-1 - Update to 0.22.9 * Tue Jun 08 2021 Leigh Scott - 1:0.22.8-2 - Drop fluidsynth support due to poor fedora maintenance (.so bumps to stable releases) * Sun May 23 2021 Leigh Scott - 1:0.22.8-1 - Update to 0.22.8 * Fri May 21 2021 Leigh Scott - 1:0.22.7-1 - Update to 0.22.7 * Tue May 11 2021 Leigh Scott - 1:0.22.6-2 - rebuilt * Wed Feb 17 2021 Leigh Scott - 1:0.22.6-1 - Update to 0.22.6 * Mon Feb 15 2021 Leigh Scott - 1:0.22.5-1 - Update to 0.22.5 * Wed Feb 03 2021 RPM Fusion Release Engineering - 1:0.22.4-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild * Thu Jan 21 2021 Leigh Scott - 1:0.22.4-1 - Update to 0.22.4 * Wed Jan 6 2021 Leigh Scott - 1:0.22.3-3 - Disable adplug support * Thu Dec 31 2020 Leigh Scott - 1:0.22.3-2 - Rebuilt for new ffmpeg snapshot * Fri Nov 6 2020 Leigh Scott - 1:0.22.3-1 - Update to 0.22.3 * Wed Oct 28 2020 Leigh Scott - 1:0.22.2-1 - Update to 0.22.2 * Sat Oct 17 2020 Leigh Scott - 1:0.22.1-1 - Update to 0.22.1 * Sun Oct 11 2020 Leigh Scott - 1:0.22-1 - Update to 0.22 * Wed Sep 23 2020 Leigh Scott - 1:0.21.26-1 - Update to 0.21.26 * Tue Aug 18 2020 RPM Fusion Release Engineering - 1:0.21.25-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild * Sat Jul 18 2020 Leigh Scott - 1:0.21.25-2 - Rebuilt * Wed Jul 08 2020 Leigh Scott - 1:0.21.25-1 - Update to 0.21.25 * Thu Jun 11 2020 Leigh Scott - 1:0.21.24-1 - Update to 0.21.24 * Fri Apr 24 2020 Leigh Scott - 1:0.21.23-1 - Update to 0.21.23 * Fri Apr 10 2020 Leigh Scott - 1:0.21.22-2 - Rebuild for new libcdio version * Sat Apr 04 2020 leigh123linux - 1:0.21.22-1 - Update to 0.21.22 * Thu Mar 19 2020 Leigh Scott - 1:0.21.21-1 - Update to 0.21.21 * Sat Feb 22 2020 RPM Fusion Release Engineering - 1:0.21.20-2 - Rebuild for ffmpeg-4.3 git * Thu Feb 20 2020 Leigh Scott - 1:0.21.20-1 - Update to 0.21.20 * Wed Feb 05 2020 RPM Fusion Release Engineering - 1:0.21.19-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild * Fri Jan 17 2020 Leigh Scott - 1:0.21.19-1 - Update to 0.21.19 * Wed Dec 25 2019 Leigh Scott - 1:0.21.18-1 - Update to 0.21.18 * Tue Dec 17 2019 Leigh Scott - 1:0.21.17-1 - Update to 0.21.17 * Sun Dec 01 2019 Leigh Scott - 1:0.21.16-2 - Rebuilt for new libicu * Wed Oct 16 2019 Leigh Scott - 1:0.21.16-1 - Update to 0.21.16 * Thu Sep 26 2019 Leigh Scott - 1:0.21.15-1 - Update to 0.21.15 * Wed Sep 11 2019 Leigh Scott - 1:0.21.14-3 - Rebuild for new libnfs version * Sat Aug 31 2019 Leigh Scott - 1:0.21.14-2 - Rebuild for libsidplayfp-2.0.0 (rfbz #5374) * Thu Aug 22 2019 Leigh Scott - 1:0.21.14-1 - Update to 0.21.14 * Mon Aug 12 2019 Leigh Scott - 1:0.21.13-1 - Update to 0.21.13 * Tue Aug 06 2019 Leigh Scott - 1:0.21.12-2 - Rebuild for new ffmpeg version * Sat Aug 03 2019 Leigh Scott - 1:0.21.12-1 - Update to 0.21.12 * Thu Jul 04 2019 Leigh Scott - 1:0.21.11-1 - Update to 0.21.11 - Clean up * Sat Jun 08 2019 Leigh Scott - 1:0.21.10-1 - Update to 0.21.10 * Wed May 22 2019 Leigh Scott - 1:0.21.9-1 - Update to 0.21.9 * Wed Apr 24 2019 Leigh Scott - 1:0.21.8-1 - Update to 0.21.8 * Wed Apr 03 2019 Leigh Scott - 1:0.21.7-1 - Update to 0.21.7 - Add upstream commit to fix gcc-9 build issue * Mon Mar 18 2019 Leigh Scott - 1:0.21.6-1 - Update to 0.21.6 * Mon Mar 04 2019 RPM Fusion Release Engineering - 1:0.21.5-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild * Mon Feb 25 2019 Leigh Scott - 1:0.21.5-2 - Add BuildRequires firewalld-filesystem * Sat Feb 23 2019 Leigh Scott - 1:0.21.5-1 - Update to 0.21.5 - Force python3-sphinx for docs * Wed Jan 16 2019 Leigh Scott - 1:0.21.4-2 - Add firewalld sub-package * Mon Jan 14 2019 Leigh Scott - 1:0.21.4-1 - Update to 0.21.4 - Add changes for meson build * Thu Oct 25 2018 Leigh Scott - 1:0.20.22-1 - Update to 0.20.22 - Switch buildroot macro * Wed Oct 17 2018 Leigh Scott - 1:0.20.21-1 - Update to 0.20.21 - Remove Group tag * Fri Jul 27 2018 RPM Fusion Release Engineering - 1:0.20.19-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild * Mon Jul 09 2018 Ankur Sinha - 1:0.20.19-2 - Update to add BRs for plugins - rpmfusionbz: 4961 * Sun Apr 29 2018 Sérgio Basto - 1:0.20.19-1 - Update 0.20.19 * Thu Mar 08 2018 RPM Fusion Release Engineering - 1:0.20.16-3 - Rebuilt for new ffmpeg snapshot * Thu Mar 01 2018 RPM Fusion Release Engineering - 1:0.20.16-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild * Tue Feb 06 2018 Leigh Scott - 1:0.20.16-1 - Update to 0.20.16 * Sun Jan 28 2018 Nicolas Chauvet - 1:0.20.15-1 - Update to 0.20.15 * Sun Jan 28 2018 Nicolas Chauvet - 1:0.20.10-5 - Rebuilt for libcdio * Thu Jan 18 2018 Leigh Scott - 1:0.20.10-4 - Rebuilt for ffmpeg-3.5 git * Mon Oct 16 2017 Leigh Scott - 1:0.20.10-3 - Rebuild for ffmpeg update * Sat Oct 07 2017 Leigh Scott - 1:0.20.10-2 - Enable sidplay (rfbz #2305) * Sat Oct 07 2017 Leigh Scott - 1:0.20.10-1 - Update to 0.20.10 - Remove NoNewPrivileges (rfbz #4549) * Thu Aug 31 2017 RPM Fusion Release Engineering - 1:0.20.8-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild * Mon May 22 2017 Nicolas Chauvet - 1:0.20.8-1 - Update to 0.20.8 * Sat Apr 29 2017 Leigh Scott - 1:0.20.6-2 - Rebuild for ffmpeg update * Mon Apr 10 2017 Leigh Scott - 1:0.20.6-1 - Update to latest upstream version - Add systemd user service (rfbz #3768)