]> git.pld-linux.org Git - packages/mpd.git/blame - mpd.spec
up to 0.23.4
[packages/mpd.git] / mpd.spec
CommitLineData
02876c51 1# TODO:
c7dcdf50 2# - add logrotate
424f04d1
KK
3#
4# Conditional build:
de087e61
JB
5%bcond_without mod # MOD support via libmikmod
6%bcond_without pulseaudio # PulseAudio support
ea3b33dc 7%bcond_without audiofile # Audiofile support (WAV and others)
9cf1eba3 8
c7dcdf50 9Summary: Music Player Daemon
6ae29a87 10Summary(pl.UTF-8): Music Player Daemon - demon odtwarzający muzykę
c7dcdf50 11Name: mpd
96e367f6
JP
12Version: 0.23.4
13Release: 1
dbce58e4 14License: GPL v2+
c7dcdf50 15Group: Applications/Multimedia
a1df62ee 16Source0: https://www.musicpd.org/download/mpd/0.23/%{name}-%{version}.tar.xz
96e367f6 17# Source0-md5: 3503f9b7315f663be0f3b9dae1f201f3
31afabcf 18Source1: %{name}.conf
fb6389fb 19Source2: %{name}.init
9cf1eba3 20Source3: %{name}.sysconfig
be963cbe 21Source4: %{name}.tmpfiles
c7dcdf50 22URL: http://www.musicpd.org/
4351e719 23BuildRequires: OpenAL-devel
f756cffc 24BuildRequires: adplug-devel
3523369e 25BuildRequires: alsa-lib-devel >= 0.9.0
a8aa6145 26%{?with_audiofile:BuildRequires: audiofile-devel >= 0.3}
a8aa6145 27BuildRequires: avahi-devel
5ce9dcc9 28BuildRequires: boost-devel >= 1.58
5125f9d8 29BuildRequires: bzip2-devel
4f727bb7 30BuildRequires: curl-devel >= 7.33
a8aa6145 31BuildRequires: dbus-devel
5125f9d8 32BuildRequires: doxygen
a8aa6145 33BuildRequires: expat-devel
158342a8 34BuildRequires: faad2-devel >= 2.6.1-5
5ce9dcc9 35BuildRequires: ffmpeg-devel >= 2.4.0
a8aa6145
JP
36BuildRequires: flac-devel >= 1.2.0
37BuildRequires: fluidsynth-devel >= 1.1
296a7717 38BuildRequires: game-music-emu-devel
4f727bb7 39BuildRequires: gcc >= 6:8
a8aa6145 40BuildRequires: glib2-devel >= 1:2.28.0
a8aa6145 41BuildRequires: jack-audio-connection-kit-devel >= 0.100
424f04d1 42BuildRequires: lame-libs-devel
c7dcdf50 43BuildRequires: libao-devel >= 0.8.3
5125f9d8 44BuildRequires: libcdio-devel
4f727bb7
JP
45BuildRequires: libcdio-paranoia-devel >= 0.93
46BuildRequires: libchromaprint-devel
a1df62ee 47BuildRequires: libfmt-devel
5ce9dcc9 48BuildRequires: libicu-devel >= 50
c7dcdf50
AF
49BuildRequires: libid3tag-devel
50BuildRequires: libmad-devel
5ce9dcc9 51%{?with_mod:BuildRequires: libmikmod-devel >= 3.2}
a8aa6145 52BuildRequires: libmms-devel >= 0.4
5125f9d8 53BuildRequires: libmodplug-devel
a1df62ee 54BuildRequires: libmpdclient-devel >= 2.11
df032f15 55BuildRequires: libmpg123-devel >= 1.28.0
5ce9dcc9 56BuildRequires: libnfs-devel >= 1.11
c7dcdf50 57BuildRequires: libogg-devel
a1df62ee 58BuildRequires: libopenmpt-devel >= 0.5
a8aa6145 59BuildRequires: libsamplerate-devel >= 0.1.3
38f95112 60BuildRequires: libshout-devel
4f727bb7 61BuildRequires: libsidplayfp-devel >= 1.8
a8aa6145
JP
62BuildRequires: libsmbclient-devel >= 0.2
63BuildRequires: libsndfile-devel
4f727bb7
JP
64BuildRequires: libstdc++-devel
65BuildRequires: libupnp-devel >= 1.8
66BuildRequires: liburing-devel
c7dcdf50 67BuildRequires: libvorbis-devel
a1df62ee 68BuildRequires: meson >= 0.56.0
735ff9d7 69BuildRequires: musepack-devel
5ce9dcc9 70BuildRequires: ninja
a8aa6145 71BuildRequires: opus-devel
4f727bb7 72BuildRequires: pcre-devel
a1df62ee 73BuildRequires: pipewire-devel >= 0.3
3523369e 74BuildRequires: pkgconfig >= 1:0.9.0
a8aa6145 75%{?with_pulseaudio:BuildRequires: pulseaudio-devel >= 0.9.16}
eb3abe5a 76BuildRequires: rpm-build >= 4.6
2605800f 77BuildRequires: rpmbuild(macros) >= 1.736
a8aa6145
JP
78BuildRequires: shine-devel >= 3.1
79BuildRequires: soxr-devel
5ce9dcc9 80BuildRequires: sphinx-pdg
ad4050a4 81BuildRequires: sqlite3-devel >= 3.7.3
a8aa6145 82BuildRequires: systemd-devel
00831d71 83BuildRequires: tar >= 1:1.22
4351e719 84BuildRequires: twolame-devel
5125f9d8
AF
85BuildRequires: wavpack-devel
86BuildRequires: wildmidi-devel
87BuildRequires: xmlto
00831d71 88BuildRequires: xz
f756cffc 89BuildRequires: yajl-devel >= 2.0
c7dcdf50 90BuildRequires: zlib-devel
a8aa6145 91BuildRequires: zziplib-devel >= 0.13
195b8128 92Requires(post,preun,postun): systemd-units >= 38
ad4050a4
JP
93Requires: alsa-lib >= 0.9.0
94%{?with_audiofile:Requires: audiofile >= 0.3}
4f727bb7 95Requires: curl-libs >= 7.33
ad4050a4 96Requires: faad2-libs >= 2.6.1-5
5ce9dcc9 97Requires: ffmpeg-libs >= 2.4.0
ad4050a4
JP
98Requires: flac >= 1.2.0
99Requires: fluidsynth >= 1.1
100Requires: glib2 >= 1:2.28.0
101Requires: jack-audio-connection-kit-libs >= 0.100
102Requires: libao >= 0.8.3
4f727bb7 103Requires: libcdio-paranoia >= 0.93
5ce9dcc9
JP
104Requires: libicu >= 50
105%{?with_mod:Requires: libmikmod >= 3.2}
ad4050a4 106Requires: libmms >= 0.4
a1df62ee 107Requires: libmpdclient >= 2.11
df032f15 108Requires: libmpg123 >= 1.28.0
5ce9dcc9 109Requires: libnfs >= 1.11
a1df62ee 110Requires: libopenmpt >= 0.5
ad4050a4 111Requires: libsamplerate >= 0.1.3
4f727bb7 112Requires: libsidplayfp >= 1.8
ad4050a4 113Requires: libsmbclient >= 0.2
4f727bb7 114Requires: libupnp >= 1.8
a1df62ee 115Requires: pipewire-libs >= 0.3
ad4050a4
JP
116%{?with_pulseaudio:Requires: pulseaudio-libs >= 0.9.16}
117Requires: shine >= 3.1
118Requires: sqlite3 >= 3.7.3
195b8128 119Requires: systemd-units >= 38
ad4050a4
JP
120Requires: yajl >= 2.0
121Requires: zziplib >= 0.13
eb3abe5a 122Suggests: %{name}-icons
31afabcf
ZU
123Provides: group(mpd)
124Provides: user(mpd)
c7dcdf50
AF
125BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
126
127%description
87d7b893
JB
128Music Player Daemon (MPD) allows remote access for playing music (MP3,
129Ogg Vorbis, FLAC, AAC, Mod, and wave files) and managing playlists.
130MPD is designed for integrating a computer into a stereo system that
131provides control for music playback over a local network. It is also
132makes a great desktop music player, especially if you are a console
133junkie, like frontend options, or restart X often.
134
31afabcf
ZU
135%description -l hu.UTF-8
136Music Player Daemon (MPD)-vel lehetővé válik távoli zenelejátszás
137(MP3, Ogg Vorbis, FLAC, AAC, Mod és wav fájlok) és lejátszási listák
138menedzselése. Az MPD a számítógépben egy zenelejátszó, amelyet
139irányíthatsz helyi hálózaton keresztül. Egyben egy zseniális desktop
140zenelejátszó is, különösen a konzol-mániásoknak, vagy azoknak, akik
141sűrűn indítják újra az X-et.
142
f7293765
JR
143%description -l pl.UTF-8
144Music Player Daemon (MPD) pozwala na zdalny dostęp do odtwarzania
145muzyki (plików MP3, Ogg Vorbis, FLAC, AAC, Mod i wave) oraz
146zarządzania playlistami. MPD jest zaprojektowany do integrowania
147komputera w system stereo umożliwiający sterowanie odtwarzaniem muzyki
148w sieci lokalnej. Służy także za dobry odtwarzacz muzyki dla
149komputerów biurkowych, zwłaszcza dla miłośników konsoli, różnych opcji
150frontendów albo często restartujących X.
c7dcdf50 151
5412b34a
ER
152%package doc
153Summary: Documentation for Music Player Daemon (MPD)
154Summary(fr.UTF-8): Documentation pour Music Player Daemon (MPD)
155Summary(it.UTF-8): Documentazione di Music Player Daemon (MPD)
156Summary(pl.UTF-8): Podręcznik dla Music Player Daemon (MPD)
157Group: Documentation
5ce9dcc9 158Obsoletes: mpd-apidocs < 0.21
5412b34a
ER
159
160%description doc
161Documentation for Music Player Daemon (MPD).
162
163%description doc -l fr.UTF-8
164Documentation pour Music Player Daemon (MPD).
165
166%description doc -l it.UTF-8
167Documentazione di Music Player Daemon (MPD).
168
169%description doc -l pl.UTF-8
170Dokumentacja do Music Player Daemon (MPD).
171
eb3abe5a
JP
172%package icons
173Summary: Icon files for Music Player Daemon (MPD)
174Summary(pl.UTF-8): Pliki ikon dla Music Player Daemon (MPD)
175Group: Applications
176Requires(post,postun): gtk-update-icon-cache
177Requires: hicolor-icon-theme
178BuildArch: noarch
179
180%description icons
181Documentation for Music Player Daemon (MPD).
182
183%description icons -l pl.UTF-8
184Pliki ikon dla Music Player Daemon (MPD).
185
c7dcdf50 186%prep
99bf80d6 187%setup -q
c7dcdf50
AF
188
189%build
5ce9dcc9
JP
190%meson build \
191 -Dpulse=%{?with_pulseaudio:enabled}%{!?with_pulseaudio:disabled} \
192 -Dmikmod=%{?with_mod:enabled}%{!?with_mod:disabled} \
193 -Dadplug=enabled \
194 -Dalsa=enabled \
195 -Dao=enabled \
196 -Daudiofile=%{?with_audiofile:enabled}%{!?with_audiofile:disabled} \
197 -Dbzip2=enabled \
4f727bb7 198 -Dcdio_paranoia=enabled \
5ce9dcc9
JP
199 -Dcurl=enabled \
200 -Ddatabase=true \
4f727bb7 201 -Ddocumentation=enabled \
5ce9dcc9
JP
202 -Ddsd=true \
203 -Dexpat=enabled \
204 -Dffmpeg=enabled \
205 -Dfifo=true \
206 -Dflac=enabled \
207 -Dfluidsynth=enabled \
208 -Dgme=enabled \
209 -Dhttpd=true \
210 -Dicu=enabled \
4f727bb7 211 -Did3tag=enabled \
5ce9dcc9 212 -Dinotify=true \
4f727bb7 213 -Dio_uring=enabled \
5ce9dcc9
JP
214 -Dipv6=enabled \
215 -Diso9660=enabled \
216 -Djack=enabled \
4f727bb7 217 -Dlame=enabled \
5ce9dcc9 218 -Dlibmpdclient=enabled \
5ce9dcc9
JP
219 -Dmad=enabled \
220 -Dmikmod=enabled \
221 -Dmms=enabled \
222 -Dmodplug=enabled \
223 -Dmpcdec=disabled \
224 -Dnfs=enabled \
225 -Dopenal=enabled \
226 -Dopus=enabled \
227 -Doss=enabled \
228 -Dpipe=true \
229 -Drecorder=true \
230 -Dsidplay=enabled \
4f727bb7 231 -Dshine=enabled \
5ce9dcc9
JP
232 -Dshout=enabled \
233 -Dsmbclient=enabled \
234 -Dsndfile=enabled \
235 -Dsoundcloud=enabled \
236 -Dsoxr=enabled \
237 -Dsqlite=enabled \
238 -Ddaemon=true \
239 -Dsystemd=enabled \
240 -Dtcp=true \
4f727bb7 241 -Dtwolame=enabled \
a1df62ee 242 -Dupnp=pupnp \
5ce9dcc9 243 -Dvorbis=enabled \
4f727bb7 244 -Dvorbisenc=enabled \
5ce9dcc9
JP
245 -Dwave_encoder=true \
246 -Dwavpack=enabled \
247 -Dwildmidi=enabled \
248 -Dzlib=enabled \
249 -Dzzip=enabled \
250 -Dzeroconf=avahi \
251 -Dsystemd_system_unit_dir=%{systemdunitdir} \
252 -Dsystemd_user_unit_dir=%{systemduserunitdir}
2605800f 253%ninja_build -C build
c7dcdf50
AF
254
255%install
256rm -rf $RPM_BUILD_ROOT
9cf1eba3 257install -d $RPM_BUILD_ROOT{%{_sysconfdir},/etc/{rc.d/init.d,sysconfig}} \
be963cbe 258 $RPM_BUILD_ROOT{/var/lib/mpd/playlists,/var/log/mpd,/var/run/mpd} \
fb2724cc 259 $RPM_BUILD_ROOT%{systemdtmpfilesdir}
c7dcdf50 260
2605800f 261%ninja_install -C build
fb44ab11 262
9cf1eba3
ER
263cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}
264install -p %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/mpd
265cp -p %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/mpd
387493e6 266cp -p %{SOURCE4} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/%{name}.conf
c7dcdf50 267
424f04d1 268touch $RPM_BUILD_ROOT/var/lib/mpd/mpd.db
4351e719
JP
269touch $RPM_BUILD_ROOT/var/lib/mpd/mpdstate
270touch $RPM_BUILD_ROOT/var/lib/mpd/sticker.sql
424f04d1 271touch $RPM_BUILD_ROOT/var/log/mpd/mpd.log
424f04d1 272
1ac45cec 273%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/mpd
5125f9d8 274
c7dcdf50
AF
275%clean
276rm -rf $RPM_BUILD_ROOT
277
31afabcf
ZU
278%pre
279%groupadd -g 204 mpd
fb2724cc 280%useradd -u 204 -r -d /var/lib/mpd -s /bin/false -c "Music Player Daemon (MPD) user" -G audio -g mpd mpd
31afabcf 281
fb6389fb 282%post
4351e719 283for f in mpd.log; do
424f04d1
KK
284 if [ ! -f /var/log/%{name}/$f ]; then
285 touch /var/log/%{name}/$f
286 chown mpd:mpd /var/log/%{name}/$f
287 chmod 644 /var/log/%{name}/$f
288 fi
289done
fb6389fb 290/sbin/chkconfig --add mpd
a8aa6145 291%systemd_post %{name}.service %{name}.socket
eb3abe5a
JP
292
293%post icons
6ba39ac6 294%update_icon_cache hicolor
fb6389fb
ZU
295
296%preun
297if [ "$1" = "0" ]; then
298 %service mpd stop
99bf80d6 299 /sbin/chkconfig --del mpd
fb6389fb 300fi
a8aa6145 301%systemd_preun %{name}.service %{name}.socket
fb6389fb 302
31afabcf
ZU
303%postun
304if [ "$1" = "0" ]; then
305 %userremove mpd
306 %groupremove mpd
307fi
a8b30e82 308%systemd_reload
eb3abe5a
JP
309
310%postun icons
6ba39ac6 311%update_icon_cache hicolor
a8b30e82
AF
312
313%triggerpostun -- %{name} < 0.16.6-1
314%systemd_trigger %{name}.service
31afabcf 315
c7dcdf50
AF
316%files
317%defattr(644,root,root,755)
27045b64 318%doc AUTHORS NEWS README.md doc/mpdconf.example
c7dcdf50 319%attr(755,root,root) %{_bindir}/*
fb44ab11
JB
320%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mpd.conf
321%attr(754,root,root) /etc/rc.d/init.d/mpd
9cf1eba3 322%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/mpd
fb2724cc 323%{systemdtmpfilesdir}/%{name}.conf
a8b30e82 324%{systemdunitdir}/mpd.service
a8aa6145 325%{systemdunitdir}/mpd.socket
711cad09 326%{systemduserunitdir}/mpd.service
7221bed2 327%{systemduserunitdir}/mpd.socket
424f04d1
KK
328%dir %attr(770,root,mpd) /var/lib/%{name}
329%dir %attr(770,root,mpd) /var/lib/%{name}/playlists
330%dir %attr(751,root,root) /var/log/%{name}
331%dir %attr(770,root,mpd) /var/run/%{name}
332%attr(644,mpd,mpd) %ghost /var/lib/%{name}/mpd.db
4351e719
JP
333%attr(644,mpd,mpd) %ghost /var/lib/%{name}/mpdstate
334%attr(644,mpd,mpd) %ghost /var/lib/%{name}/sticker.sql
424f04d1 335%attr(644,mpd,mpd) %ghost /var/log/%{name}/mpd.log
c7dcdf50 336%{_mandir}/man1/mpd.1*
80d0dd8f 337%{_mandir}/man5/mpd.conf.5*
5412b34a
ER
338
339%files doc
340%defattr(644,root,root,755)
5ce9dcc9 341%doc build/doc/html
eb3abe5a
JP
342
343%files icons
344%defattr(644,root,root,755)
345%{_iconsdir}/hicolor/scalable/apps/mpd.svg
This page took 0.163851 seconds and 4 git commands to generate.